{"version":3,"sources":["../plugin.schema.json","../src/index.ts","../src/agent/JwtService.ts","../src/functions/JWE.ts","../src/types/IJwtService.ts","../src/functions/index.ts"],"sourcesContent":["{\n  \"IJwtService\": {\n    \"components\": {\n      \"schemas\": {\n        \"CreateJwsCompactArgs\": {\n          \"$ref\": \"#/components/schemas/CreateJwsArgs\"\n        },\n        \"CreateJwsArgs\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"mode\": {\n              \"$ref\": \"#/components/schemas/JwsIdentifierMode\"\n            },\n            \"issuer\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    },\n                    \"x5c\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"type\": \"string\"\n                      }\n                    },\n                    \"certificate\": {}\n                  },\n                  \"required\": [\n                    \"certificate\",\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\",\n                    \"x5c\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    },\n                    \"did\": {\n                      \"type\": \"string\"\n                    },\n                    \"keys\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/IKey\"\n                      }\n                    },\n                    \"verificationMethodSection\": {\n                      \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                    },\n                    \"controllerKeyId\": {\n                      \"type\": \"string\"\n                    }\n                  },\n                  \"required\": [\n                    \"did\",\n                    \"identifier\",\n                    \"issuer\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"keys\",\n                    \"kid\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kid\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"jwk\"\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"x5c\"\n                    },\n                    \"identifier\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"type\": \"string\"\n                      }\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    \"identifier\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/IIdentifier\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"keyType\": {\n                      \"$ref\": \"#/components/schemas/TKeyType\"\n                    },\n                    \"offlineWhenNoDIDRegistered\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noVerificationMethodFallback\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"controllerKey\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"vmRelationship\": {\n                      \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"kid\"\n                    },\n                    \"identifier\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"key\"\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"cose_key\"\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"oid4vci-issuer\"\n                    },\n                    \"identifier\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                }\n              ]\n            },\n            \"clientId\": {\n              \"type\": \"string\"\n            },\n            \"clientIdScheme\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                },\n                {\n                  \"type\": \"string\",\n                  \"const\": \"did\"\n                },\n                {\n                  \"type\": \"string\"\n                }\n              ]\n            },\n            \"protectedHeader\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"payload\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JwsPayload\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/Uint8Array\"\n                },\n                {\n                  \"type\": \"string\"\n                }\n              ]\n            }\n          },\n          \"required\": [\n            \"issuer\",\n            \"protectedHeader\",\n            \"payload\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JwsIdentifierMode\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"x5c\",\n            \"kid\",\n            \"jwk\",\n            \"did\",\n            \"auto\"\n          ]\n        },\n        \"JWK\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"kty\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JwkKeyType\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n                }\n              ]\n            },\n            \"crv\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JoseCurve\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JoseCurveString\"\n                }\n              ]\n            },\n            \"alg\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JoseSignatureAlgorithm\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JoseSignatureAlgorithmString\"\n                }\n              ]\n            },\n            \"x\": {\n              \"type\": \"string\"\n            },\n            \"y\": {\n              \"type\": \"string\"\n            },\n            \"e\": {\n              \"type\": \"string\"\n            },\n            \"n\": {\n              \"type\": \"string\"\n            },\n            \"d\": {\n              \"type\": \"string\"\n            },\n            \"dp\": {\n              \"type\": \"string\"\n            },\n            \"dq\": {\n              \"type\": \"string\"\n            },\n            \"ext\": {\n              \"type\": \"boolean\"\n            },\n            \"k\": {\n              \"type\": \"string\"\n            },\n            \"key_ops\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"anyOf\": [\n                  {\n                    \"$ref\": \"#/components/schemas/JoseKeyOperation\"\n                  },\n                  {\n                    \"$ref\": \"#/components/schemas/JoseKeyOperationString\"\n                  }\n                ]\n              }\n            },\n            \"kid\": {\n              \"type\": \"string\"\n            },\n            \"oth\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"object\",\n                \"properties\": {\n                  \"d\": {\n                    \"type\": \"string\"\n                  },\n                  \"r\": {\n                    \"type\": \"string\"\n                  },\n                  \"t\": {\n                    \"type\": \"string\"\n                  }\n                },\n                \"additionalProperties\": false\n              }\n            },\n            \"p\": {\n              \"type\": \"string\"\n            },\n            \"q\": {\n              \"type\": \"string\"\n            },\n            \"qi\": {\n              \"type\": \"string\"\n            },\n            \"use\": {\n              \"type\": \"string\"\n            },\n            \"x5c\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              },\n              \"description\": \"JWK \\\"x5c\\\" (X.509 Certificate Chain) Parameter.\"\n            },\n            \"x5t\": {\n              \"type\": \"string\",\n              \"description\": \"JWK \\\"x5t\\\" (X.509 Certificate SHA-1 Thumbprint) Parameter.\"\n            },\n            \"x5t#S256\": {\n              \"type\": \"string\",\n              \"description\": \"\\\"x5t#S256\\\" (X.509 Certificate SHA-256 Thumbprint) Parameter.\"\n            },\n            \"x5u\": {\n              \"type\": \"string\",\n              \"description\": \"JWK \\\"x5u\\\" (X.509 URL) Parameter.\"\n            },\n            \"iv\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"kty\"\n          ]\n        },\n        \"JwkKeyType\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"EC\",\n            \"RSA\",\n            \"oct\",\n            \"OKP\"\n          ]\n        },\n        \"JwkKeyTypeString\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"EC\",\n            \"RSA\",\n            \"oct\",\n            \"OKP\"\n          ]\n        },\n        \"JoseCurve\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"P-256\",\n            \"P-384\",\n            \"P-521\",\n            \"X25519\",\n            \"X448\",\n            \"EdDSA\",\n            \"Ed25519\",\n            \"Ed448\",\n            \"secp256k1\"\n          ]\n        },\n        \"JoseCurveString\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"P-256\",\n            \"P-384\",\n            \"P-521\",\n            \"X25519\",\n            \"X448\",\n            \"EdDSA\",\n            \"Ed25519\",\n            \"Ed448\",\n            \"secp256k1\"\n          ]\n        },\n        \"JoseSignatureAlgorithm\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"RS256\",\n            \"RS384\",\n            \"RS512\",\n            \"ES256\",\n            \"ES256K\",\n            \"ES384\",\n            \"ES512\",\n            \"EdDSA\",\n            \"HS256\",\n            \"HS384\",\n            \"HS512\",\n            \"PS256\",\n            \"PS384\",\n            \"PS512\",\n            \"none\"\n          ]\n        },\n        \"JoseSignatureAlgorithmString\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"RS256\",\n            \"RS384\",\n            \"RS512\",\n            \"ES256\",\n            \"ES256K\",\n            \"ES384\",\n            \"ES512\",\n            \"EdDSA\",\n            \"HS256\",\n            \"HS384\",\n            \"HS512\",\n            \"PS256\",\n            \"PS384\",\n            \"PS512\",\n            \"none\"\n          ]\n        },\n        \"JoseKeyOperation\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"sign\",\n            \"verify\",\n            \"encrypt\",\n            \"decrypt\",\n            \"wrapKey\",\n            \"unwrapKey\",\n            \"deriveKey\",\n            \"deriveBits\"\n          ]\n        },\n        \"JoseKeyOperationString\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"sign\",\n            \"verify\",\n            \"encrypt\",\n            \"decrypt\",\n            \"wrapKey\",\n            \"unwrapKey\",\n            \"deriveKey\",\n            \"deriveBits\"\n          ]\n        },\n        \"ManagedIdentifierMethod\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"did\",\n            \"jwk\",\n            \"x5c\",\n            \"kid\",\n            \"key\",\n            \"cose_key\",\n            \"oid4vci-issuer\"\n          ]\n        },\n        \"ManagedIdentifierOpts\": {\n          \"anyOf\": [\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"jwk\"\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"x5c\"\n                },\n                \"identifier\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"did\"\n                },\n                \"identifier\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/IIdentifier\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"keyType\": {\n                  \"$ref\": \"#/components/schemas/TKeyType\"\n                },\n                \"offlineWhenNoDIDRegistered\": {\n                  \"type\": \"boolean\"\n                },\n                \"noVerificationMethodFallback\": {\n                  \"type\": \"boolean\"\n                },\n                \"controllerKey\": {\n                  \"type\": \"boolean\"\n                },\n                \"vmRelationship\": {\n                  \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"kid\"\n                },\n                \"identifier\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"key\"\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"cose_key\"\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"oid4vci-issuer\"\n                },\n                \"identifier\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            }\n          ]\n        },\n        \"ClientIdScheme\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"x509_san_dns\",\n            \"x509_san_uri\"\n          ]\n        },\n        \"IIdentifier\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"did\": {\n              \"type\": \"string\",\n              \"description\": \"Decentralized identifier\"\n            },\n            \"alias\": {\n              \"type\": \"string\",\n              \"description\": \"Optional. Identifier alias. Can be used to reference an object in an external system\"\n            },\n            \"provider\": {\n              \"type\": \"string\",\n              \"description\": \"Identifier provider name\"\n            },\n            \"controllerKeyId\": {\n              \"type\": \"string\",\n              \"description\": \"Controller key id\"\n            },\n            \"keys\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/IKey\"\n              },\n              \"description\": \"Array of managed keys\"\n            },\n            \"services\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/IService\"\n              },\n              \"description\": \"Array of services\"\n            }\n          },\n          \"required\": [\n            \"did\",\n            \"provider\",\n            \"keys\",\n            \"services\"\n          ],\n          \"additionalProperties\": false,\n          \"description\": \"Identifier interface\"\n        },\n        \"IKey\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"kid\": {\n              \"type\": \"string\",\n              \"description\": \"Key ID\"\n            },\n            \"kms\": {\n              \"type\": \"string\",\n              \"description\": \"Key Management System\"\n            },\n            \"type\": {\n              \"$ref\": \"#/components/schemas/TKeyType\",\n              \"description\": \"Key type\"\n            },\n            \"publicKeyHex\": {\n              \"type\": \"string\",\n              \"description\": \"Public key\"\n            },\n            \"privateKeyHex\": {\n              \"type\": \"string\",\n              \"description\": \"Optional. Private key\"\n            },\n            \"meta\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/KeyMetadata\"\n                },\n                {\n                  \"type\": \"null\"\n                }\n              ],\n              \"description\": \"Optional. Key metadata. This should be used to determine which algorithms are supported.\"\n            }\n          },\n          \"required\": [\n            \"kid\",\n            \"kms\",\n            \"type\",\n            \"publicKeyHex\"\n          ],\n          \"additionalProperties\": false,\n          \"description\": \"Cryptographic key\"\n        },\n        \"TKeyType\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"Ed25519\",\n            \"Secp256k1\",\n            \"Secp256r1\",\n            \"X25519\",\n            \"Bls12381G1\",\n            \"Bls12381G2\",\n            \"RSA\"\n          ],\n          \"description\": \"Cryptographic key type.\"\n        },\n        \"KeyMetadata\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"algorithms\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            }\n          },\n          \"description\": \"This encapsulates data about a key.\\n\\nImplementations of  {@link  @veramo/key-manager#AbstractKeyManagementSystem | AbstractKeyManagementSystem }  should populate this object, for each key, with the algorithms that can be performed using it.\\n\\nThis can also be used to add various tags to the keys under management.\"\n        },\n        \"IService\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"id\": {\n              \"type\": \"string\",\n              \"description\": \"ID\"\n            },\n            \"type\": {\n              \"type\": \"string\",\n              \"description\": \"Service type\"\n            },\n            \"serviceEndpoint\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/IServiceEndpoint\"\n                },\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/IServiceEndpoint\"\n                  }\n                }\n              ],\n              \"description\": \"Endpoint URL\"\n            },\n            \"description\": {\n              \"type\": \"string\",\n              \"description\": \"Optional. Description\"\n            }\n          },\n          \"required\": [\n            \"id\",\n            \"type\",\n            \"serviceEndpoint\"\n          ],\n          \"additionalProperties\": false,\n          \"description\": \"Identifier service\"\n        },\n        \"IServiceEndpoint\": {\n          \"anyOf\": [\n            {\n              \"type\": \"string\"\n            },\n            {\n              \"$ref\": \"#/components/schemas/Record<string,any>\"\n            }\n          ],\n          \"description\": \"Represents a service endpoint URL or a map of URLs\"\n        },\n        \"Record<string,any>\": {\n          \"type\": \"object\"\n        },\n        \"DIDDocumentSection\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"verificationMethod\",\n            \"publicKey\",\n            \"service\",\n            \"authentication\",\n            \"assertionMethod\",\n            \"keyAgreement\",\n            \"capabilityInvocation\",\n            \"capabilityDelegation\"\n          ],\n          \"description\": \"Refers to a section of a DID document. Either the list of verification methods or services or one of the verification relationships.\\n\\nSee  {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships }\"\n        },\n        \"ICoseKeyJson\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"kty\": {\n              \"$ref\": \"#/components/schemas/ICoseKeyType\"\n            },\n            \"kid\": {\n              \"type\": \"string\"\n            },\n            \"alg\": {\n              \"$ref\": \"#/components/schemas/ICoseSignatureAlgorithm\"\n            },\n            \"key_ops\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/ICoseKeyOperation\"\n              }\n            },\n            \"baseIV\": {\n              \"type\": \"string\"\n            },\n            \"crv\": {\n              \"$ref\": \"#/components/schemas/ICoseCurve\"\n            },\n            \"x\": {\n              \"type\": \"string\"\n            },\n            \"y\": {\n              \"type\": \"string\"\n            },\n            \"d\": {\n              \"type\": \"string\"\n            },\n            \"x5chain\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            }\n          },\n          \"required\": [\n            \"kty\"\n          ],\n          \"additionalProperties\": {},\n          \"description\": \"See our mdl-mdoc and crypto library for more information https://github.com/Sphereon-Opensource/mdoc-cbor-crypto-multiplatform\\n\\nConversion functions are available in above library. Conversion functions are also available for TS in our\"\n        },\n        \"ICoseKeyType\": {\n          \"type\": \"number\",\n          \"enum\": [\n            1,\n            2,\n            3,\n            4,\n            0\n          ]\n        },\n        \"ICoseSignatureAlgorithm\": {\n          \"type\": \"number\",\n          \"enum\": [\n            -7,\n            -47,\n            -35,\n            -36,\n            -8,\n            4,\n            5,\n            6,\n            7,\n            -37,\n            -38,\n            -39\n          ]\n        },\n        \"ICoseKeyOperation\": {\n          \"type\": \"number\",\n          \"enum\": [\n            1,\n            2,\n            3,\n            4,\n            5,\n            6,\n            7,\n            8,\n            9,\n            10\n          ]\n        },\n        \"ICoseCurve\": {\n          \"type\": \"number\",\n          \"enum\": [\n            1,\n            2,\n            3,\n            4,\n            5,\n            6,\n            7,\n            -1\n          ]\n        },\n        \"ManagedIdentifierType\": {\n          \"anyOf\": [\n            {\n              \"$ref\": \"#/components/schemas/IIdentifier\"\n            },\n            {\n              \"type\": \"string\"\n            },\n            {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            {\n              \"$ref\": \"#/components/schemas/JWK\"\n            },\n            {\n              \"$ref\": \"#/components/schemas/IKey\"\n            },\n            {\n              \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n            }\n          ],\n          \"description\": \"Use whenever we need to pass in an identifier. We can pass in kids, DIDs, IIdentifier objects and x5chains\\n\\nThe functions below can be used to check the type, and they also provide the proper 'runtime' types\"\n        },\n        \"JwsHeader\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"typ\": {\n              \"type\": \"string\"\n            },\n            \"alg\": {\n              \"type\": \"string\"\n            },\n            \"kid\": {\n              \"type\": \"string\"\n            },\n            \"jwk\": {\n              \"$ref\": \"#/components/schemas/JWK\"\n            },\n            \"x5c\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            }\n          }\n        },\n        \"JwsPayload\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"iss\": {\n              \"type\": \"string\"\n            },\n            \"sub\": {\n              \"type\": \"string\"\n            },\n            \"aud\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                {\n                  \"type\": \"string\"\n                }\n              ]\n            },\n            \"exp\": {\n              \"type\": \"number\"\n            },\n            \"nbf\": {\n              \"type\": \"number\"\n            },\n            \"iat\": {\n              \"type\": \"number\"\n            },\n            \"jti\": {\n              \"type\": \"string\"\n            }\n          }\n        },\n        \"Uint8Array\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"BYTES_PER_ELEMENT\": {\n              \"type\": \"number\"\n            },\n            \"buffer\": {\n              \"$ref\": \"#/components/schemas/ArrayBufferLike\"\n            },\n            \"byteLength\": {\n              \"type\": \"number\"\n            },\n            \"byteOffset\": {\n              \"type\": \"number\"\n            },\n            \"length\": {\n              \"type\": \"number\"\n            }\n          },\n          \"required\": [\n            \"BYTES_PER_ELEMENT\",\n            \"buffer\",\n            \"byteLength\",\n            \"byteOffset\",\n            \"length\"\n          ],\n          \"additionalProperties\": {\n            \"type\": \"number\"\n          }\n        },\n        \"ArrayBufferLike\": {\n          \"$ref\": \"#/components/schemas/ArrayBuffer\"\n        },\n        \"ArrayBuffer\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"byteLength\": {\n              \"type\": \"number\"\n            }\n          },\n          \"required\": [\n            \"byteLength\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JwtCompactResult\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"jwt\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JwsCompact\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JweCompact\"\n                }\n              ]\n            }\n          },\n          \"required\": [\n            \"jwt\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JwsCompact\": {\n          \"type\": \"string\"\n        },\n        \"JweCompact\": {\n          \"type\": \"string\"\n        },\n        \"CreateJwsFlattenedArgs\": {\n          \"$ref\": \"#/components/schemas/Exclude<CreateJwsJsonArgs,\\\"existingSignatures\\\">\"\n        },\n        \"Exclude<CreateJwsJsonArgs,\\\"existingSignatures\\\">\": {\n          \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n        },\n        \"CreateJwsJsonArgs\": {\n          \"type\": \"object\",\n          \"additionalProperties\": false,\n          \"properties\": {\n            \"unprotectedHeader\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"existingSignatures\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n              }\n            },\n            \"mode\": {\n              \"$ref\": \"#/components/schemas/JwsIdentifierMode\"\n            },\n            \"issuer\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    },\n                    \"x5c\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"type\": \"string\"\n                      }\n                    },\n                    \"certificate\": {}\n                  },\n                  \"required\": [\n                    \"certificate\",\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\",\n                    \"x5c\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    },\n                    \"did\": {\n                      \"type\": \"string\"\n                    },\n                    \"keys\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/IKey\"\n                      }\n                    },\n                    \"verificationMethodSection\": {\n                      \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                    },\n                    \"controllerKeyId\": {\n                      \"type\": \"string\"\n                    }\n                  },\n                  \"required\": [\n                    \"did\",\n                    \"identifier\",\n                    \"issuer\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"keys\",\n                    \"kid\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kid\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"jwkThumbprint\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                    },\n                    \"opts\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                    },\n                    \"key\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\",\n                    \"jwk\",\n                    \"jwkThumbprint\",\n                    \"key\",\n                    \"kmsKeyRef\",\n                    \"method\",\n                    \"opts\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"jwk\"\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"x5c\"\n                    },\n                    \"identifier\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"type\": \"string\"\n                      }\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    \"identifier\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/IIdentifier\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    },\n                    \"keyType\": {\n                      \"$ref\": \"#/components/schemas/TKeyType\"\n                    },\n                    \"offlineWhenNoDIDRegistered\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noVerificationMethodFallback\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"controllerKey\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"vmRelationship\": {\n                      \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"kid\"\n                    },\n                    \"identifier\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"key\"\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/IKey\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"cose_key\"\n                    },\n                    \"identifier\": {\n                      \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"noIssPayloadUpdate\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"noIdentifierInHeader\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"lazyDisabled\": {\n                      \"type\": \"boolean\"\n                    },\n                    \"method\": {\n                      \"type\": \"string\",\n                      \"const\": \"oid4vci-issuer\"\n                    },\n                    \"identifier\": {\n                      \"type\": \"string\"\n                    },\n                    \"kmsKeyRef\": {\n                      \"type\": \"string\"\n                    },\n                    \"issuer\": {\n                      \"type\": \"string\"\n                    },\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientId\": {\n                      \"type\": \"string\"\n                    },\n                    \"clientIdScheme\": {\n                      \"anyOf\": [\n                        {\n                          \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                        },\n                        {\n                          \"type\": \"string\",\n                          \"const\": \"did\"\n                        },\n                        {\n                          \"type\": \"string\"\n                        }\n                      ]\n                    }\n                  },\n                  \"required\": [\n                    \"identifier\"\n                  ]\n                }\n              ]\n            },\n            \"clientId\": {\n              \"type\": \"string\"\n            },\n            \"clientIdScheme\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                },\n                {\n                  \"type\": \"string\",\n                  \"const\": \"did\"\n                },\n                {\n                  \"type\": \"string\"\n                }\n              ]\n            },\n            \"protectedHeader\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"payload\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JwsPayload\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/Uint8Array\"\n                },\n                {\n                  \"type\": \"string\"\n                }\n              ]\n            }\n          },\n          \"required\": [\n            \"issuer\",\n            \"payload\",\n            \"protectedHeader\"\n          ]\n        },\n        \"JwsJsonSignature\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"protected\": {\n              \"type\": \"string\"\n            },\n            \"header\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"signature\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"protected\",\n            \"signature\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JwsJsonFlattened\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"payload\": {\n              \"type\": \"string\"\n            },\n            \"protected\": {\n              \"type\": \"string\"\n            },\n            \"header\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"signature\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"payload\",\n            \"protected\",\n            \"signature\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JwsJsonGeneral\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"payload\": {\n              \"type\": \"string\"\n            },\n            \"signatures\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n              }\n            }\n          },\n          \"required\": [\n            \"payload\",\n            \"signatures\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"DecryptJweCompactJwtArgs\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"jwe\": {\n              \"$ref\": \"#/components/schemas/JweCompact\"\n            },\n            \"idOpts\": {\n              \"$ref\": \"#/components/schemas/ManagedIdentifierOptsOrResult\"\n            }\n          },\n          \"required\": [\n            \"jwe\",\n            \"idOpts\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"ManagedIdentifierOptsOrResult\": {\n          \"anyOf\": [\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                },\n                \"x5c\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                \"certificate\": {}\n              },\n              \"required\": [\n                \"certificate\",\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\",\n                \"x5c\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                },\n                \"did\": {\n                  \"type\": \"string\"\n                },\n                \"keys\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/IKey\"\n                  }\n                },\n                \"verificationMethodSection\": {\n                  \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                },\n                \"controllerKeyId\": {\n                  \"type\": \"string\"\n                }\n              },\n              \"required\": [\n                \"did\",\n                \"identifier\",\n                \"issuer\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"keys\",\n                \"kid\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kid\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"jwk\"\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"x5c\"\n                },\n                \"identifier\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"did\"\n                },\n                \"identifier\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/IIdentifier\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"keyType\": {\n                  \"$ref\": \"#/components/schemas/TKeyType\"\n                },\n                \"offlineWhenNoDIDRegistered\": {\n                  \"type\": \"boolean\"\n                },\n                \"noVerificationMethodFallback\": {\n                  \"type\": \"boolean\"\n                },\n                \"controllerKey\": {\n                  \"type\": \"boolean\"\n                },\n                \"vmRelationship\": {\n                  \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"kid\"\n                },\n                \"identifier\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"key\"\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"cose_key\"\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"lazyDisabled\": {\n                  \"type\": \"boolean\"\n                },\n                \"method\": {\n                  \"type\": \"string\",\n                  \"const\": \"oid4vci-issuer\"\n                },\n                \"identifier\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                }\n              },\n              \"required\": [\n                \"identifier\"\n              ]\n            }\n          ]\n        },\n        \"EncryptJweCompactJwtArgs\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"payload\": {\n              \"$ref\": \"#/components/schemas/JwsPayload\"\n            },\n            \"protectedHeader\": {\n              \"$ref\": \"#/components/schemas/JweProtectedHeader\"\n            },\n            \"aad\": {\n              \"$ref\": \"#/components/schemas/Uint8Array\"\n            },\n            \"recipientKey\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                    },\n                    \"jwks\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                      }\n                    },\n                    \"did\": {\n                      \"type\": \"string\"\n                    },\n                    \"didDocument\": {\n                      \"$ref\": \"#/components/schemas/DIDDocument\"\n                    },\n                    \"didJwks\": {\n                      \"$ref\": \"#/components/schemas/DidDocumentJwks\"\n                    },\n                    \"didResolutionResult\": {\n                      \"$ref\": \"#/components/schemas/Omit<DIDResolutionResult,\\\"didDocument\\\">\"\n                    },\n                    \"didParsed\": {\n                      \"$ref\": \"#/components/schemas/IParsedDID\"\n                    }\n                  },\n                  \"required\": [\n                    \"did\",\n                    \"didParsed\",\n                    \"didResolutionResult\",\n                    \"jwks\",\n                    \"method\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                    },\n                    \"jwks\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                      }\n                    },\n                    \"x5c\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"type\": \"string\"\n                      }\n                    },\n                    \"issuerJWK\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"verificationResult\": {\n                      \"$ref\": \"#/components/schemas/X509ValidationResult\"\n                    },\n                    \"certificates\": {\n                      \"type\": \"array\",\n                      \"items\": {}\n                    }\n                  },\n                  \"required\": [\n                    \"certificates\",\n                    \"issuerJWK\",\n                    \"jwks\",\n                    \"method\",\n                    \"x5c\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                    },\n                    \"jwks\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                      }\n                    },\n                    \"jwk\": {\n                      \"$ref\": \"#/components/schemas/JWK\"\n                    },\n                    \"x5c\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n                    }\n                  },\n                  \"required\": [\n                    \"jwk\",\n                    \"jwks\",\n                    \"method\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                    },\n                    \"jwks\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                      }\n                    },\n                    \"trustedAnchors\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/TrustedAnchor\"\n                      }\n                    },\n                    \"errorList\": {\n                      \"$ref\": \"#/components/schemas/Record<TrustedAnchor,ErrorMessage>\"\n                    },\n                    \"jwtPayload\": {\n                      \"$ref\": \"#/components/schemas/JwtPayload\"\n                    },\n                    \"trustEstablished\": {\n                      \"type\": \"boolean\"\n                    }\n                  },\n                  \"required\": [\n                    \"jwks\",\n                    \"method\",\n                    \"trustEstablished\",\n                    \"trustedAnchors\"\n                  ]\n                },\n                {\n                  \"type\": \"object\",\n                  \"additionalProperties\": false,\n                  \"properties\": {\n                    \"kid\": {\n                      \"type\": \"string\"\n                    },\n                    \"method\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                    },\n                    \"jwks\": {\n                      \"type\": \"array\",\n                      \"items\": {\n                        \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                      }\n                    },\n                    \"coseKey\": {\n                      \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n                    },\n                    \"x5c\": {\n                      \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n                    }\n                  },\n                  \"required\": [\n                    \"coseKey\",\n                    \"jwks\",\n                    \"method\"\n                  ]\n                }\n              ]\n            },\n            \"alg\": {\n              \"$ref\": \"#/components/schemas/JweAlg\"\n            },\n            \"enc\": {\n              \"$ref\": \"#/components/schemas/JweEnc\"\n            },\n            \"apu\": {\n              \"type\": \"string\"\n            },\n            \"apv\": {\n              \"type\": \"string\"\n            },\n            \"expirationTime\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"number\"\n                },\n                {\n                  \"type\": \"string\"\n                },\n                {\n                  \"type\": \"string\",\n                  \"format\": \"date-time\"\n                }\n              ]\n            },\n            \"issuer\": {\n              \"type\": \"string\"\n            },\n            \"audience\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"string\"\n                },\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                }\n              ]\n            }\n          },\n          \"required\": [\n            \"payload\",\n            \"recipientKey\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JweProtectedHeader\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"alg\": {\n              \"type\": \"string\"\n            },\n            \"enc\": {\n              \"type\": \"string\"\n            },\n            \"jku\": {\n              \"type\": \"string\"\n            },\n            \"jwk\": {\n              \"$ref\": \"#/components/schemas/BaseJWK\"\n            },\n            \"epk\": {\n              \"$ref\": \"#/components/schemas/EphemeralPublicKey\"\n            },\n            \"x5u\": {\n              \"type\": \"string\"\n            },\n            \"x5c\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"x5t\": {\n              \"type\": \"string\"\n            },\n            \"cty\": {\n              \"type\": \"string\"\n            },\n            \"crit\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"typ\": {},\n            \"kid\": {},\n            \"zip\": {\n              \"type\": \"string\"\n            }\n          }\n        },\n        \"BaseJWK\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"kty\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JwkKeyType\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n                }\n              ]\n            },\n            \"crv\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JoseCurve\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JoseCurveString\"\n                }\n              ]\n            },\n            \"alg\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JoseSignatureAlgorithm\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JoseSignatureAlgorithmString\"\n                }\n              ]\n            },\n            \"x\": {\n              \"type\": \"string\"\n            },\n            \"y\": {\n              \"type\": \"string\"\n            },\n            \"e\": {\n              \"type\": \"string\"\n            },\n            \"n\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"kty\"\n          ],\n          \"additionalProperties\": false,\n          \"description\": \"Conversion functions to Cose available for TS in our\"\n        },\n        \"EphemeralPublicKey\": {\n          \"$ref\": \"#/components/schemas/Omit<BaseJWK,\\\"alg\\\">\",\n          \"description\": \"The JWK representation of an ephemeral public key. See https://www.rfc-editor.org/rfc/rfc7518.html#section-6\"\n        },\n        \"Omit<BaseJWK,\\\"alg\\\">\": {\n          \"$ref\": \"#/components/schemas/Pick<BaseJWK,Exclude<(\\\"kty\\\"|\\\"crv\\\"|\\\"alg\\\"|\\\"x\\\"|\\\"y\\\"|\\\"e\\\"|\\\"n\\\"),\\\"alg\\\">>\"\n        },\n        \"Pick<BaseJWK,Exclude<(\\\"kty\\\"|\\\"crv\\\"|\\\"alg\\\"|\\\"x\\\"|\\\"y\\\"|\\\"e\\\"|\\\"n\\\"),\\\"alg\\\">>\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"kty\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JwkKeyType\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JwkKeyTypeString\"\n                }\n              ]\n            },\n            \"crv\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/JoseCurve\"\n                },\n                {\n                  \"$ref\": \"#/components/schemas/JoseCurveString\"\n                }\n              ]\n            },\n            \"x\": {\n              \"type\": \"string\"\n            },\n            \"y\": {\n              \"type\": \"string\"\n            },\n            \"e\": {\n              \"type\": \"string\"\n            },\n            \"n\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"kty\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"ExternalIdentifierMethod\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"did\",\n            \"jwk\",\n            \"x5c\",\n            \"kid\",\n            \"cose_key\",\n            \"oidc-discovery\",\n            \"jwks-url\",\n            \"oid4vci-issuer\",\n            \"entity_id\"\n          ]\n        },\n        \"ExternalJwkInfo\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"jwk\": {\n              \"$ref\": \"#/components/schemas/JWK\"\n            },\n            \"jwkThumbprint\": {\n              \"type\": \"string\"\n            },\n            \"kid\": {\n              \"type\": \"string\"\n            },\n            \"publicKeyHex\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"jwk\",\n            \"jwkThumbprint\",\n            \"publicKeyHex\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"DIDDocument\": {\n          \"type\": \"object\",\n          \"additionalProperties\": false,\n          \"properties\": {\n            \"authentication\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"anyOf\": [\n                  {\n                    \"type\": \"string\"\n                  },\n                  {\n                    \"$ref\": \"#/components/schemas/VerificationMethod\"\n                  }\n                ]\n              }\n            },\n            \"assertionMethod\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"anyOf\": [\n                  {\n                    \"type\": \"string\"\n                  },\n                  {\n                    \"$ref\": \"#/components/schemas/VerificationMethod\"\n                  }\n                ]\n              }\n            },\n            \"keyAgreement\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"anyOf\": [\n                  {\n                    \"type\": \"string\"\n                  },\n                  {\n                    \"$ref\": \"#/components/schemas/VerificationMethod\"\n                  }\n                ]\n              }\n            },\n            \"capabilityInvocation\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"anyOf\": [\n                  {\n                    \"type\": \"string\"\n                  },\n                  {\n                    \"$ref\": \"#/components/schemas/VerificationMethod\"\n                  }\n                ]\n              }\n            },\n            \"capabilityDelegation\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"anyOf\": [\n                  {\n                    \"type\": \"string\"\n                  },\n                  {\n                    \"$ref\": \"#/components/schemas/VerificationMethod\"\n                  }\n                ]\n              }\n            },\n            \"@context\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"string\",\n                  \"const\": \"https://www.w3.org/ns/did/v1\"\n                },\n                {\n                  \"type\": \"string\"\n                },\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                }\n              ]\n            },\n            \"id\": {\n              \"type\": \"string\"\n            },\n            \"alsoKnownAs\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"controller\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"string\"\n                },\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                }\n              ]\n            },\n            \"verificationMethod\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/VerificationMethod\"\n              }\n            },\n            \"service\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/Service\"\n              }\n            },\n            \"publicKey\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/VerificationMethod\"\n              },\n              \"deprecated\": true\n            }\n          },\n          \"required\": [\n            \"id\"\n          ],\n          \"description\": \"Represents a DID document.\"\n        },\n        \"VerificationMethod\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"id\": {\n              \"type\": \"string\"\n            },\n            \"type\": {\n              \"type\": \"string\"\n            },\n            \"controller\": {\n              \"type\": \"string\"\n            },\n            \"publicKeyBase58\": {\n              \"type\": \"string\"\n            },\n            \"publicKeyBase64\": {\n              \"type\": \"string\"\n            },\n            \"publicKeyJwk\": {\n              \"$ref\": \"#/components/schemas/JsonWebKey\"\n            },\n            \"publicKeyHex\": {\n              \"type\": \"string\"\n            },\n            \"publicKeyMultibase\": {\n              \"type\": \"string\"\n            },\n            \"blockchainAccountId\": {\n              \"type\": \"string\"\n            },\n            \"ethereumAddress\": {\n              \"type\": \"string\"\n            },\n            \"conditionOr\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/VerificationMethod\"\n              }\n            },\n            \"conditionAnd\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/VerificationMethod\"\n              }\n            },\n            \"threshold\": {\n              \"type\": \"number\"\n            },\n            \"conditionThreshold\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/VerificationMethod\"\n              }\n            },\n            \"conditionWeightedThreshold\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/ConditionWeightedThreshold\"\n              }\n            },\n            \"conditionDelegated\": {\n              \"type\": \"string\"\n            },\n            \"relationshipParent\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"relationshipChild\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"relationshipSibling\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            }\n          },\n          \"required\": [\n            \"id\",\n            \"type\",\n            \"controller\"\n          ],\n          \"additionalProperties\": false,\n          \"description\": \"Represents the properties of a Verification Method listed in a DID document.\\n\\nThis data type includes public key representations that are no longer present in the spec but are still used by several DID methods / resolvers and kept for backward compatibility.\"\n        },\n        \"JsonWebKey\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"alg\": {\n              \"type\": \"string\"\n            },\n            \"crv\": {\n              \"type\": \"string\"\n            },\n            \"e\": {\n              \"type\": \"string\"\n            },\n            \"ext\": {\n              \"type\": \"boolean\"\n            },\n            \"key_ops\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"kid\": {\n              \"type\": \"string\"\n            },\n            \"kty\": {\n              \"type\": \"string\"\n            },\n            \"n\": {\n              \"type\": \"string\"\n            },\n            \"use\": {\n              \"type\": \"string\"\n            },\n            \"x\": {\n              \"type\": \"string\"\n            },\n            \"y\": {\n              \"type\": \"string\"\n            }\n          },\n          \"required\": [\n            \"kty\"\n          ],\n          \"description\": \"Encapsulates a JSON web key type that includes only the public properties that can be used in DID documents.\\n\\nThe private properties are intentionally omitted to discourage the use (and accidental disclosure) of private keys in DID documents.\"\n        },\n        \"ConditionWeightedThreshold\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"condition\": {\n              \"$ref\": \"#/components/schemas/VerificationMethod\"\n            },\n            \"weight\": {\n              \"type\": \"number\"\n            }\n          },\n          \"required\": [\n            \"condition\",\n            \"weight\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"Service\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"id\": {\n              \"type\": \"string\"\n            },\n            \"type\": {\n              \"type\": \"string\"\n            },\n            \"serviceEndpoint\": {\n              \"anyOf\": [\n                {\n                  \"$ref\": \"#/components/schemas/ServiceEndpoint\"\n                },\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/ServiceEndpoint\"\n                  }\n                }\n              ]\n            }\n          },\n          \"required\": [\n            \"id\",\n            \"type\",\n            \"serviceEndpoint\"\n          ],\n          \"description\": \"Represents a Service entry in a  {@link https://www.w3.org/TR/did-core/#did-document-properties | DID document } .\"\n        },\n        \"ServiceEndpoint\": {\n          \"anyOf\": [\n            {\n              \"type\": \"string\"\n            },\n            {\n              \"$ref\": \"#/components/schemas/Record<string,any>\"\n            }\n          ],\n          \"description\": \"Represents an endpoint of a Service entry in a DID document.\"\n        },\n        \"DidDocumentJwks\": {\n          \"$ref\": \"#/components/schemas/Record<Exclude<DIDDocumentSection,(\\\"publicKey\\\"|\\\"service\\\")>,def-interface-st_index.d.ts-36208-36933-st_index.d.ts-0-64696[]>\"\n        },\n        \"Record<Exclude<DIDDocumentSection,(\\\"publicKey\\\"|\\\"service\\\")>,def-interface-st_index.d.ts-36208-36933-st_index.d.ts-0-64696[]>\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"verificationMethod\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JWK\"\n              }\n            },\n            \"authentication\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JWK\"\n              }\n            },\n            \"assertionMethod\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JWK\"\n              }\n            },\n            \"keyAgreement\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JWK\"\n              }\n            },\n            \"capabilityInvocation\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JWK\"\n              }\n            },\n            \"capabilityDelegation\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JWK\"\n              }\n            }\n          },\n          \"required\": [\n            \"verificationMethod\",\n            \"authentication\",\n            \"assertionMethod\",\n            \"keyAgreement\",\n            \"capabilityInvocation\",\n            \"capabilityDelegation\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"Omit<DIDResolutionResult,\\\"didDocument\\\">\": {\n          \"$ref\": \"#/components/schemas/Pick<DIDResolutionResult,Exclude<(\\\"@context\\\"|\\\"didResolutionMetadata\\\"|\\\"didDocument\\\"|\\\"didDocumentMetadata\\\"),\\\"didDocument\\\">>\"\n        },\n        \"Pick<DIDResolutionResult,Exclude<(\\\"@context\\\"|\\\"didResolutionMetadata\\\"|\\\"didDocument\\\"|\\\"didDocumentMetadata\\\"),\\\"didDocument\\\">>\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"@context\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"string\",\n                  \"const\": \"https://w3id.org/did-resolution/v1\"\n                },\n                {\n                  \"type\": \"string\"\n                },\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                }\n              ]\n            },\n            \"didResolutionMetadata\": {\n              \"$ref\": \"#/components/schemas/DIDResolutionMetadata\"\n            },\n            \"didDocumentMetadata\": {\n              \"$ref\": \"#/components/schemas/DIDDocumentMetadata\"\n            }\n          },\n          \"required\": [\n            \"didResolutionMetadata\",\n            \"didDocumentMetadata\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"DIDResolutionMetadata\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"contentType\": {\n              \"type\": \"string\"\n            },\n            \"error\": {\n              \"type\": \"string\"\n            }\n          },\n          \"description\": \"Encapsulates the resolution metadata resulting from a  {@link  Resolvable.resolve }  operation.\"\n        },\n        \"DIDDocumentMetadata\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"created\": {\n              \"type\": \"string\"\n            },\n            \"updated\": {\n              \"type\": \"string\"\n            },\n            \"deactivated\": {\n              \"type\": \"boolean\"\n            },\n            \"versionId\": {\n              \"type\": \"string\"\n            },\n            \"nextUpdate\": {\n              \"type\": \"string\"\n            },\n            \"nextVersionId\": {\n              \"type\": \"string\"\n            },\n            \"equivalentId\": {\n              \"type\": \"string\"\n            },\n            \"canonicalId\": {\n              \"type\": \"string\"\n            }\n          },\n          \"description\": \"Represents metadata about the DID document resulting from a  {@link  Resolvable.resolve }  operation.\"\n        },\n        \"IParsedDID\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"did\": {\n              \"type\": \"string\"\n            },\n            \"didUrl\": {\n              \"type\": \"string\"\n            },\n            \"method\": {\n              \"type\": \"string\"\n            },\n            \"id\": {\n              \"type\": \"string\"\n            },\n            \"path\": {\n              \"type\": \"string\"\n            },\n            \"fragment\": {\n              \"type\": \"string\"\n            },\n            \"query\": {\n              \"type\": \"string\"\n            },\n            \"params\": {\n              \"type\": \"object\",\n              \"additionalProperties\": {\n                \"type\": \"string\"\n              }\n            }\n          },\n          \"required\": [\n            \"did\",\n            \"didUrl\",\n            \"method\",\n            \"id\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"X509ValidationResult\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"error\": {\n              \"type\": \"boolean\"\n            },\n            \"critical\": {\n              \"type\": \"boolean\"\n            },\n            \"message\": {\n              \"type\": \"string\"\n            },\n            \"detailMessage\": {\n              \"type\": \"string\"\n            },\n            \"verificationTime\": {\n              \"type\": \"string\",\n              \"format\": \"date-time\"\n            },\n            \"certificateChain\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/CertificateInfo\"\n              }\n            },\n            \"trustAnchor\": {\n              \"$ref\": \"#/components/schemas/CertificateInfo\"\n            },\n            \"client\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                }\n              },\n              \"required\": [\n                \"clientId\",\n                \"clientIdScheme\"\n              ],\n              \"additionalProperties\": false\n            }\n          },\n          \"required\": [\n            \"error\",\n            \"critical\",\n            \"message\",\n            \"verificationTime\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"CertificateInfo\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"certificate\": {},\n            \"notBefore\": {\n              \"type\": \"string\",\n              \"format\": \"date-time\"\n            },\n            \"notAfter\": {\n              \"type\": \"string\",\n              \"format\": \"date-time\"\n            },\n            \"publicKeyJWK\": {},\n            \"issuer\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"dn\": {\n                  \"$ref\": \"#/components/schemas/DNInfo\"\n                }\n              },\n              \"required\": [\n                \"dn\"\n              ],\n              \"additionalProperties\": false\n            },\n            \"subject\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"dn\": {\n                  \"$ref\": \"#/components/schemas/DNInfo\"\n                },\n                \"subjectAlternativeNames\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/SubjectAlternativeName\"\n                  }\n                }\n              },\n              \"required\": [\n                \"dn\",\n                \"subjectAlternativeNames\"\n              ],\n              \"additionalProperties\": false\n            }\n          },\n          \"required\": [\n            \"notBefore\",\n            \"notAfter\",\n            \"issuer\",\n            \"subject\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"DNInfo\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"DN\": {\n              \"type\": \"string\"\n            },\n            \"attributes\": {\n              \"$ref\": \"#/components/schemas/Record<string,string>\"\n            }\n          },\n          \"required\": [\n            \"DN\",\n            \"attributes\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"Record<string,string>\": {\n          \"type\": \"object\",\n          \"additionalProperties\": {\n            \"type\": \"string\"\n          }\n        },\n        \"SubjectAlternativeName\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"value\": {\n              \"type\": \"string\"\n            },\n            \"type\": {\n              \"$ref\": \"#/components/schemas/SubjectAlternativeGeneralName\"\n            }\n          },\n          \"required\": [\n            \"value\",\n            \"type\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"SubjectAlternativeGeneralName\": {\n          \"type\": \"number\",\n          \"enum\": [\n            1,\n            2,\n            6,\n            7\n          ],\n          \"description\": \"otherName                       [0]     OtherName,        rfc822Name                      [1]     IA5String,        dNSName                         [2]     IA5String,        x400Address                     [3]     ORAddress,        directoryName                   [4]     Name,        ediPartyName                    [5]     EDIPartyName,        uniformResourceIdentifier       [6]     IA5String,        iPAddress                       [7]     OCTET STRING,        registeredID                    [8]     OBJECT IDENTIFIER }\"\n        },\n        \"ExternalIdentifierX5cResult\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"method\": {\n              \"type\": \"string\",\n              \"const\": \"x5c\"\n            },\n            \"jwks\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n              }\n            },\n            \"x5c\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"issuerJWK\": {\n              \"$ref\": \"#/components/schemas/JWK\"\n            },\n            \"verificationResult\": {\n              \"$ref\": \"#/components/schemas/X509ValidationResult\"\n            },\n            \"certificates\": {\n              \"type\": \"array\",\n              \"items\": {}\n            }\n          },\n          \"required\": [\n            \"certificates\",\n            \"issuerJWK\",\n            \"jwks\",\n            \"method\",\n            \"x5c\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"TrustedAnchor\": {\n          \"type\": \"string\"\n        },\n        \"Record<TrustedAnchor,ErrorMessage>\": {\n          \"type\": \"object\",\n          \"additionalProperties\": {\n            \"$ref\": \"#/components/schemas/ErrorMessage\"\n          }\n        },\n        \"ErrorMessage\": {\n          \"type\": \"string\"\n        },\n        \"JwtPayload\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"iss\": {\n              \"type\": \"string\"\n            },\n            \"sub\": {\n              \"type\": \"string\"\n            },\n            \"aud\": {\n              \"anyOf\": [\n                {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                {\n                  \"type\": \"string\"\n                }\n              ]\n            },\n            \"exp\": {\n              \"type\": \"number\"\n            },\n            \"nbf\": {\n              \"type\": \"number\"\n            },\n            \"iat\": {\n              \"type\": \"number\"\n            },\n            \"jti\": {\n              \"type\": \"string\"\n            }\n          },\n          \"additionalProperties\": {}\n        },\n        \"JweAlg\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"RSA1_5\",\n            \"RSA-OAEP\",\n            \"RSA-OAEP-256\",\n            \"A128KW\",\n            \"A192KW\",\n            \"A256KW\",\n            \"dir\",\n            \"ECDH-ES\",\n            \"ECDH-ES+A128KW\",\n            \"ECDH-ES+A192KW\",\n            \"ECDH-ES+A256KW\",\n            \"A128GCMKW\",\n            \"A192GCMKW\",\n            \"A256GCMKW\",\n            \"PBES2-HS256+A128KW\",\n            \"PBES2-HS384+A192KW\",\n            \"PBES2-HS512+A256KW\"\n          ]\n        },\n        \"JweEnc\": {\n          \"type\": \"string\",\n          \"enum\": [\n            \"A128CBC-HS256\",\n            \"A192CBC-HS384\",\n            \"A256CBC-HS512\",\n            \"A128GCM\",\n            \"A192GCM\",\n            \"A256GCM\"\n          ]\n        },\n        \"PreparedJwsObject\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"jws\": {\n              \"$ref\": \"#/components/schemas/PreparedJws\"\n            },\n            \"b64\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"payload\": {\n                  \"type\": \"string\"\n                },\n                \"protectedHeader\": {\n                  \"type\": \"string\"\n                }\n              },\n              \"required\": [\n                \"payload\",\n                \"protectedHeader\"\n              ],\n              \"additionalProperties\": false\n            },\n            \"identifier\": {\n              \"$ref\": \"#/components/schemas/ManagedIdentifierResult\"\n            }\n          },\n          \"required\": [\n            \"jws\",\n            \"b64\",\n            \"identifier\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"PreparedJws\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"protectedHeader\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"payload\": {\n              \"$ref\": \"#/components/schemas/Uint8Array\"\n            },\n            \"unprotectedHeader\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"existingSignatures\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JwsJsonSignature\"\n              }\n            }\n          },\n          \"required\": [\n            \"protectedHeader\",\n            \"payload\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"ManagedIdentifierResult\": {\n          \"anyOf\": [\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                },\n                \"x5c\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                \"certificate\": {}\n              },\n              \"required\": [\n                \"certificate\",\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\",\n                \"x5c\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                },\n                \"did\": {\n                  \"type\": \"string\"\n                },\n                \"keys\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/IKey\"\n                  }\n                },\n                \"verificationMethodSection\": {\n                  \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n                },\n                \"controllerKeyId\": {\n                  \"type\": \"string\"\n                }\n              },\n              \"required\": [\n                \"did\",\n                \"identifier\",\n                \"issuer\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"keys\",\n                \"kid\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kid\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"jwkThumbprint\": {\n                  \"type\": \"string\"\n                },\n                \"kmsKeyRef\": {\n                  \"type\": \"string\"\n                },\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierMethod\"\n                },\n                \"opts\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierOpts\"\n                },\n                \"key\": {\n                  \"$ref\": \"#/components/schemas/IKey\"\n                },\n                \"kid\": {\n                  \"type\": \"string\"\n                },\n                \"issuer\": {\n                  \"type\": \"string\"\n                },\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"anyOf\": [\n                    {\n                      \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                    },\n                    {\n                      \"type\": \"string\",\n                      \"const\": \"did\"\n                    },\n                    {\n                      \"type\": \"string\"\n                    }\n                  ]\n                },\n                \"identifier\": {\n                  \"$ref\": \"#/components/schemas/ManagedIdentifierType\"\n                }\n              },\n              \"required\": [\n                \"identifier\",\n                \"jwk\",\n                \"jwkThumbprint\",\n                \"key\",\n                \"kmsKeyRef\",\n                \"method\",\n                \"opts\"\n              ]\n            }\n          ]\n        },\n        \"VerifyJwsArgs\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"jws\": {\n              \"$ref\": \"#/components/schemas/Jws\"\n            },\n            \"jwk\": {\n              \"$ref\": \"#/components/schemas/JWK\"\n            },\n            \"opts\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"x5c\": {\n                  \"$ref\": \"#/components/schemas/Omit<ExternalIdentifierX5cOpts,\\\"identifier\\\">\"\n                },\n                \"did\": {\n                  \"$ref\": \"#/components/schemas/Omit<ExternalIdentifierDidOpts,\\\"identifier\\\">\"\n                }\n              },\n              \"additionalProperties\": false\n            }\n          },\n          \"required\": [\n            \"jws\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"Jws\": {\n          \"anyOf\": [\n            {\n              \"$ref\": \"#/components/schemas/JwsCompact\"\n            },\n            {\n              \"$ref\": \"#/components/schemas/JwsJsonFlattened\"\n            },\n            {\n              \"$ref\": \"#/components/schemas/JwsJsonGeneral\"\n            }\n          ]\n        },\n        \"Omit<ExternalIdentifierX5cOpts,\\\"identifier\\\">\": {\n          \"$ref\": \"#/components/schemas/Pick<ExternalIdentifierX5cOpts,Exclude<(\\\"identifier\\\"|\\\"allowNoTrustAnchorsFound\\\"|\\\"trustRootWhenNoAnchors\\\"|\\\"allowSingleNoCAChainElement\\\"|\\\"blindlyTrustedAnchors\\\"|\\\"disallowReversedChain\\\"|\\\"client\\\"|\\\"method\\\"|\\\"verify\\\"|\\\"verificationTime\\\"|\\\"trustAnchors\\\"),\\\"identifier\\\">>\"\n        },\n        \"Pick<ExternalIdentifierX5cOpts,Exclude<(\\\"identifier\\\"|\\\"allowNoTrustAnchorsFound\\\"|\\\"trustRootWhenNoAnchors\\\"|\\\"allowSingleNoCAChainElement\\\"|\\\"blindlyTrustedAnchors\\\"|\\\"disallowReversedChain\\\"|\\\"client\\\"|\\\"method\\\"|\\\"verify\\\"|\\\"verificationTime\\\"|\\\"trustAnchors\\\"),\\\"identifier\\\">>\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"allowNoTrustAnchorsFound\": {\n              \"type\": \"boolean\"\n            },\n            \"trustRootWhenNoAnchors\": {\n              \"type\": \"boolean\"\n            },\n            \"allowSingleNoCAChainElement\": {\n              \"type\": \"boolean\"\n            },\n            \"blindlyTrustedAnchors\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            },\n            \"disallowReversedChain\": {\n              \"type\": \"boolean\"\n            },\n            \"client\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"clientId\": {\n                  \"type\": \"string\"\n                },\n                \"clientIdScheme\": {\n                  \"$ref\": \"#/components/schemas/ClientIdScheme\"\n                }\n              },\n              \"required\": [\n                \"clientId\",\n                \"clientIdScheme\"\n              ],\n              \"additionalProperties\": false\n            },\n            \"method\": {\n              \"type\": \"string\",\n              \"const\": \"x5c\"\n            },\n            \"verify\": {\n              \"type\": \"boolean\"\n            },\n            \"verificationTime\": {\n              \"type\": \"string\",\n              \"format\": \"date-time\"\n            },\n            \"trustAnchors\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"type\": \"string\"\n              }\n            }\n          },\n          \"additionalProperties\": false\n        },\n        \"Omit<ExternalIdentifierDidOpts,\\\"identifier\\\">\": {\n          \"$ref\": \"#/components/schemas/Pick<ExternalIdentifierDidOpts,Exclude<(\\\"identifier\\\"|\\\"method\\\"|\\\"noVerificationMethodFallback\\\"|\\\"vmRelationship\\\"|\\\"localResolution\\\"|\\\"uniresolverResolution\\\"|\\\"resolverResolution\\\"),\\\"identifier\\\">>\"\n        },\n        \"Pick<ExternalIdentifierDidOpts,Exclude<(\\\"identifier\\\"|\\\"method\\\"|\\\"noVerificationMethodFallback\\\"|\\\"vmRelationship\\\"|\\\"localResolution\\\"|\\\"uniresolverResolution\\\"|\\\"resolverResolution\\\"),\\\"identifier\\\">>\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"method\": {\n              \"type\": \"string\",\n              \"const\": \"did\"\n            },\n            \"noVerificationMethodFallback\": {\n              \"type\": \"boolean\"\n            },\n            \"vmRelationship\": {\n              \"$ref\": \"#/components/schemas/DIDDocumentSection\"\n            },\n            \"localResolution\": {\n              \"type\": \"boolean\"\n            },\n            \"uniresolverResolution\": {\n              \"type\": \"boolean\"\n            },\n            \"resolverResolution\": {\n              \"type\": \"boolean\"\n            }\n          },\n          \"additionalProperties\": false\n        },\n        \"IJwsValidationResult\": {\n          \"type\": \"object\",\n          \"additionalProperties\": false,\n          \"properties\": {\n            \"jws\": {\n              \"$ref\": \"#/components/schemas/JwsJsonGeneralWithIdentifiers\"\n            },\n            \"name\": {\n              \"type\": \"string\",\n              \"description\": \"The name of the validation or its subsystem. Mainly used for information purposes. Not assumed to be unique\"\n            },\n            \"error\": {\n              \"type\": \"boolean\",\n              \"description\": \"Whether the validation was successful or not\"\n            },\n            \"critical\": {\n              \"type\": \"boolean\",\n              \"description\": \"Whether an error can be ignored or not (up to processing logic)\"\n            },\n            \"message\": {\n              \"type\": \"string\",\n              \"description\": \"Any status/info message about the validation\"\n            },\n            \"verificationTime\": {\n              \"type\": \"string\",\n              \"format\": \"date-time\",\n              \"description\": \"The date and time of the validation\"\n            }\n          },\n          \"required\": [\n            \"critical\",\n            \"error\",\n            \"jws\",\n            \"message\",\n            \"name\",\n            \"verificationTime\"\n          ]\n        },\n        \"JwsJsonGeneralWithIdentifiers\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"payload\": {\n              \"type\": \"string\"\n            },\n            \"signatures\": {\n              \"type\": \"array\",\n              \"items\": {\n                \"$ref\": \"#/components/schemas/JwsJsonSignatureWithIdentifier\"\n              }\n            }\n          },\n          \"required\": [\n            \"payload\",\n            \"signatures\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"JwsJsonSignatureWithIdentifier\": {\n          \"type\": \"object\",\n          \"properties\": {\n            \"protected\": {\n              \"type\": \"string\"\n            },\n            \"header\": {\n              \"$ref\": \"#/components/schemas/JwsHeader\"\n            },\n            \"signature\": {\n              \"type\": \"string\"\n            },\n            \"identifier\": {\n              \"$ref\": \"#/components/schemas/ExternalIdentifierResult\"\n            }\n          },\n          \"required\": [\n            \"identifier\",\n            \"protected\",\n            \"signature\"\n          ],\n          \"additionalProperties\": false\n        },\n        \"ExternalIdentifierResult\": {\n          \"anyOf\": [\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                },\n                \"jwks\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                  }\n                },\n                \"did\": {\n                  \"type\": \"string\"\n                },\n                \"didDocument\": {\n                  \"$ref\": \"#/components/schemas/DIDDocument\"\n                },\n                \"didJwks\": {\n                  \"$ref\": \"#/components/schemas/DidDocumentJwks\"\n                },\n                \"didResolutionResult\": {\n                  \"$ref\": \"#/components/schemas/Omit<DIDResolutionResult,\\\"didDocument\\\">\"\n                },\n                \"didParsed\": {\n                  \"$ref\": \"#/components/schemas/IParsedDID\"\n                }\n              },\n              \"required\": [\n                \"did\",\n                \"didParsed\",\n                \"didResolutionResult\",\n                \"jwks\",\n                \"method\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                },\n                \"jwks\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                  }\n                },\n                \"x5c\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"string\"\n                  }\n                },\n                \"issuerJWK\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"verificationResult\": {\n                  \"$ref\": \"#/components/schemas/X509ValidationResult\"\n                },\n                \"certificates\": {\n                  \"type\": \"array\",\n                  \"items\": {}\n                }\n              },\n              \"required\": [\n                \"certificates\",\n                \"issuerJWK\",\n                \"jwks\",\n                \"method\",\n                \"x5c\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                },\n                \"jwks\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                  }\n                },\n                \"jwk\": {\n                  \"$ref\": \"#/components/schemas/JWK\"\n                },\n                \"x5c\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n                }\n              },\n              \"required\": [\n                \"jwk\",\n                \"jwks\",\n                \"method\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                },\n                \"jwks\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                  }\n                },\n                \"trustedAnchors\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/TrustedAnchor\"\n                  }\n                },\n                \"errorList\": {\n                  \"$ref\": \"#/components/schemas/Record<TrustedAnchor,ErrorMessage>\"\n                },\n                \"jwtPayload\": {\n                  \"$ref\": \"#/components/schemas/JwtPayload\"\n                },\n                \"trustEstablished\": {\n                  \"type\": \"boolean\"\n                }\n              },\n              \"required\": [\n                \"jwks\",\n                \"method\",\n                \"trustEstablished\",\n                \"trustedAnchors\"\n              ]\n            },\n            {\n              \"type\": \"object\",\n              \"additionalProperties\": false,\n              \"properties\": {\n                \"method\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierMethod\"\n                },\n                \"jwks\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"$ref\": \"#/components/schemas/ExternalJwkInfo\"\n                  }\n                },\n                \"coseKey\": {\n                  \"$ref\": \"#/components/schemas/ICoseKeyJson\"\n                },\n                \"x5c\": {\n                  \"$ref\": \"#/components/schemas/ExternalIdentifierX5cResult\"\n                }\n              },\n              \"required\": [\n                \"coseKey\",\n                \"jwks\",\n                \"method\"\n              ]\n            }\n          ]\n        }\n      },\n      \"methods\": {\n        \"jwtCreateJwsCompactSignature\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/CreateJwsCompactArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/JwtCompactResult\"\n          }\n        },\n        \"jwtCreateJwsJsonFlattenedSignature\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/CreateJwsFlattenedArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/JwsJsonFlattened\"\n          }\n        },\n        \"jwtCreateJwsJsonGeneralSignature\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/JwsJsonGeneral\"\n          }\n        },\n        \"jwtDecryptJweCompactJwt\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/DecryptJweCompactJwtArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/JwtCompactResult\"\n          }\n        },\n        \"jwtEncryptJweCompactJwt\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/EncryptJweCompactJwtArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/JwtCompactResult\"\n          }\n        },\n        \"jwtPrepareJws\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/CreateJwsJsonArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/PreparedJwsObject\"\n          }\n        },\n        \"jwtVerifyJwsSignature\": {\n          \"description\": \"\",\n          \"arguments\": {\n            \"$ref\": \"#/components/schemas/VerifyJwsArgs\"\n          },\n          \"returnType\": {\n            \"$ref\": \"#/components/schemas/IJwsValidationResult\"\n          }\n        }\n      }\n    }\n  }\n}","import { Loggers } from '@sphereon/ssi-types'\n\n/**\n * @internal\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\n\nexport const JwtLogger = Loggers.DEFAULT.get('sphereon:sdk:jwt')\n/**\n * @public\n */\nexport { JwtService } from './agent/JwtService'\nexport * from './functions'\nexport * from './types/IJwtService'\n","import { Loggers } from '@sphereon/ssi-types'\nimport type { IAgentPlugin } from '@veramo/core'\nconst logger = Loggers.DEFAULT.get('sphereon:jwt-service')\nimport { importJWK } from 'jose'\n\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nconst { fromString } = u8a\nimport {\n  createJwsCompact,\n  type CreateJwsCompactArgs,\n  type CreateJwsFlattenedArgs,\n  type CreateJwsJsonArgs,\n  createJwsJsonFlattened,\n  createJwsJsonGeneral,\n  type DecryptJweCompactJwtArgs,\n  type EncryptJweCompactJwtArgs,\n  type IJwsValidationResult,\n  type IJwtService,\n  type IRequiredContext,\n  jweAlg,\n  jweEnc,\n  type JwsJsonFlattened,\n  type JwsJsonGeneral,\n  type JwtCompactResult,\n  JwtLogger,\n  type PreparedJwsObject,\n  prepareJwsObject,\n  schema,\n  verifyJws,\n  type VerifyJwsArgs,\n} from '..'\nimport { CompactJwtEncrypter } from '../functions/JWE'\n\n/**\n * @public\n */\nexport class JwtService implements IAgentPlugin {\n  readonly schema = schema.IJwtService\n  readonly methods: IJwtService = {\n    jwtPrepareJws: this.jwtPrepareJws.bind(this),\n    jwtCreateJwsJsonGeneralSignature: this.jwtCreateJwsJsonGeneralSignature.bind(this),\n    jwtCreateJwsJsonFlattenedSignature: this.jwtCreateJwsJsonFlattenedSignature.bind(this),\n    jwtCreateJwsCompactSignature: this.jwtCreateJwsCompactSignature.bind(this),\n    jwtVerifyJwsSignature: this.jwtVerifyJwsSignature.bind(this),\n    jwtEncryptJweCompactJwt: this.jwtEncryptJweCompactJwt.bind(this),\n    jwtDecryptJweCompactJwt: this.jwtDecryptJweCompactJwt.bind(this),\n  }\n\n  private async jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject> {\n    return await prepareJwsObject(args, context)\n  }\n\n  private async jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral> {\n    return await createJwsJsonGeneral(args, context)\n  }\n\n  private async jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened> {\n    return await createJwsJsonFlattened(args, context)\n  }\n\n  private async jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n    // We wrap it in a json object for remote REST calls\n    return { jwt: await createJwsCompact(args, context) }\n  }\n\n  private async jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult> {\n    return await verifyJws(args, context)\n  }\n\n  private async jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n    const { payload, protectedHeader = { alg: args.alg, enc: args.enc }, recipientKey, issuer, expirationTime, audience } = args\n\n    try {\n      logger.debug(`JWE Encrypt: ${JSON.stringify(args, null, 2)}`)\n\n      const alg = jweAlg(args.alg) ?? jweAlg(protectedHeader.alg) ?? 'ECDH-ES'\n      const enc = jweEnc(args.enc) ?? jweEnc(protectedHeader.enc) ?? 'A256GCM'\n      const encJwks =\n        recipientKey.jwks.length === 1\n          ? [recipientKey.jwks[0]]\n          : recipientKey.jwks.filter((jwk) => (jwk.kid && (jwk.kid === jwk.jwk.kid || jwk.kid === jwk.jwkThumbprint)) || jwk.jwk.use === 'enc')\n      if (encJwks.length === 0) {\n        return Promise.reject(Error(`No public JWK found that can be used to encrypt against`))\n      }\n      const jwkInfo = encJwks[0]\n      if (encJwks.length > 0) {\n        JwtLogger.warning(`More than one JWK with 'enc' usage found. Selected the first one as no 'kid' was provided`, encJwks)\n      }\n      if (jwkInfo.jwk.kty?.startsWith('EC') !== true || !alg.startsWith('ECDH')) {\n        return Promise.reject(Error(`Currently only ECDH-ES is supported for encryption. JWK alg ${jwkInfo.jwk.kty}, header alg ${alg}`)) // TODO: Probably we support way more already\n      }\n      const apuVal = protectedHeader.apu ?? args.apu\n      const apu = apuVal ? fromString(apuVal, 'base64url') : undefined\n      const apvVal = protectedHeader.apv ?? args.apv\n      const apv = apvVal ? fromString(apvVal, 'base64url') : undefined\n\n      const pubKey = await importJWK(jwkInfo.jwk)\n      const encrypter = new CompactJwtEncrypter({\n        enc,\n        alg,\n        keyManagementParams: { apu, apv },\n        key: pubKey,\n        issuer,\n        expirationTime,\n        audience,\n      })\n\n      const jwe = await encrypter.encryptCompactJWT(payload, {})\n      return { jwt: jwe }\n    } catch (error: any) {\n      console.error(`Error encrypting JWE: ${error.message}`, error)\n      throw error\n    }\n  }\n\n  private async jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult> {\n    return { jwt: 'FIXME' }\n  }\n}\n","import { defaultRandomSource, randomBytes, type RandomSource } from '@stablelib/random'\nimport { base64ToBytes, bytesToBase64url, decodeBase64url } from '@veramo/utils'\nimport * as jose from 'jose'\nimport type { JWEKeyManagementHeaderParameters, JWTDecryptOptions } from 'jose'\n// // @ts-ignore\n// import type { KeyLike } from 'jose/dist/types/types'\nexport type KeyLike = { type: string }\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nconst { fromString, toString, concat } = u8a\nimport {\n  type JweAlg,\n  JweAlgs,\n  type JweEnc,\n  JweEncs,\n  type JweHeader,\n  type JweJsonGeneral,\n  type JweProtectedHeader,\n  type JweRecipient,\n  type JweRecipientUnprotectedHeader,\n  type JwsPayload,\n} from '../types/IJwtService'\n\nexport interface EncryptionResult {\n  ciphertext: Uint8Array\n  tag: Uint8Array\n  iv: Uint8Array\n  protectedHeader?: string\n  recipients?: JweRecipient[]\n  cek?: Uint8Array\n}\n\nexport const generateContentEncryptionKey = async ({\n  alg,\n  randomSource = defaultRandomSource,\n}: {\n  alg: JweEnc\n  randomSource?: RandomSource\n}): Promise<Uint8Array> => {\n  let length: number\n  switch (alg) {\n    case 'A128GCM':\n      length = 16\n      break\n    case 'A192GCM':\n      length = 24\n      break\n    case 'A128CBC-HS256':\n    case 'A256GCM':\n      length = 32\n      break\n    case 'A192CBC-HS384':\n      length = 48\n      break\n    case 'A256CBC-HS512':\n      length = 64\n      break\n    default:\n      length = 32\n  }\n  return randomBytes(length, randomSource)\n}\n\n/*\nexport const generateContentEncryptionKeyfdsdf = async ({type = 'Secp256r1', ...rest}: {\n    type?: Extract<TKeyType, 'Secp256r1' | 'RSA'>,\n    kms?: string\n}, context: IAgentContext<ISphereonKeyManager>): Promise<EphemeralPublicKey> => {\n\n    const kms = rest.kms ?? await context.agent.keyManagerGetDefaultKeyManagementSystem()\n    const key = await context.agent.keyManagerCreate({kms, type, opts: {ephemeral: true}})\n    const jwk = toJwkFromKey(key, {use: JwkKeyUse.Encryption, noKidThumbprint: true})\n}\n*/\nexport interface JwtEncrypter {\n  alg: string\n  enc: string\n  encrypt: (payload: JwsPayload, protectedHeader: JweProtectedHeader, aad?: Uint8Array) => Promise<EncryptionResult>\n  encryptCek?: (cek: Uint8Array) => Promise<JweRecipient>\n}\n\nexport interface JweEncrypter {\n  alg: string\n  enc: string\n  encrypt: (payload: Uint8Array, protectedHeader: JweProtectedHeader, aad?: Uint8Array) => Promise<EncryptionResult>\n  encryptCek?: (cek: Uint8Array) => Promise<JweRecipient>\n}\n\nexport interface JweDecrypter {\n  alg: string\n  enc: string\n  decrypt: (sealed: Uint8Array, iv: Uint8Array, aad?: Uint8Array, recipient?: JweRecipient) => Promise<Uint8Array | null>\n}\n\nfunction jweAssertValid(jwe: JweJsonGeneral) {\n  if (!(jwe.protected && jwe.iv && jwe.ciphertext && jwe.tag)) {\n    throw Error('JWE is missing properties: protected, iv, ciphertext and/or tag')\n  }\n  if (jwe.recipients) {\n    jwe.recipients.map((recipient: JweRecipient) => {\n      if (!(recipient.header && recipient.encrypted_key)) {\n        throw Error('Malformed JWE recipients; no header and encrypted key present')\n      }\n    })\n  }\n}\n\nfunction jweEncode({\n  ciphertext,\n  tag,\n  iv,\n  protectedHeader,\n  recipients,\n  aad,\n  unprotected,\n}: EncryptionResult & {\n  aad?: Uint8Array\n  unprotected?: JweHeader\n}): JweJsonGeneral {\n  if (!recipients || recipients.length === 0) {\n    throw Error(`No recipient found`)\n  }\n  return {\n    ...(unprotected && { unprotected }),\n    protected: <string>protectedHeader,\n    iv: bytesToBase64url(iv),\n    ciphertext: bytesToBase64url(ciphertext),\n    ...(tag && { tag: bytesToBase64url(tag) }),\n    ...(aad && { aad: bytesToBase64url(aad) }),\n    recipients,\n  } satisfies JweJsonGeneral\n}\n\nexport class CompactJwtEncrypter implements JweEncrypter {\n  private _alg: JweAlg | undefined\n  private _enc: JweEnc | undefined\n  private _keyManagementParams: JWEKeyManagementHeaderParameters | undefined\n  private recipientKey: Uint8Array | jose.KeyLike //,EphemeralPublicKey | BaseJWK;\n  private expirationTime\n  private issuer: string | undefined\n  private audience: string | string[] | undefined\n\n  constructor(args: {\n    key: Uint8Array | jose.KeyLike /*EphemeralPublicKey | BaseJWK*/\n    alg?: JweAlg\n    enc?: JweEnc\n    keyManagementParams?: JWEKeyManagementHeaderParameters\n    expirationTime?: number | string | Date\n    issuer?: string\n    audience?: string | string[]\n  }) {\n    if (args?.alg) {\n      this._alg = args.alg\n    }\n    if (args?.enc) {\n      this._enc = args.enc\n    }\n    this._keyManagementParams = args.keyManagementParams\n    this.recipientKey = args.key\n    this.expirationTime = args.expirationTime\n    this.issuer = args.issuer\n    this.audience = args.audience\n  }\n\n  get enc(): string {\n    if (!this._enc) {\n      throw Error(`enc not set`)\n    }\n    return this._enc\n  }\n\n  set enc(value: JweEnc | string) {\n    // @ts-ignore\n    if (!JweEncs.includes(value)) {\n      throw Error(`invalid JWE enc value ${value}`)\n    }\n    this._enc = value as JweEnc\n  }\n\n  get alg(): string {\n    if (!this._alg) {\n      throw Error(`alg not set`)\n    }\n    return this._alg\n  }\n\n  set alg(value: JweAlg | string) {\n    // @ts-ignore\n    if (!JweAlgs.includes(value)) {\n      throw Error(`invalid JWE alg value ${value}`)\n    }\n    this._alg = value as JweAlg\n  }\n\n  async encryptCompactJWT(payload: JwsPayload, jweProtectedHeader: JweProtectedHeader, aad?: Uint8Array | undefined): Promise<string> {\n    const protectedHeader = {\n      ...jweProtectedHeader,\n      alg: jweProtectedHeader.alg ?? this._alg,\n      enc: jweProtectedHeader.enc ?? this._enc,\n    }\n    if (!protectedHeader.alg || !protectedHeader.enc) {\n      return Promise.reject(Error(`no 'alg' or 'enc' value set for the protected JWE header!`))\n    }\n    this.enc = protectedHeader.enc\n    this.alg = protectedHeader.alg\n    if (payload.exp) {\n      this.expirationTime = payload.exp\n    }\n    if (payload.iss) {\n      this.issuer = payload.iss\n    }\n    if (payload.aud) {\n      this.audience = payload.aud\n    }\n    const encrypt = new jose.EncryptJWT(payload).setProtectedHeader({\n      ...protectedHeader,\n      alg: this.alg,\n      enc: this.enc,\n    })\n    if (this._alg!.startsWith('ECDH')) {\n      if (!this._keyManagementParams) {\n        return Promise.reject(Error(`ECDH requires key management params`))\n      }\n      encrypt.setKeyManagementParameters(this._keyManagementParams!)\n    }\n    if (this.expirationTime !== undefined) {\n      encrypt.setExpirationTime(this.expirationTime)\n    }\n\n    if (this.issuer) {\n      encrypt.setIssuer(this.issuer)\n    }\n    if (this.audience) {\n      encrypt.setAudience(this.audience)\n    }\n    return await encrypt.encrypt(this.recipientKey)\n  }\n\n  public static async decryptCompactJWT(jwt: string, key: KeyLike | Uint8Array, options?: JWTDecryptOptions) {\n    return await jose.jwtDecrypt(jwt, key, options)\n  }\n\n  async encrypt(payload: Uint8Array, jweProtectedHeader: JweProtectedHeader, aad?: Uint8Array | undefined): Promise<EncryptionResult> {\n    const jwt = await this.encryptCompactJWT(JSON.parse(toString(payload)), jweProtectedHeader, aad)\n    const [protectedHeader, encryptedKey, ivB64, payloadB64, tagB64] = jwt.split('.')\n    //[jwe.protected, jwe.encrypted_key, jwe.iv, jwe.ciphertext, jwe.tag].join('.');\n    console.log(`FIXME: TO EncryptionResult`)\n\n    return {\n      protectedHeader,\n      tag: base64ToBytes(tagB64),\n      ciphertext: base64ToBytes(payloadB64),\n      iv: base64ToBytes(ivB64),\n      recipients: [\n        {\n          //fixme\n          // header: protectedHeader,\n          ...(encryptedKey && { encrypted_key: encryptedKey }),\n        },\n      ],\n    }\n  }\n\n  // encryptCek?: ((cek: Uint8Array) => Promise<JweRecipient>) | undefined;\n}\n\nexport async function createJwe(\n  cleartext: Uint8Array,\n  encrypters: JweEncrypter[],\n  protectedHeader: JweProtectedHeader,\n  aad?: Uint8Array,\n): Promise<JweJsonGeneral> {\n  if (encrypters.length === 0) {\n    throw Error('JWE needs at least 1 encryptor')\n  }\n  if (encrypters.find((enc) => enc.alg === 'dir' || enc.alg === 'ECDH-ES')) {\n    if (encrypters.length !== 1) {\n      throw Error(`JWE can only do \"dir\" or \"ECDH-ES\" encryption with one key. ${encrypters.length} supplied`)\n    }\n    const encryptionResult = await encrypters[0].encrypt(cleartext, protectedHeader, aad)\n    return jweEncode({ ...encryptionResult, aad })\n  } else {\n    const tmpEnc = encrypters[0].enc\n    if (!encrypters.reduce((acc, encrypter) => acc && encrypter.enc === tmpEnc, true)) {\n      throw new Error('invalid_argument: Incompatible encrypters passed')\n    }\n    let cek: Uint8Array | undefined = undefined\n    let jwe: JweJsonGeneral | undefined = undefined\n    for (const encrypter of encrypters) {\n      if (!cek) {\n        const encryptionResult = await encrypter.encrypt(cleartext, protectedHeader, aad)\n        cek = encryptionResult.cek\n        jwe = jweEncode({ ...encryptionResult, aad })\n      } else {\n        const recipient = await encrypter.encryptCek?.(cek)\n        if (recipient) {\n          jwe?.recipients?.push(recipient)\n        }\n      }\n    }\n    if (!jwe) {\n      throw Error(`No JWE constructed`)\n    }\n    return jwe\n  }\n}\n\n/**\n * Merges all headers, so we get a unified header.\n *\n * @param protectedHeader\n * @param unprotectedHeader\n * @param recipientUnprotectedHeader\n */\nexport function jweMergeHeaders({\n  protectedHeader,\n  unprotectedHeader,\n  recipientUnprotectedHeader,\n}: {\n  protectedHeader?: JweProtectedHeader\n  unprotectedHeader?: JweHeader\n  recipientUnprotectedHeader?: JweRecipientUnprotectedHeader\n}): JweHeader {\n  // TODO: Check that all headers/params are disjoint!\n  const header = { ...protectedHeader, ...unprotectedHeader, ...recipientUnprotectedHeader }\n\n  if (!header.alg || !header.enc) {\n    throw Error(`Either 'alg' or 'enc' are missing from the headers`)\n  }\n  return header as JweHeader\n}\n\nexport async function decryptJwe(jwe: JweJsonGeneral, decrypter: JweDecrypter): Promise<Uint8Array> {\n  jweAssertValid(jwe)\n  const protectedHeader: JweProtectedHeader = JSON.parse(decodeBase64url(jwe.protected))\n  if (protectedHeader?.enc !== decrypter.enc) {\n    return Promise.reject(Error(`Decrypter enc '${decrypter.enc}' does not support header enc '${protectedHeader.enc}'`))\n  } else if (!jwe.tag) {\n    return Promise.reject(Error(`Decrypter enc '${decrypter.enc}' does not support header enc '${protectedHeader.enc}'`))\n  }\n  const sealed = toWebCryptoCiphertext(jwe.ciphertext, jwe.tag)\n  const aad = fromString(jwe.aad ? `${jwe.protected}.${jwe.aad}` : jwe.protected)\n  let cleartext = null\n  if (protectedHeader.alg === 'dir' && decrypter.alg === 'dir') {\n    cleartext = await decrypter.decrypt(sealed, base64ToBytes(jwe.iv), aad)\n  } else if (!jwe.recipients || jwe.recipients.length === 0) {\n    throw Error('missing recipients for JWE')\n  } else {\n    for (let i = 0; !cleartext && i < jwe.recipients.length; i++) {\n      const recipient: JweRecipient = jwe.recipients[i]\n      recipient.header = { ...recipient.header, ...protectedHeader } as JweRecipientUnprotectedHeader\n      if (recipient.header.alg === decrypter.alg) {\n        cleartext = await decrypter.decrypt(sealed, base64ToBytes(jwe.iv), aad, recipient)\n      }\n    }\n  }\n  if (cleartext === null) throw new Error('failure: Failed to decrypt')\n  return cleartext\n}\n\nexport function toWebCryptoCiphertext(ciphertext: string, tag: string): Uint8Array {\n  return concat([base64ToBytes(ciphertext), base64ToBytes(tag)])\n}\n","import type {\n  ExternalIdentifierDidOpts,\n  ExternalIdentifierResult,\n  ExternalIdentifierX5cOpts,\n  IIdentifierResolution,\n  ManagedIdentifierOptsOrResult,\n  ManagedIdentifierResult,\n} from '@sphereon/ssi-sdk-ext.identifier-resolution'\nimport type { ClientIdScheme } from '@sphereon/ssi-sdk-ext.x509-utils'\nimport type { BaseJWK, IValidationResult, JoseSignatureAlgorithm, JoseSignatureAlgorithmString, JWK } from '@sphereon/ssi-types'\nimport type { IAgentContext, IKeyManager, IPluginMethodMap } from '@veramo/core'\n\nexport type IRequiredContext = IAgentContext<IIdentifierResolution & IKeyManager> // could we still interop with Veramo?\n\nexport const jwtServiceContextMethods: Array<string> = [\n  'jwtPrepareJws',\n  'jwtCreateJwsJsonGeneralSignature',\n  'jwtCreateJwsJsonFlattenedSignature',\n  'jwtCreateJwsCompactSignature',\n  'jwtVerifyJwsSignature',\n  'jwtEncryptJweCompactJwt',\n  'jwtDecryptJweCompactJwt',\n]\n\nexport interface IJwtService extends IPluginMethodMap {\n  jwtPrepareJws(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject>\n\n  jwtCreateJwsJsonGeneralSignature(args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral>\n\n  jwtCreateJwsJsonFlattenedSignature(args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened>\n\n  jwtCreateJwsCompactSignature(args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n  jwtVerifyJwsSignature(args: VerifyJwsArgs, context: IRequiredContext): Promise<IJwsValidationResult>\n\n  jwtEncryptJweCompactJwt(args: EncryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n  jwtDecryptJweCompactJwt(args: DecryptJweCompactJwtArgs, context: IRequiredContext): Promise<JwtCompactResult>\n\n  // TODO: JWE/encryption general methods\n}\n\nexport type IJwsValidationResult = IValidationResult & {\n  jws: JwsJsonGeneralWithIdentifiers // We always translate to general as that is the most flexible format allowing multiple sigs\n}\n\nexport interface PreparedJws {\n  protectedHeader: JwsHeader\n  payload: Uint8Array\n  unprotectedHeader?: JwsHeader // only for jws json and also then optional\n  existingSignatures?: Array<JwsJsonSignature> // only for jws json and also then optional\n}\n\nexport interface JwsJsonSignature {\n  protected: string\n  header?: JwsHeader\n  signature: string\n}\n\n/**\n * The JWK representation of an ephemeral public key.\n * See https://www.rfc-editor.org/rfc/rfc7518.html#section-6\n */\n// todo split into separate objects\nexport type EphemeralPublicKey = Omit<BaseJWK, 'alg'>\n\n// export function isEcJWK(v)\n\nexport interface JweHeader extends Omit<BaseJwtHeader, 'alg'> {\n  alg: string\n  enc: string\n  jku?: string\n  jwk?: BaseJWK\n  epk?: EphemeralPublicKey\n  x5u?: string\n  x5c?: string[]\n  x5t?: string\n  cty?: string\n  crit?: string[]\n\n  [k: string]: any\n}\n\nexport interface JweRecipientUnprotectedHeader {\n  alg: string\n  iv: string\n  tag: string\n  epk?: EphemeralPublicKey\n  kid?: string\n  apv?: string\n  apu?: string\n}\n\nexport interface JweProtectedHeader extends Partial<JweHeader> {\n  zip?: 'DEF' | string\n}\n\nexport type Jws = JwsCompact | JwsJsonFlattened | JwsJsonGeneral\n\nexport type JwsCompact = string\n\nexport interface JwsJsonFlattened {\n  payload: string\n  protected: string\n  header?: JwsHeader\n  signature: string\n}\n\nexport interface JwsJsonGeneral {\n  payload: string\n  signatures: Array<JwsJsonSignature>\n}\n\nexport interface JwsJsonGeneralWithIdentifiers extends JwsJsonGeneral {\n  signatures: Array<JwsJsonSignatureWithIdentifier>\n}\n\nexport interface JwsJsonSignatureWithIdentifier extends JwsJsonSignature {\n  identifier: ExternalIdentifierResult\n}\n\nexport type Jwe = JweCompact | JweJsonFlattened | JweJsonGeneral\nexport type JweCompact = string\n\nexport interface JweJsonFlattened {\n  protected: string\n  unprotected: JweHeader\n  header: JweHeader | JweRecipientUnprotectedHeader\n  encrypted_key?: string\n  aad?: string\n  iv: string\n  ciphertext: string\n  tag?: string\n}\n\nexport interface JweRecipient {\n  header?: JweRecipientUnprotectedHeader\n  encrypted_key?: string\n}\n\nexport interface JweJsonGeneral {\n  protected: string\n  unprotected?: JweHeader\n  recipients: Array<JweRecipient>\n  aad?: string\n  iv: string\n  ciphertext: string\n  tag?: string\n}\n\nexport interface PreparedJwsObject {\n  jws: PreparedJws\n  b64: { payload: string; protectedHeader: string } // header is always json, as it can only be used in JwsJson\n  identifier: ManagedIdentifierResult\n}\n\nexport interface BaseJwtHeader {\n  typ?: string\n  alg?: string\n  kid?: string\n}\n\nexport interface BaseJwtPayload {\n  iss?: string\n  sub?: string\n  aud?: string[] | string\n  exp?: number\n  nbf?: number\n  iat?: number\n  jti?: string\n}\n\nexport interface JwsHeader extends BaseJwtHeader {\n  kid?: string\n  jwk?: JWK\n  x5c?: string[]\n\n  [key: string]: unknown\n}\n\nexport interface JwsPayload extends BaseJwtPayload {\n  [key: string]: unknown\n}\n\nexport interface JwsHeaderOpts {\n  alg: JoseSignatureAlgorithm | JoseSignatureAlgorithmString\n}\n\nexport type JwsIdentifierMode = 'x5c' | 'kid' | 'jwk' | 'did' | 'auto'\n\nexport type EncryptJweCompactJwtArgs = {\n  payload: JwsPayload\n  protectedHeader?: JweProtectedHeader | undefined\n  aad?: Uint8Array | undefined\n  recipientKey: ExternalIdentifierResult & { kid?: string }\n  alg?: JweAlg\n  enc?: JweEnc\n  apu?: string // base64url\n  apv?: string // base64url\n  expirationTime?: number | string | Date\n  issuer?: string\n  audience?: string | string[]\n}\n\nexport type DecryptJweCompactJwtArgs = {\n  jwe: JweCompact\n  idOpts: ManagedIdentifierOptsOrResult\n}\n\nexport type CreateJwsArgs = {\n  mode?: JwsIdentifierMode\n  issuer: ManagedIdentifierOptsOrResult & {\n    noIssPayloadUpdate?: boolean\n    noIdentifierInHeader?: boolean\n  }\n  clientId?: string\n  clientIdScheme?: ClientIdScheme | 'did' | string\n  protectedHeader: JwsHeader\n  payload: JwsPayload | Uint8Array | string\n}\n\nexport type CreateJweArgs = {\n  mode?: JwsIdentifierMode\n  issuer: ManagedIdentifierOptsOrResult & {\n    noIssPayloadUpdate?: boolean\n    noIdentifierInHeader?: boolean\n  }\n  protectedHeader: JweProtectedHeader\n  encryptedKey: string | EphemeralPublicKey // In case it is a string it is already encrypted; otherwise encrypt //TODO ??\n  iv: string\n  ciphertext: string\n  tag: string\n}\nexport type CreateJwsCompactArgs = CreateJwsArgs\n\nexport type CreateJwsFlattenedArgs = Exclude<CreateJwsJsonArgs, 'existingSignatures'>\n\nexport type VerifyJwsArgs = {\n  jws: Jws\n  jwk?: JWK // Jwk will be resolved from jws, but you can also provide one\n  opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n}\n\n/**\n * @public\n */\nexport type CreateJwsJsonArgs = CreateJwsArgs & {\n  unprotectedHeader?: JwsHeader // only for jws json\n  existingSignatures?: Array<JwsJsonSignature> // Only for jws json\n}\n\nexport type CreateJweJsonArgs = CreateJweArgs & {\n  unprotectedHeader?: JweHeader\n}\n\n/**\n * @public\n */\nexport interface JwtCompactResult {\n  jwt: JwsCompact | JweCompact\n}\n\nexport function isJwsCompact(jws: Jws): jws is JwsCompact {\n  return typeof jws === 'string' && jws.split('~')[0].match(COMPACT_JWS_REGEX) !== null\n}\n\nexport function isJweCompact(jwe: Jwe): jwe is JweCompact {\n  return typeof jwe === 'string' && jwe.split('~')[0].match(COMPACT_JWE_REGEX) !== null\n}\n\nexport function isJwsJsonFlattened(jws: Jws): jws is JwsJsonFlattened {\n  return typeof jws === 'object' && 'signature' in jws && 'protected' in jws && !('ciphertext' in jws)\n}\n\nexport function isJwsJsonGeneral(jws: Jws): jws is JwsJsonGeneral {\n  return typeof jws === 'object' && 'signatures' in jws && !('ciphertext' in jws)\n}\n\nexport function isJweJsonFlattened(jwe: Jwe): jwe is JweJsonFlattened {\n  return typeof jwe === 'object' && 'signature' in jwe && 'ciphertext' in jwe && !('payload' in jwe)\n}\n\nexport function isJweJsonGeneral(jwe: Jwe): jwe is JweJsonGeneral {\n  return typeof jwe === 'object' && 'signatures' in jwe && 'ciphertext' in jwe && !('payload' in jwe)\n}\n\nexport function isJwsHeader(header: BaseJwtHeader & Record<string, any>): header is JwsHeader {\n  return header && !isJweHeader(header)\n}\n\nexport function isJweHeader(header: BaseJwtHeader & Record<string, any>): header is JweHeader {\n  return ('enc' in header && header.enc && jweEnc(header.enc)) || (header.alg && jweAlg(header.alg))\n}\n\nexport const COMPACT_JWS_REGEX = /^([a-zA-Z0-9_=-]+).([a-zA-Z0-9_=-]+)?.([a-zA-Z0-9_=-]+)?$/\nexport const COMPACT_JWE_REGEX = /^([a-zA-Z0-9_=-]+)\\.([a-zA-Z0-9_=-]+)?\\.([a-zA-Z0-9_=-]+)\\.([a-zA-Z0-9_=-]+)?\\.([a-zA-Z0-9_=-]+)?$/\n\nexport const JweAlgs = [\n  'RSA1_5',\n  'RSA-OAEP',\n  'RSA-OAEP-256',\n  'A128KW',\n  'A192KW',\n  'A256KW',\n  'dir',\n  'ECDH-ES' /*interop value*/,\n  'ECDH-ES+A128KW',\n  'ECDH-ES+A192KW',\n  'ECDH-ES+A256KW',\n  'A128GCMKW',\n  'A192GCMKW',\n  'A256GCMKW',\n  'PBES2-HS256+A128KW',\n  'PBES2-HS384+A192KW',\n  'PBES2-HS512+A256KW',\n] as const\nexport type JweAlg = (typeof JweAlgs)[number]\nexport function jweAlg(alg?: string | JweAlg): JweAlg | undefined {\n  return JweAlgs.find((supportedVal) => supportedVal === alg)\n}\n\nexport const JweEncs = ['A128CBC-HS256', 'A192CBC-HS384', 'A256CBC-HS512', 'A128GCM', 'A192GCM', 'A256GCM' /*interop value*/] as const\nexport type JweEnc = (typeof JweEncs)[number]\n\nexport function jweEnc(alg?: string | JweEnc): JweEnc | undefined {\n  return JweEncs.find((supportedVal) => supportedVal === alg)\n}\n","import { jwkTtoPublicKeyHex } from '@sphereon/ssi-sdk-ext.did-utils'\nimport {\n  ensureManagedIdentifierResult,\n  type ExternalIdentifierDidOpts,\n  type ExternalIdentifierX5cOpts,\n  type IIdentifierResolution,\n  isManagedIdentifierDidResult,\n  isManagedIdentifierX5cResult,\n  type ManagedIdentifierMethod,\n  type ManagedIdentifierResult,\n  resolveExternalJwkIdentifier,\n} from '@sphereon/ssi-sdk-ext.identifier-resolution'\nimport { keyTypeFromCryptographicSuite, signatureAlgorithmFromKeyType, verifyRawSignature } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { contextHasPlugin } from '@sphereon/ssi-sdk.agent-config'\nimport type { JoseSignatureAlgorithm, JWK } from '@sphereon/ssi-types'\nimport type { IAgentContext } from '@veramo/core'\nimport { base64ToBytes, bytesToBase64url, decodeJoseBlob, encodeJoseBlob } from '@veramo/utils'\n// @ts-ignore\nimport * as u8a from 'uint8arrays'\nimport type {\n  CreateJwsCompactArgs,\n  CreateJwsFlattenedArgs,\n  CreateJwsJsonArgs,\n  IJwsValidationResult,\n  IRequiredContext,\n  JweHeader,\n  Jws,\n  JwsCompact,\n  JwsHeader,\n  JwsIdentifierMode,\n  JwsJsonFlattened,\n  JwsJsonGeneral,\n  JwsJsonGeneralWithIdentifiers,\n  JwsJsonSignature,\n  JwsJsonSignatureWithIdentifier,\n  JwsPayload,\n  PreparedJwsObject,\n  VerifyJwsArgs,\n} from '../types/IJwtService'\nimport { isJwsCompact, isJwsJsonFlattened, isJwsJsonGeneral } from '../types/IJwtService'\n\nconst { fromString } = u8a\n\nconst payloadToBytes = (payload: string | JwsPayload | Uint8Array): Uint8Array => {\n  const isBytes = payload instanceof Uint8Array\n  const isString = typeof payload === 'string'\n  return isBytes ? payload : isString ? fromString(payload, 'base64url') : fromString(JSON.stringify(payload), 'utf-8')\n}\n\nexport const prepareJwsObject = async (args: CreateJwsJsonArgs, context: IRequiredContext): Promise<PreparedJwsObject> => {\n  const { existingSignatures, protectedHeader, unprotectedHeader, issuer, payload, mode = 'auto', clientId, clientIdScheme } = args\n\n  const { noIdentifierInHeader = false } = issuer\n  const identifier = await ensureManagedIdentifierResult(issuer, context)\n  await checkAndUpdateJwsHeader({ mode, identifier, noIdentifierInHeader, header: protectedHeader }, context)\n  const isBytes = payload instanceof Uint8Array\n  const isString = typeof payload === 'string'\n  if (!isBytes && !isString) {\n    if (issuer.noIssPayloadUpdate !== true && !payload.iss && identifier.issuer) {\n      payload.iss = identifier.issuer\n    }\n    if (clientIdScheme && !payload.client_id_scheme) {\n      payload.client_id_scheme = clientIdScheme\n    }\n    if (clientId && !payload.client_id) {\n      payload.client_id = clientId\n    }\n  }\n  const payloadBytes = payloadToBytes(payload)\n  const base64urlHeader = encodeJoseBlob(protectedHeader)\n  const base64urlPayload = bytesToBase64url(payloadBytes)\n\n  return {\n    jws: {\n      unprotectedHeader,\n      protectedHeader,\n      payload: payloadBytes,\n      existingSignatures,\n    },\n    b64: {\n      protectedHeader: base64urlHeader,\n      payload: base64urlPayload,\n    },\n    identifier,\n  }\n}\n\nexport const createJwsCompact = async (args: CreateJwsCompactArgs, context: IRequiredContext): Promise<JwsCompact> => {\n  const { protected: protectedHeader, payload, signature } = await createJwsJsonFlattened(args, context)\n  return `${protectedHeader}.${payload}.${signature}`\n}\n\nexport const createJwsJsonFlattened = async (args: CreateJwsFlattenedArgs, context: IRequiredContext): Promise<JwsJsonFlattened> => {\n  const jws = await createJwsJsonGeneral(args, context)\n  if (jws.signatures.length !== 1) {\n    return Promise.reject(Error(`JWS flattened signature can only contain 1 signature. Found ${jws.signatures.length}`))\n  }\n  return {\n    ...jws.signatures[0],\n    payload: jws.payload,\n  } satisfies JwsJsonFlattened\n}\n\nexport const createJwsJsonGeneral = async (args: CreateJwsJsonArgs, context: IRequiredContext): Promise<JwsJsonGeneral> => {\n  const { payload, protectedHeader, unprotectedHeader, existingSignatures, mode, issuer } = args\n  const { b64, identifier } = await prepareJwsObject(\n    {\n      protectedHeader,\n      unprotectedHeader,\n      payload,\n      existingSignatures,\n      issuer,\n      mode,\n    },\n    context,\n  )\n\n  const alg: string | undefined = protectedHeader.alg ?? signatureAlgorithmFromKeyType({ type: identifier.key.type })\n\n  // const algorithm = await signatureAlgorithmFromKey({ key: identifier.key })\n  const signature = await context.agent.keyManagerSign({\n    keyRef: identifier.kmsKeyRef,\n    data: `${b64.protectedHeader}.${b64.payload}`,\n    encoding: undefined,\n    algorithm: alg,\n  })\n  const jsonSignature = {\n    protected: b64.protectedHeader,\n    header: unprotectedHeader,\n    signature,\n  } satisfies JwsJsonSignature\n  return {\n    payload: b64.payload,\n    signatures: [...(existingSignatures ?? []), jsonSignature],\n  } satisfies JwsJsonGeneral\n}\n\n/**\n * Updates the JWT header to include x5c, kid, jwk objects using the supplied issuer identifier that will be used to sign. If not present will automatically make the header objects available\n * @param mode The type of header to check or include\n * @param identifier The identifier of the signer. This identifier will be used later to sign\n * @param header The JWT header\n * @param noIdentifierInHeader\n * @param context\n */\n\nexport const checkAndUpdateJwsHeader = async (\n  {\n    mode = 'auto',\n    identifier,\n    header,\n    noIdentifierInHeader = false,\n  }: {\n    mode?: JwsIdentifierMode\n    identifier: ManagedIdentifierResult\n    noIdentifierInHeader?: boolean\n    header: JwsHeader\n  },\n  context: IRequiredContext,\n) => {\n  // Make sure we have an alg in the header (https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.1)\n  header.alg = header.alg ?? signatureAlgorithmFromKeyType({ type: identifier.key.type })\n  if (isIdentifierMode(mode, identifier.method, 'did')) {\n    // kid is VM of the DID\n    // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4\n    await checkAndUpdateDidHeader({ header, identifier, noIdentifierInHeader }, context)\n  } else if (isIdentifierMode(mode, identifier.method, 'x5c')) {\n    // Include the x5c in the header. No kid\n    // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.6\n    await checkAndUpdateX5cHeader({ header, identifier, noIdentifierInHeader }, context)\n  } else if (isIdentifierMode(mode, identifier.method, 'kid', false)) {\n    await checkAndUpdateKidHeader({ header, identifier, noIdentifierInHeader }, context)\n  } else if (isIdentifierMode(mode, identifier.method, 'jwk', false)) {\n    // Include the JWK in the header as well as its kid if present\n    // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.3\n    // @see https://datatracker.ietf.org/doc/html/rfc7515#section-4.1.4\n    await checkAndUpdateJwkHeader({ header, identifier, noIdentifierInHeader }, context)\n  } else {\n    // Better safe than sorry. We could let it pass, but we want to force implementers to make a conscious choice\n    return Promise.reject(`Invalid combination of JWS creation mode ${mode} and identifier method ${identifier.method} chosen`)\n  }\n}\n\nconst checkAndUpdateX5cHeader = async (\n  {\n    header,\n    identifier,\n    noIdentifierInHeader = false,\n  }: {\n    header: JwsHeader | JweHeader\n    identifier: ManagedIdentifierResult\n    noIdentifierInHeader?: boolean\n  },\n  context: IRequiredContext,\n) => {\n  const { x5c } = header\n  if (x5c?.length) {\n    // let's resolve the provided x5c to be sure\n    const x5cIdentifier = await context.agent.identifierManagedGetByX5c({ identifier: x5c })\n    if (x5cIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n      return Promise.reject(Error(`An x5c header was present, but its issuer public key did not match the provided signing public key!`))\n    }\n  } else if (!noIdentifierInHeader) {\n    if (!isManagedIdentifierX5cResult(identifier)) {\n      return Promise.reject(Error('No x5c header in the JWT, but mode was x5c and also no x5x identifier was provided!'))\n    } else if (header.jwk || header.kid) {\n      return Promise.reject(Error('x5c mode was choosen, but jwk or kid headers were provided. These cannot be used together!'))\n    }\n    header.x5c = identifier.x5c\n  }\n}\n\nconst checkAndUpdateDidHeader = async (\n  {\n    header,\n    identifier,\n    noIdentifierInHeader = false,\n  }: {\n    header: JwsHeader | JweHeader\n    identifier: ManagedIdentifierResult\n    noIdentifierInHeader?: boolean\n  },\n  context: IRequiredContext,\n) => {\n  const { kid } = header\n  if (kid) {\n    // let's resolve the provided x5c to be sure\n    const vmIdentifier = await context.agent.identifierManagedGetByDid({ identifier: kid })\n    if (vmIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n      return Promise.reject(Error(`A kid header was present, but its value did not match the provided signing kid!`))\n    }\n  } else if (!noIdentifierInHeader) {\n    if (!isManagedIdentifierDidResult(identifier)) {\n      return Promise.reject(Error('No kid header in the JWT, but mode was did and also no DID identifier was provided!'))\n    }\n    header.kid = identifier.kid\n  }\n}\n\nconst checkAndUpdateJwkHeader = async (\n  {\n    header,\n    identifier,\n    noIdentifierInHeader = false,\n  }: {\n    header: JwsHeader | JweHeader\n    identifier: ManagedIdentifierResult\n    noIdentifierInHeader?: boolean\n  },\n  context: IRequiredContext,\n) => {\n  const { jwk } = header\n  if (jwk) {\n    // let's resolve the provided x5c to be sure\n    const jwkIdentifier = await context.agent.identifierManagedGetByJwk({ identifier: jwk as JWK })\n    if (jwkIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n      return Promise.reject(Error(`A jwk header was present, but its value did not match the provided signing jwk or kid!`))\n    }\n  } else if (!noIdentifierInHeader) {\n    // We basically accept everything for this mode, as we can always create JWKs from any key\n    if (header.x5c) {\n      return Promise.reject(Error('jwk mode was chosen, but x5c headers were provided. These cannot be used together!'))\n    }\n    header.jwk = identifier.jwk\n  }\n}\n\nconst checkAndUpdateKidHeader = async (\n  {\n    header,\n    identifier,\n    noIdentifierInHeader = false,\n  }: {\n    header: JwsHeader | JweHeader\n    identifier: ManagedIdentifierResult\n    noIdentifierInHeader?: boolean\n  },\n  context: IRequiredContext,\n) => {\n  const { kid } = header\n  if (kid) {\n    // let's resolve the provided x5c to be sure\n    const kidIdentifier = await context.agent.identifierManagedGetByKid({ identifier: kid })\n    if (kidIdentifier.kmsKeyRef !== identifier.kmsKeyRef) {\n      return Promise.reject(Error(`A kid header was present, but its value did not match the provided signing kid!`))\n    }\n  } else if (!noIdentifierInHeader) {\n    // We basically accept everything for this mode, as we can always create JWKs from any key\n    if (header.x5c) {\n      return Promise.reject(Error('kid mode was chosen, but x5c headers were provided. These cannot be used together!'))\n    }\n    header.kid = identifier.kid\n  }\n}\n\nconst isIdentifierMode = (mode: JwsIdentifierMode, identifierMethod: ManagedIdentifierMethod, checkMode: JwsIdentifierMode, loose = true) => {\n  if (loose && (checkMode === 'jwk' || checkMode === 'kid')) {\n    // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that\n    // todo: check the impact on the above expressions, as this will now always return true for the both of them\n    return true\n  }\n  if (mode === checkMode) {\n    if (checkMode !== 'auto' && mode !== identifierMethod) {\n      throw Error(`Provided mode ${mode} conflicts with identifier method ${identifierMethod}`)\n    }\n    return true\n  }\n  // we always have the kid and jwk at hand no matter the identifier method, so we are okay with that\n  return mode === 'auto' && identifierMethod === checkMode\n}\n\nexport const verifyJws = async (args: VerifyJwsArgs, context: IAgentContext<IIdentifierResolution>): Promise<IJwsValidationResult> => {\n  const jws = await toJwsJsonGeneralWithIdentifiers(args, context)\n\n  let errorMessages: string[] = []\n  let index = 0\n  await Promise.all(\n    jws.signatures.map(async (sigWithId) => {\n      // If we have a specific KMS agent plugin that can do the verification prefer that over the generic verification\n      index++\n      let valid: boolean\n      const data = fromString(`${sigWithId.protected}.${jws.payload}`, 'utf-8')\n      const jwkInfo = sigWithId.identifier.jwks[0]\n      let signatureAlg: JoseSignatureAlgorithm | undefined = undefined\n      if (sigWithId.protected.startsWith(`ey`)) {\n        const header = decodeJoseBlob(sigWithId.protected)\n        signatureAlg = header.alg as JoseSignatureAlgorithm | undefined\n      }\n\n      if (false && signatureAlg?.startsWith('PS') && contextHasPlugin(context, 'keyManagerVerify')) {\n        const publicKeyHex = jwkTtoPublicKeyHex(jwkInfo.jwk)\n        valid = await context.agent.keyManagerVerify({\n          signature: sigWithId.signature,\n          data,\n          publicKeyHex,\n          type: keyTypeFromCryptographicSuite({ ...(jwkInfo.jwk.crv && { crv: jwkInfo.jwk.crv }), alg: signatureAlg as string }),\n          // no kms arg, as the current key manager needs a bit more work\n        })\n      } else {\n        const signature = base64ToBytes(sigWithId.signature)\n        valid = await verifyRawSignature({ data, signature, key: jwkInfo.jwk, opts: { signatureAlg: signatureAlg } })\n        // }\n      }\n      if (!valid) {\n        errorMessages.push(`Signature ${index} was not valid`)\n      }\n      return {\n        sigWithId,\n        valid,\n      }\n    }),\n  )\n  const error = errorMessages.length !== 0\n  const result = {\n    name: 'jws',\n    jws,\n    error,\n    critical: error,\n    message: error ? errorMessages.join(', ') : 'Signature validated',\n    verificationTime: new Date(),\n  } satisfies IJwsValidationResult\n  if (error) {\n    console.log(`Error verifying jws signature: ` + { ...result })\n  }\n  return result\n}\n\nexport const toJwsJsonGeneral = async ({ jws }: { jws: Jws }, context: IAgentContext<any>): Promise<JwsJsonGeneral> => {\n  let payload: string\n  let signatures: JwsJsonSignature[] = []\n\n  if (isJwsCompact(jws)) {\n    const split = jws.split('.')\n    payload = split[1]\n    signatures[0] = {\n      protected: split[0],\n      signature: split[2],\n    } satisfies JwsJsonSignature\n  } else if (isJwsJsonGeneral(jws)) {\n    payload = jws.payload\n    signatures = jws.signatures\n  } else if (isJwsJsonFlattened(jws)) {\n    const { payload: _payload, ...signature } = jws\n    payload = _payload\n    signatures = [signature]\n  } else {\n    return Promise.reject(Error(`Invalid JWS supplied`))\n  }\n  return {\n    payload,\n    signatures,\n  }\n}\n\nasync function resolveExternalIdentifierFromJwsHeader(\n  protectedHeader: JwsHeader,\n  context: IAgentContext<IIdentifierResolution>,\n  args: {\n    jws: Jws\n    opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n  },\n) {\n  if (protectedHeader.x5c) {\n    const x5c = protectedHeader.x5c\n    return await context.agent.identifierExternalResolveByX5c({\n      ...args.opts?.x5c,\n      identifier: x5c,\n      verify: true,\n    })\n  } else if (protectedHeader.jwk) {\n    const jwk = protectedHeader.jwk\n    const x5c = jwk.x5c // todo resolve x5u\n    return await context.agent.identifierExternalResolveByJwk({\n      identifier: protectedHeader.jwk,\n      ...(x5c && {\n        x5c: {\n          ...args?.opts?.x5c,\n          identifier: x5c,\n        },\n      }),\n    })\n  } else if (protectedHeader.kid && protectedHeader.kid.startsWith('did:')) {\n    return await context.agent.identifierExternalResolveByDid({ ...args?.opts?.did, identifier: protectedHeader.kid })\n  } else if (protectedHeader.alg === 'none') {\n    return undefined\n  } else {\n    return Promise.reject(Error(`We can only process DIDs, X.509 certificate chains and JWKs for signature validation at present`))\n  }\n}\n\nfunction loadJWK(providedJwk: JWK | undefined, protectedHeader: JwsHeader, jws: JwsJsonGeneral): JWK | undefined {\n  if (providedJwk) {\n    return providedJwk\n  }\n  // TODO SDK-47 the identityResolver could handle this as well, but it's a really tiny function\n  if (protectedHeader?.typ === 'entity-statement+jwt') {\n    const payload = decodeJoseBlob(jws.payload)\n    if (!payload?.jwks?.keys?.[0]) {\n      throw new Error('Missing or invalid JWK in payload')\n    }\n    return payload.jwks.keys[0]\n  }\n\n  return undefined\n}\n\nexport const toJwsJsonGeneralWithIdentifiers = async (\n  args: {\n    jws: Jws\n    jwk?: JWK\n    opts?: { x5c?: Omit<ExternalIdentifierX5cOpts, 'identifier'>; did?: Omit<ExternalIdentifierDidOpts, 'identifier'> }\n  },\n  context: IAgentContext<IIdentifierResolution>,\n): Promise<JwsJsonGeneralWithIdentifiers> => {\n  const jws = await toJwsJsonGeneral(args, context)\n  const signatures = (await Promise.all(\n    jws.signatures.map(async (signature) => {\n      const protectedHeader: JwsHeader = decodeJoseBlob(signature.protected)\n      const jwk = loadJWK(args.jwk, protectedHeader, jws)\n      const identifier = jwk\n        ? await resolveExternalJwkIdentifier({ identifier: jwk, method: 'jwk' }, context)\n        : await resolveExternalIdentifierFromJwsHeader(protectedHeader, context, args)\n      if (identifier !== undefined) {\n        return { ...signature, identifier }\n      }\n      return undefined\n    }),\n  )) as Array<JwsJsonSignatureWithIdentifier>\n\n  return { payload: jws.payload, signatures }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA,gCAAAA,SAAA;AAAA,IAAAA,QAAA;AAAA,MACE,aAAe;AAAA,QACb,YAAc;AAAA,UACZ,SAAW;AAAA,YACT,sBAAwB;AAAA,cACtB,MAAQ;AAAA,YACV;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,aAAe,CAAC;AAAA,sBAClB;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,2BAA6B;AAAA,0BAC3B,MAAQ;AAAA,wBACV;AAAA,wBACA,iBAAmB;AAAA,0BACjB,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,SAAW;AAAA,0BACT,MAAQ;AAAA,wBACV;AAAA,wBACA,4BAA8B;AAAA,0BAC5B,MAAQ;AAAA,wBACV;AAAA,wBACA,8BAAgC;AAAA,0BAC9B,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,gBAAkB;AAAA,kBAChB,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,KAAO;AAAA,cACL,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,OAAS;AAAA,sBACP;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,sBACA;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,oBACR,YAAc;AAAA,sBACZ,GAAK;AAAA,wBACH,MAAQ;AAAA,sBACV;AAAA,sBACA,GAAK;AAAA,wBACH,MAAQ;AAAA,sBACV;AAAA,sBACA,GAAK;AAAA,wBACH,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,sBAAwB;AAAA,kBAC1B;AAAA,gBACF;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,kBACA,aAAe;AAAA,gBACjB;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,YAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,iBAAmB;AAAA,cACjB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,8BAAgC;AAAA,cAC9B,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,yBAA2B;AAAA,cACzB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,uBAAyB;AAAA,cACvB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,SAAW;AAAA,sBACT,MAAQ;AAAA,oBACV;AAAA,oBACA,4BAA8B;AAAA,sBAC5B,MAAQ;AAAA,oBACV;AAAA,oBACA,8BAAgC;AAAA,sBAC9B,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,gBAAkB;AAAA,cAChB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,kBACA,aAAe;AAAA,gBACjB;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,kBACA,aAAe;AAAA,gBACjB;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,cACxB,aAAe;AAAA,YACjB;AAAA,YACA,MAAQ;AAAA,cACN,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,MAAQ;AAAA,kBACN,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,aAAe;AAAA,gBACjB;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,cACxB,aAAe;AAAA,YACjB;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,UAAY;AAAA,cACV,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,iBAAmB;AAAA,kBACjB,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,aAAe;AAAA,gBACjB;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,cACxB,aAAe;AAAA,YACjB;AAAA,YACA,kBAAoB;AAAA,cAClB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,sBAAsB;AAAA,cACpB,MAAQ;AAAA,YACV;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,cAAgB;AAAA,cACd,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB,CAAC;AAAA,cACzB,aAAe;AAAA,YACjB;AAAA,YACA,cAAgB;AAAA,cACd,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,yBAA2B;AAAA,cACzB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,uBAAyB;AAAA,cACvB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,WAAa;AAAA,cACX,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,gBACtB,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,iBAAmB;AAAA,cACjB,MAAQ;AAAA,YACV;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,kBAAoB;AAAA,cAClB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,YACV;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,YACV;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,YACV;AAAA,YACA,mDAAqD;AAAA,cACnD,MAAQ;AAAA,YACV;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,sBAAwB;AAAA,cACxB,YAAc;AAAA,gBACZ,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,aAAe,CAAC;AAAA,sBAClB;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,2BAA6B;AAAA,0BAC3B,MAAQ;AAAA,wBACV;AAAA,wBACA,iBAAmB;AAAA,0BACjB,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,wBACA,SAAW;AAAA,0BACT,MAAQ;AAAA,wBACV;AAAA,wBACA,4BAA8B;AAAA,0BAC5B,MAAQ;AAAA,wBACV;AAAA,wBACA,8BAAgC;AAAA,0BAC9B,MAAQ;AAAA,wBACV;AAAA,wBACA,eAAiB;AAAA,0BACf,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,sBAAwB;AAAA,0BACtB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,UAAY;AAAA,0BACV,MAAQ;AAAA,wBACV;AAAA,wBACA,gBAAkB;AAAA,0BAChB,OAAS;AAAA,4BACP;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,8BACR,OAAS;AAAA,4BACX;AAAA,4BACA;AAAA,8BACE,MAAQ;AAAA,4BACV;AAAA,0BACF;AAAA,wBACF;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,gBAAkB;AAAA,kBAChB,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,kBAAoB;AAAA,cAClB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,kBAAoB;AAAA,cAClB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,gBAAkB;AAAA,cAChB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,+BAAiC;AAAA,cAC/B,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,aAAe,CAAC;AAAA,kBAClB;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,2BAA6B;AAAA,sBAC3B,MAAQ;AAAA,oBACV;AAAA,oBACA,iBAAmB;AAAA,sBACjB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,SAAW;AAAA,sBACT,MAAQ;AAAA,oBACV;AAAA,oBACA,4BAA8B;AAAA,sBAC5B,MAAQ;AAAA,oBACV;AAAA,oBACA,8BAAgC;AAAA,sBAC9B,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,cAAgB;AAAA,sBACd,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,aAAe;AAAA,0BACb,MAAQ;AAAA,wBACV;AAAA,wBACA,SAAW;AAAA,0BACT,MAAQ;AAAA,wBACV;AAAA,wBACA,qBAAuB;AAAA,0BACrB,MAAQ;AAAA,wBACV;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,oBAAsB;AAAA,0BACpB,MAAQ;AAAA,wBACV;AAAA,wBACA,cAAgB;AAAA,0BACd,MAAQ;AAAA,0BACR,OAAS,CAAC;AAAA,wBACZ;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,gBAAkB;AAAA,0BAChB,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,WAAa;AAAA,0BACX,MAAQ;AAAA,wBACV;AAAA,wBACA,YAAc;AAAA,0BACZ,MAAQ;AAAA,wBACV;AAAA,wBACA,kBAAoB;AAAA,0BAClB,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,sBAAwB;AAAA,sBACxB,YAAc;AAAA,wBACZ,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,wBACA,QAAU;AAAA,0BACR,MAAQ;AAAA,wBACV;AAAA,wBACA,MAAQ;AAAA,0BACN,MAAQ;AAAA,0BACR,OAAS;AAAA,4BACP,MAAQ;AAAA,0BACV;AAAA,wBACF;AAAA,wBACA,SAAW;AAAA,0BACT,MAAQ;AAAA,wBACV;AAAA,wBACA,KAAO;AAAA,0BACL,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,sBACA,UAAY;AAAA,wBACV;AAAA,wBACA;AAAA,wBACA;AAAA,sBACF;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,gBAAkB;AAAA,kBAChB,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,QAAU;AAAA,oBACZ;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,KAAO,CAAC;AAAA,gBACR,KAAO,CAAC;AAAA,gBACR,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,SAAW;AAAA,cACT,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,cACxB,aAAe;AAAA,YACjB;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,aAAe;AAAA,YACjB;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,YACV;AAAA,YACA,oEAAoF;AAAA,cAClF,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,iBAAmB;AAAA,cACjB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,sBAAwB;AAAA,cACxB,YAAc;AAAA,gBACZ,gBAAkB;AAAA,kBAChB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,OAAS;AAAA,sBACP;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,sBACA;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,OAAS;AAAA,sBACP;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,sBACA;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,OAAS;AAAA,sBACP;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,sBACA;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,sBAAwB;AAAA,kBACtB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,OAAS;AAAA,sBACP;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,sBACA;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,sBAAwB;AAAA,kBACtB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,OAAS;AAAA,sBACP;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,sBACA;AAAA,wBACE,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,YAAY;AAAA,kBACV,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,YAAc;AAAA,kBACZ,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,kBACA,YAAc;AAAA,gBAChB;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,oBAAsB;AAAA,cACpB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,gBACA,qBAAuB;AAAA,kBACrB,MAAQ;AAAA,gBACV;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,4BAA8B;AAAA,kBAC5B,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,qBAAuB;AAAA,kBACrB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,cACxB,aAAe;AAAA,YACjB;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,gBACA,GAAK;AAAA,kBACH,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,4BAA8B;AAAA,cAC5B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,SAAW;AAAA,cACT,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,iBAAmB;AAAA,kBACjB,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,iBAAmB;AAAA,cACjB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,iBAAmB;AAAA,cACjB,MAAQ;AAAA,YACV;AAAA,YACA,+HAAmI;AAAA,cACjI,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,gBAAkB;AAAA,kBAChB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,sBAAwB;AAAA,kBACtB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,sBAAwB;AAAA,kBACtB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,2CAA6C;AAAA,cAC3C,MAAQ;AAAA,YACV;AAAA,YACA,6HAAuI;AAAA,cACrI,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,YAAY;AAAA,kBACV,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,oBACX;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,uBAAyB;AAAA,kBACvB,MAAQ;AAAA,gBACV;AAAA,gBACA,qBAAuB;AAAA,kBACrB,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,uBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,qBAAuB;AAAA,cACrB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,gBACV;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,sBAAwB;AAAA,oBACtB,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,sBAAwB;AAAA,cACtB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,eAAiB;AAAA,kBACf,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,aAAe;AAAA,kBACb,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,YAAc;AAAA,oBACZ,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,kBACF;AAAA,kBACA,sBAAwB;AAAA,gBAC1B;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,iBAAmB;AAAA,cACjB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,aAAe,CAAC;AAAA,gBAChB,WAAa;AAAA,kBACX,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,cAAgB,CAAC;AAAA,gBACjB,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,YAAc;AAAA,oBACZ,IAAM;AAAA,sBACJ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,sBAAwB;AAAA,gBAC1B;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,YAAc;AAAA,oBACZ,IAAM;AAAA,sBACJ,MAAQ;AAAA,oBACV;AAAA,oBACA,yBAA2B;AAAA,sBACzB,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,kBACF;AAAA,kBACA,sBAAwB;AAAA,gBAC1B;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,IAAM;AAAA,kBACJ,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,yBAAyB;AAAA,cACvB,MAAQ;AAAA,cACR,sBAAwB;AAAA,gBACtB,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,wBAA0B;AAAA,cACxB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,OAAS;AAAA,kBACP,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,+BAAiC;AAAA,cAC/B,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,aAAe;AAAA,YACjB;AAAA,YACA,6BAA+B;AAAA,cAC7B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,gBACX;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS,CAAC;AAAA,gBACZ;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,YACV;AAAA,YACA,sCAAsC;AAAA,cACpC,MAAQ;AAAA,cACR,sBAAwB;AAAA,gBACtB,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,cAAgB;AAAA,cACd,MAAQ;AAAA,YACV;AAAA,YACA,YAAc;AAAA,cACZ,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,OAAS;AAAA,oBACP;AAAA,sBACE,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA;AAAA,sBACE,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB,CAAC;AAAA,YAC3B;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,QAAU;AAAA,cACR,MAAQ;AAAA,cACR,MAAQ;AAAA,gBACN;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,mBAAqB;AAAA,cACnB,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,kBACR,YAAc;AAAA,oBACZ,SAAW;AAAA,sBACT,MAAQ;AAAA,oBACV;AAAA,oBACA,iBAAmB;AAAA,sBACjB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,kBACF;AAAA,kBACA,sBAAwB;AAAA,gBAC1B;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,aAAe;AAAA,cACb,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,mBAAqB;AAAA,kBACnB,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,yBAA2B;AAAA,cACzB,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,aAAe,CAAC;AAAA,kBAClB;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,2BAA6B;AAAA,sBAC3B,MAAQ;AAAA,oBACV;AAAA,oBACA,iBAAmB;AAAA,sBACjB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,eAAiB;AAAA,sBACf,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,OAAS;AAAA,wBACP;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,0BACR,OAAS;AAAA,wBACX;AAAA,wBACA;AAAA,0BACE,MAAQ;AAAA,wBACV;AAAA,sBACF;AAAA,oBACF;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,YACA,eAAiB;AAAA,cACf,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,YAAc;AAAA,oBACZ,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,sBAAwB;AAAA,gBAC1B;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,KAAO;AAAA,cACL,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,YACF;AAAA,YACA,gDAAkD;AAAA,cAChD,MAAQ;AAAA,YACV;AAAA,YACA,uQAA+R;AAAA,cAC7R,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,0BAA4B;AAAA,kBAC1B,MAAQ;AAAA,gBACV;AAAA,gBACA,wBAA0B;AAAA,kBACxB,MAAQ;AAAA,gBACV;AAAA,gBACA,6BAA+B;AAAA,kBAC7B,MAAQ;AAAA,gBACV;AAAA,gBACA,uBAAyB;AAAA,kBACvB,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,gBACA,uBAAyB;AAAA,kBACvB,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,YAAc;AAAA,oBACZ,UAAY;AAAA,sBACV,MAAQ;AAAA,oBACV;AAAA,oBACA,gBAAkB;AAAA,sBAChB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,kBACF;AAAA,kBACA,sBAAwB;AAAA,gBAC1B;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,gBACX;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,kBACR,QAAU;AAAA,gBACZ;AAAA,gBACA,cAAgB;AAAA,kBACd,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,gDAAkD;AAAA,cAChD,MAAQ;AAAA,YACV;AAAA,YACA,gMAAgN;AAAA,cAC9M,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,QAAU;AAAA,kBACR,MAAQ;AAAA,kBACR,OAAS;AAAA,gBACX;AAAA,gBACA,8BAAgC;AAAA,kBAC9B,MAAQ;AAAA,gBACV;AAAA,gBACA,gBAAkB;AAAA,kBAChB,MAAQ;AAAA,gBACV;AAAA,gBACA,iBAAmB;AAAA,kBACjB,MAAQ;AAAA,gBACV;AAAA,gBACA,uBAAyB;AAAA,kBACvB,MAAQ;AAAA,gBACV;AAAA,gBACA,oBAAsB;AAAA,kBACpB,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,sBAAwB;AAAA,cACtB,MAAQ;AAAA,cACR,sBAAwB;AAAA,cACxB,YAAc;AAAA,gBACZ,KAAO;AAAA,kBACL,MAAQ;AAAA,gBACV;AAAA,gBACA,MAAQ;AAAA,kBACN,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,OAAS;AAAA,kBACP,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,UAAY;AAAA,kBACV,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,SAAW;AAAA,kBACT,MAAQ;AAAA,kBACR,aAAe;AAAA,gBACjB;AAAA,gBACA,kBAAoB;AAAA,kBAClB,MAAQ;AAAA,kBACR,QAAU;AAAA,kBACV,aAAe;AAAA,gBACjB;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,YACA,+BAAiC;AAAA,cAC/B,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,SAAW;AAAA,kBACT,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,kBACR,OAAS;AAAA,oBACP,MAAQ;AAAA,kBACV;AAAA,gBACF;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,gCAAkC;AAAA,cAChC,MAAQ;AAAA,cACR,YAAc;AAAA,gBACZ,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,QAAU;AAAA,kBACR,MAAQ;AAAA,gBACV;AAAA,gBACA,WAAa;AAAA,kBACX,MAAQ;AAAA,gBACV;AAAA,gBACA,YAAc;AAAA,kBACZ,MAAQ;AAAA,gBACV;AAAA,cACF;AAAA,cACA,UAAY;AAAA,gBACV;AAAA,gBACA;AAAA,gBACA;AAAA,cACF;AAAA,cACA,sBAAwB;AAAA,YAC1B;AAAA,YACA,0BAA4B;AAAA,cAC1B,OAAS;AAAA,gBACP;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,aAAe;AAAA,sBACb,MAAQ;AAAA,oBACV;AAAA,oBACA,SAAW;AAAA,sBACT,MAAQ;AAAA,oBACV;AAAA,oBACA,qBAAuB;AAAA,sBACrB,MAAQ;AAAA,oBACV;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,oBAAsB;AAAA,sBACpB,MAAQ;AAAA,oBACV;AAAA,oBACA,cAAgB;AAAA,sBACd,MAAQ;AAAA,sBACR,OAAS,CAAC;AAAA,oBACZ;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,gBAAkB;AAAA,sBAChB,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,WAAa;AAAA,sBACX,MAAQ;AAAA,oBACV;AAAA,oBACA,YAAc;AAAA,sBACZ,MAAQ;AAAA,oBACV;AAAA,oBACA,kBAAoB;AAAA,sBAClB,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,gBACA;AAAA,kBACE,MAAQ;AAAA,kBACR,sBAAwB;AAAA,kBACxB,YAAc;AAAA,oBACZ,QAAU;AAAA,sBACR,MAAQ;AAAA,oBACV;AAAA,oBACA,MAAQ;AAAA,sBACN,MAAQ;AAAA,sBACR,OAAS;AAAA,wBACP,MAAQ;AAAA,sBACV;AAAA,oBACF;AAAA,oBACA,SAAW;AAAA,sBACT,MAAQ;AAAA,oBACV;AAAA,oBACA,KAAO;AAAA,sBACL,MAAQ;AAAA,oBACV;AAAA,kBACF;AAAA,kBACA,UAAY;AAAA,oBACV;AAAA,oBACA;AAAA,oBACA;AAAA,kBACF;AAAA,gBACF;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,UACA,SAAW;AAAA,YACT,8BAAgC;AAAA,cAC9B,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,oCAAsC;AAAA,cACpC,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,kCAAoC;AAAA,cAClC,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,yBAA2B;AAAA,cACzB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,yBAA2B;AAAA,cACzB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,eAAiB;AAAA,cACf,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,YACA,uBAAyB;AAAA,cACvB,aAAe;AAAA,cACf,WAAa;AAAA,gBACX,MAAQ;AAAA,cACV;AAAA,cACA,YAAc;AAAA,gBACZ,MAAQ;AAAA,cACV;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA;AAAA;;;ACp0LA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAC,oBAAwB;;;ACAxB,uBAAwB;AAGxB,kBAA0B;AAG1B,IAAAC,OAAqB;;;ACNrB,oBAAoE;AACpE,mBAAiE;AACjE,WAAsB;AAMtB,UAAqB;;;ACMd,IAAMC,2BAA0C;EACrD;EACA;EACA;EACA;EACA;EACA;EACA;;AAiPK,SAASC,aAAaC,KAAQ;AACnC,SAAO,OAAOA,QAAQ,YAAYA,IAAIC,MAAM,GAAA,EAAK,CAAA,EAAGC,MAAMC,iBAAAA,MAAuB;AACnF;AAFgBJ;AAIT,SAASK,aAAaC,KAAQ;AACnC,SAAO,OAAOA,QAAQ,YAAYA,IAAIJ,MAAM,GAAA,EAAK,CAAA,EAAGC,MAAMI,iBAAAA,MAAuB;AACnF;AAFgBF;AAIT,SAASG,mBAAmBP,KAAQ;AACzC,SAAO,OAAOA,QAAQ,YAAY,eAAeA,OAAO,eAAeA,OAAO,EAAE,gBAAgBA;AAClG;AAFgBO;AAIT,SAASC,iBAAiBR,KAAQ;AACvC,SAAO,OAAOA,QAAQ,YAAY,gBAAgBA,OAAO,EAAE,gBAAgBA;AAC7E;AAFgBQ;AAIT,SAASC,mBAAmBJ,KAAQ;AACzC,SAAO,OAAOA,QAAQ,YAAY,eAAeA,OAAO,gBAAgBA,OAAO,EAAE,aAAaA;AAChG;AAFgBI;AAIT,SAASC,iBAAiBL,KAAQ;AACvC,SAAO,OAAOA,QAAQ,YAAY,gBAAgBA,OAAO,gBAAgBA,OAAO,EAAE,aAAaA;AACjG;AAFgBK;AAIT,SAASC,YAAYC,QAA2C;AACrE,SAAOA,UAAU,CAACC,YAAYD,MAAAA;AAChC;AAFgBD;AAIT,SAASE,YAAYD,QAA2C;AACrE,SAAQ,SAASA,UAAUA,OAAOE,OAAOC,OAAOH,OAAOE,GAAG,KAAOF,OAAOI,OAAOC,OAAOL,OAAOI,GAAG;AAClG;AAFgBH;AAIT,IAAMV,oBAAoB;AAC1B,IAAMG,oBAAoB;AAE1B,IAAMY,UAAU;EACrB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGK,SAASD,OAAOD,KAAqB;AAC1C,SAAOE,QAAQC,KAAK,CAACC,iBAAiBA,iBAAiBJ,GAAAA;AACzD;AAFgBC;AAIT,IAAMI,UAAU;EAAC;EAAiB;EAAiB;EAAiB;EAAW;EAAW;;;AAG1F,SAASN,OAAOC,KAAqB;AAC1C,SAAOK,QAAQF,KAAK,CAACC,iBAAiBA,iBAAiBJ,GAAAA;AACzD;AAFgBD;;;AD3ThB,IAAM,EAAEO,YAAYC,UAAUC,OAAM,IAAKC;AA4HlC,IAAMC,sBAAN,MAAMA;EArIb,OAqIaA;;;EACHC;EACAC;EACAC;EACAC;EACAC;EACAC;EACAC;EAER,YAAYC,MAQT;AACD,QAAIA,MAAMC,KAAK;AACb,WAAKR,OAAOO,KAAKC;IACnB;AACA,QAAID,MAAME,KAAK;AACb,WAAKR,OAAOM,KAAKE;IACnB;AACA,SAAKP,uBAAuBK,KAAKG;AACjC,SAAKP,eAAeI,KAAKI;AACzB,SAAKP,iBAAiBG,KAAKH;AAC3B,SAAKC,SAASE,KAAKF;AACnB,SAAKC,WAAWC,KAAKD;EACvB;EAEA,IAAIG,MAAc;AAChB,QAAI,CAAC,KAAKR,MAAM;AACd,YAAMW,MAAM,aAAa;IAC3B;AACA,WAAO,KAAKX;EACd;EAEA,IAAIQ,IAAII,OAAwB;AAE9B,QAAI,CAACC,QAAQC,SAASF,KAAAA,GAAQ;AAC5B,YAAMD,MAAM,yBAAyBC,KAAAA,EAAO;IAC9C;AACA,SAAKZ,OAAOY;EACd;EAEA,IAAIL,MAAc;AAChB,QAAI,CAAC,KAAKR,MAAM;AACd,YAAMY,MAAM,aAAa;IAC3B;AACA,WAAO,KAAKZ;EACd;EAEA,IAAIQ,IAAIK,OAAwB;AAE9B,QAAI,CAACG,QAAQD,SAASF,KAAAA,GAAQ;AAC5B,YAAMD,MAAM,yBAAyBC,KAAAA,EAAO;IAC9C;AACA,SAAKb,OAAOa;EACd;EAEA,MAAMI,kBAAkBC,SAAqBC,oBAAwCC,KAA+C;AAClI,UAAMC,kBAAkB;MACtB,GAAGF;MACHX,KAAKW,mBAAmBX,OAAO,KAAKR;MACpCS,KAAKU,mBAAmBV,OAAO,KAAKR;IACtC;AACA,QAAI,CAACoB,gBAAgBb,OAAO,CAACa,gBAAgBZ,KAAK;AAChD,aAAOa,QAAQC,OAAOX,MAAM,2DAA2D,CAAA;IACzF;AACA,SAAKH,MAAMY,gBAAgBZ;AAC3B,SAAKD,MAAMa,gBAAgBb;AAC3B,QAAIU,QAAQM,KAAK;AACf,WAAKpB,iBAAiBc,QAAQM;IAChC;AACA,QAAIN,QAAQO,KAAK;AACf,WAAKpB,SAASa,QAAQO;IACxB;AACA,QAAIP,QAAQQ,KAAK;AACf,WAAKpB,WAAWY,QAAQQ;IAC1B;AACA,UAAMC,UAAU,IAASC,gBAAWV,OAAAA,EAASW,mBAAmB;MAC9D,GAAGR;MACHb,KAAK,KAAKA;MACVC,KAAK,KAAKA;IACZ,CAAA;AACA,QAAI,KAAKT,KAAM8B,WAAW,MAAA,GAAS;AACjC,UAAI,CAAC,KAAK5B,sBAAsB;AAC9B,eAAOoB,QAAQC,OAAOX,MAAM,qCAAqC,CAAA;MACnE;AACAe,cAAQI,2BAA2B,KAAK7B,oBAAoB;IAC9D;AACA,QAAI,KAAKE,mBAAmB4B,QAAW;AACrCL,cAAQM,kBAAkB,KAAK7B,cAAc;IAC/C;AAEA,QAAI,KAAKC,QAAQ;AACfsB,cAAQO,UAAU,KAAK7B,MAAM;IAC/B;AACA,QAAI,KAAKC,UAAU;AACjBqB,cAAQQ,YAAY,KAAK7B,QAAQ;IACnC;AACA,WAAO,MAAMqB,QAAQA,QAAQ,KAAKxB,YAAY;EAChD;EAEA,aAAoBiC,kBAAkBC,KAAa1B,KAA2B2B,SAA6B;AACzG,WAAO,MAAWC,gBAAWF,KAAK1B,KAAK2B,OAAAA;EACzC;EAEA,MAAMX,QAAQT,SAAqBC,oBAAwCC,KAAyD;AAClI,UAAMiB,MAAM,MAAM,KAAKpB,kBAAkBuB,KAAKC,MAAMC,SAASxB,OAAAA,CAAAA,GAAWC,oBAAoBC,GAAAA;AAC5F,UAAM,CAACC,iBAAiBsB,cAAcC,OAAOC,YAAYC,MAAAA,IAAUT,IAAIU,MAAM,GAAA;AAE7EC,YAAQC,IAAI,4BAA4B;AAExC,WAAO;MACL5B;MACA6B,SAAKC,4BAAcL,MAAAA;MACnBM,gBAAYD,4BAAcN,UAAAA;MAC1BQ,QAAIF,4BAAcP,KAAAA;MAClBU,YAAY;QACV;;;UAGE,GAAIX,gBAAgB;YAAEY,eAAeZ;UAAa;QACpD;;IAEJ;EACF;AAGF;;;ADtQA,IAAMa,SAASC,yBAAQC,QAAQC,IAAI,sBAAA;AAKnC,IAAM,EAAEC,YAAAA,YAAU,IAAKC;AA8BhB,IAAMC,aAAN,MAAMA;EArCb,OAqCaA;;;EACFC,SAASA,OAAOC;EAChBC,UAAuB;IAC9BC,eAAe,KAAKA,cAAcC,KAAK,IAAI;IAC3CC,kCAAkC,KAAKA,iCAAiCD,KAAK,IAAI;IACjFE,oCAAoC,KAAKA,mCAAmCF,KAAK,IAAI;IACrFG,8BAA8B,KAAKA,6BAA6BH,KAAK,IAAI;IACzEI,uBAAuB,KAAKA,sBAAsBJ,KAAK,IAAI;IAC3DK,yBAAyB,KAAKA,wBAAwBL,KAAK,IAAI;IAC/DM,yBAAyB,KAAKA,wBAAwBN,KAAK,IAAI;EACjE;EAEA,MAAcD,cAAcQ,MAAyBC,SAAuD;AAC1G,WAAO,MAAMC,iBAAiBF,MAAMC,OAAAA;EACtC;EAEA,MAAcP,iCAAiCM,MAAyBC,SAAoD;AAC1H,WAAO,MAAME,qBAAqBH,MAAMC,OAAAA;EAC1C;EAEA,MAAcN,mCAAmCK,MAA8BC,SAAsD;AACnI,WAAO,MAAMG,uBAAuBJ,MAAMC,OAAAA;EAC5C;EAEA,MAAcL,6BAA6BI,MAA4BC,SAAsD;AAE3H,WAAO;MAAEI,KAAK,MAAMC,iBAAiBN,MAAMC,OAAAA;IAAS;EACtD;EAEA,MAAcJ,sBAAsBG,MAAqBC,SAA0D;AACjH,WAAO,MAAMM,UAAUP,MAAMC,OAAAA;EAC/B;EAEA,MAAcH,wBAAwBE,MAAgCC,SAAsD;AAC1H,UAAM,EAAEO,SAASC,kBAAkB;MAAEC,KAAKV,KAAKU;MAAKC,KAAKX,KAAKW;IAAI,GAAGC,cAAcC,QAAQC,gBAAgBC,SAAQ,IAAKf;AAExH,QAAI;AACFlB,aAAOkC,MAAM,gBAAgBC,KAAKC,UAAUlB,MAAM,MAAM,CAAA,CAAA,EAAI;AAE5D,YAAMU,MAAMS,OAAOnB,KAAKU,GAAG,KAAKS,OAAOV,gBAAgBC,GAAG,KAAK;AAC/D,YAAMC,MAAMS,OAAOpB,KAAKW,GAAG,KAAKS,OAAOX,gBAAgBE,GAAG,KAAK;AAC/D,YAAMU,UACJT,aAAaU,KAAKC,WAAW,IACzB;QAACX,aAAaU,KAAK,CAAA;UACnBV,aAAaU,KAAKE,OAAO,CAACC,QAASA,IAAIC,QAAQD,IAAIC,QAAQD,IAAIA,IAAIC,OAAOD,IAAIC,QAAQD,IAAIE,kBAAmBF,IAAIA,IAAIG,QAAQ,KAAA;AACnI,UAAIP,QAAQE,WAAW,GAAG;AACxB,eAAOM,QAAQC,OAAOC,MAAM,yDAAyD,CAAA;MACvF;AACA,YAAMC,UAAUX,QAAQ,CAAA;AACxB,UAAIA,QAAQE,SAAS,GAAG;AACtBU,kBAAUC,QAAQ,6FAA6Fb,OAAAA;MACjH;AACA,UAAIW,QAAQP,IAAIU,KAAKC,WAAW,IAAA,MAAU,QAAQ,CAAC1B,IAAI0B,WAAW,MAAA,GAAS;AACzE,eAAOP,QAAQC,OAAOC,MAAM,+DAA+DC,QAAQP,IAAIU,GAAG,gBAAgBzB,GAAAA,EAAK,CAAA;MACjI;AACA,YAAM2B,SAAS5B,gBAAgB6B,OAAOtC,KAAKsC;AAC3C,YAAMA,MAAMD,SAASnD,YAAWmD,QAAQ,WAAA,IAAeE;AACvD,YAAMC,SAAS/B,gBAAgBgC,OAAOzC,KAAKyC;AAC3C,YAAMA,MAAMD,SAAStD,YAAWsD,QAAQ,WAAA,IAAeD;AAEvD,YAAMG,SAAS,UAAMC,uBAAUX,QAAQP,GAAG;AAC1C,YAAMmB,YAAY,IAAIC,oBAAoB;QACxClC;QACAD;QACAoC,qBAAqB;UAAER;UAAKG;QAAI;QAChCM,KAAKL;QACL7B;QACAC;QACAC;MACF,CAAA;AAEA,YAAMiC,MAAM,MAAMJ,UAAUK,kBAAkBzC,SAAS,CAAC,CAAA;AACxD,aAAO;QAAEH,KAAK2C;MAAI;IACpB,SAASE,OAAY;AACnBC,cAAQD,MAAM,yBAAyBA,MAAME,OAAO,IAAIF,KAAAA;AACxD,YAAMA;IACR;EACF;EAEA,MAAcnD,wBAAwBC,MAAgCC,SAAsD;AAC1H,WAAO;MAAEI,KAAK;IAAQ;EACxB;AACF;;;AGvHA,yBAAmC;AACnC,IAAAgD,sBAUO;AACP,IAAAA,sBAAiG;AACjG,qBAAiC;AAGjC,IAAAC,gBAAgF;AAEhF,IAAAC,OAAqB;AAuBrB,IAAM,EAAEC,YAAAA,YAAU,IAAKC;AAEvB,IAAMC,iBAAiB,wBAACC,YAAAA;AACtB,QAAMC,UAAUD,mBAAmBE;AACnC,QAAMC,WAAW,OAAOH,YAAY;AACpC,SAAOC,UAAUD,UAAUG,WAAWN,YAAWG,SAAS,WAAA,IAAeH,YAAWO,KAAKC,UAAUL,OAAAA,GAAU,OAAA;AAC/G,GAJuB;AAMhB,IAAMM,mBAAmB,8BAAOC,MAAyBC,YAAAA;AAC9D,QAAM,EAAEC,oBAAoBC,iBAAiBC,mBAAmBC,QAAQZ,SAASa,OAAO,QAAQC,UAAUC,eAAc,IAAKR;AAE7H,QAAM,EAAES,uBAAuB,MAAK,IAAKJ;AACzC,QAAMK,aAAa,UAAMC,mDAA8BN,QAAQJ,OAAAA;AAC/D,QAAMW,wBAAwB;IAAEN;IAAMI;IAAYD;IAAsBI,QAAQV;EAAgB,GAAGF,OAAAA;AACnG,QAAMP,UAAUD,mBAAmBE;AACnC,QAAMC,WAAW,OAAOH,YAAY;AACpC,MAAI,CAACC,WAAW,CAACE,UAAU;AACzB,QAAIS,OAAOS,uBAAuB,QAAQ,CAACrB,QAAQsB,OAAOL,WAAWL,QAAQ;AAC3EZ,cAAQsB,MAAML,WAAWL;IAC3B;AACA,QAAIG,kBAAkB,CAACf,QAAQuB,kBAAkB;AAC/CvB,cAAQuB,mBAAmBR;IAC7B;AACA,QAAID,YAAY,CAACd,QAAQwB,WAAW;AAClCxB,cAAQwB,YAAYV;IACtB;EACF;AACA,QAAMW,eAAe1B,eAAeC,OAAAA;AACpC,QAAM0B,sBAAkBC,8BAAejB,eAAAA;AACvC,QAAMkB,uBAAmBC,gCAAiBJ,YAAAA;AAE1C,SAAO;IACLK,KAAK;MACHnB;MACAD;MACAV,SAASyB;MACThB;IACF;IACAsB,KAAK;MACHrB,iBAAiBgB;MACjB1B,SAAS4B;IACX;IACAX;EACF;AACF,GApCgC;AAsCzB,IAAMe,mBAAmB,8BAAOzB,MAA4BC,YAAAA;AACjE,QAAM,EAAEyB,WAAWvB,iBAAiBV,SAASkC,UAAS,IAAK,MAAMC,uBAAuB5B,MAAMC,OAAAA;AAC9F,SAAO,GAAGE,eAAAA,IAAmBV,OAAAA,IAAWkC,SAAAA;AAC1C,GAHgC;AAKzB,IAAMC,yBAAyB,8BAAO5B,MAA8BC,YAAAA;AACzE,QAAMsB,MAAM,MAAMM,qBAAqB7B,MAAMC,OAAAA;AAC7C,MAAIsB,IAAIO,WAAWC,WAAW,GAAG;AAC/B,WAAOC,QAAQC,OAAOC,MAAM,+DAA+DX,IAAIO,WAAWC,MAAM,EAAE,CAAA;EACpH;AACA,SAAO;IACL,GAAGR,IAAIO,WAAW,CAAA;IAClBrC,SAAS8B,IAAI9B;EACf;AACF,GATsC;AAW/B,IAAMoC,uBAAuB,8BAAO7B,MAAyBC,YAAAA;AAClE,QAAM,EAAER,SAASU,iBAAiBC,mBAAmBF,oBAAoBI,MAAMD,OAAM,IAAKL;AAC1F,QAAM,EAAEwB,KAAKd,WAAU,IAAK,MAAMX,iBAChC;IACEI;IACAC;IACAX;IACAS;IACAG;IACAC;EACF,GACAL,OAAAA;AAGF,QAAMkC,MAA0BhC,gBAAgBgC,WAAOC,mDAA8B;IAAEC,MAAM3B,WAAW4B,IAAID;EAAK,CAAA;AAGjH,QAAMV,YAAY,MAAM1B,QAAQsC,MAAMC,eAAe;IACnDC,QAAQ/B,WAAWgC;IACnBC,MAAM,GAAGnB,IAAIrB,eAAe,IAAIqB,IAAI/B,OAAO;IAC3CmD,UAAUC;IACVC,WAAWX;EACb,CAAA;AACA,QAAMY,gBAAgB;IACpBrB,WAAWF,IAAIrB;IACfU,QAAQT;IACRuB;EACF;AACA,SAAO;IACLlC,SAAS+B,IAAI/B;IACbqC,YAAY;SAAK5B,sBAAsB,CAAA;MAAK6C;;EAC9C;AACF,GAhCoC;AA2C7B,IAAMnC,0BAA0B,8BACrC,EACEN,OAAO,QACPI,YACAG,QACAJ,uBAAuB,MAAK,GAO9BR,YAAAA;AAGAY,SAAOsB,MAAMtB,OAAOsB,WAAOC,mDAA8B;IAAEC,MAAM3B,WAAW4B,IAAID;EAAK,CAAA;AACrF,MAAIW,iBAAiB1C,MAAMI,WAAWuC,QAAQ,KAAA,GAAQ;AAGpD,UAAMC,wBAAwB;MAAErC;MAAQH;MAAYD;IAAqB,GAAGR,OAAAA;EAC9E,WAAW+C,iBAAiB1C,MAAMI,WAAWuC,QAAQ,KAAA,GAAQ;AAG3D,UAAME,wBAAwB;MAAEtC;MAAQH;MAAYD;IAAqB,GAAGR,OAAAA;EAC9E,WAAW+C,iBAAiB1C,MAAMI,WAAWuC,QAAQ,OAAO,KAAA,GAAQ;AAClE,UAAMG,wBAAwB;MAAEvC;MAAQH;MAAYD;IAAqB,GAAGR,OAAAA;EAC9E,WAAW+C,iBAAiB1C,MAAMI,WAAWuC,QAAQ,OAAO,KAAA,GAAQ;AAIlE,UAAMI,wBAAwB;MAAExC;MAAQH;MAAYD;IAAqB,GAAGR,OAAAA;EAC9E,OAAO;AAEL,WAAO+B,QAAQC,OAAO,4CAA4C3B,IAAAA,0BAA8BI,WAAWuC,MAAM,SAAS;EAC5H;AACF,GAnCuC;AAqCvC,IAAME,0BAA0B,8BAC9B,EACEtC,QACAH,YACAD,uBAAuB,MAAK,GAM9BR,YAAAA;AAEA,QAAM,EAAEqD,IAAG,IAAKzC;AAChB,MAAIyC,KAAKvB,QAAQ;AAEf,UAAMwB,gBAAgB,MAAMtD,QAAQsC,MAAMiB,0BAA0B;MAAE9C,YAAY4C;IAAI,CAAA;AACtF,QAAIC,cAAcb,cAAchC,WAAWgC,WAAW;AACpD,aAAOV,QAAQC,OAAOC,MAAM,qGAAqG,CAAA;IACnI;EACF,WAAW,CAACzB,sBAAsB;AAChC,QAAI,KAACgD,kDAA6B/C,UAAAA,GAAa;AAC7C,aAAOsB,QAAQC,OAAOC,MAAM,qFAAA,CAAA;IAC9B,WAAWrB,OAAO6C,OAAO7C,OAAO8C,KAAK;AACnC,aAAO3B,QAAQC,OAAOC,MAAM,4FAAA,CAAA;IAC9B;AACArB,WAAOyC,MAAM5C,WAAW4C;EAC1B;AACF,GA3BgC;AA6BhC,IAAMJ,0BAA0B,8BAC9B,EACErC,QACAH,YACAD,uBAAuB,MAAK,GAM9BR,YAAAA;AAEA,QAAM,EAAE0D,IAAG,IAAK9C;AAChB,MAAI8C,KAAK;AAEP,UAAMC,eAAe,MAAM3D,QAAQsC,MAAMsB,0BAA0B;MAAEnD,YAAYiD;IAAI,CAAA;AACrF,QAAIC,aAAalB,cAAchC,WAAWgC,WAAW;AACnD,aAAOV,QAAQC,OAAOC,MAAM,iFAAiF,CAAA;IAC/G;EACF,WAAW,CAACzB,sBAAsB;AAChC,QAAI,KAACqD,kDAA6BpD,UAAAA,GAAa;AAC7C,aAAOsB,QAAQC,OAAOC,MAAM,qFAAA,CAAA;IAC9B;AACArB,WAAO8C,MAAMjD,WAAWiD;EAC1B;AACF,GAzBgC;AA2BhC,IAAMN,0BAA0B,8BAC9B,EACExC,QACAH,YACAD,uBAAuB,MAAK,GAM9BR,YAAAA;AAEA,QAAM,EAAEyD,IAAG,IAAK7C;AAChB,MAAI6C,KAAK;AAEP,UAAMK,gBAAgB,MAAM9D,QAAQsC,MAAMyB,0BAA0B;MAAEtD,YAAYgD;IAAW,CAAA;AAC7F,QAAIK,cAAcrB,cAAchC,WAAWgC,WAAW;AACpD,aAAOV,QAAQC,OAAOC,MAAM,wFAAwF,CAAA;IACtH;EACF,WAAW,CAACzB,sBAAsB;AAEhC,QAAII,OAAOyC,KAAK;AACd,aAAOtB,QAAQC,OAAOC,MAAM,oFAAA,CAAA;IAC9B;AACArB,WAAO6C,MAAMhD,WAAWgD;EAC1B;AACF,GA1BgC;AA4BhC,IAAMN,0BAA0B,8BAC9B,EACEvC,QACAH,YACAD,uBAAuB,MAAK,GAM9BR,YAAAA;AAEA,QAAM,EAAE0D,IAAG,IAAK9C;AAChB,MAAI8C,KAAK;AAEP,UAAMM,gBAAgB,MAAMhE,QAAQsC,MAAM2B,0BAA0B;MAAExD,YAAYiD;IAAI,CAAA;AACtF,QAAIM,cAAcvB,cAAchC,WAAWgC,WAAW;AACpD,aAAOV,QAAQC,OAAOC,MAAM,iFAAiF,CAAA;IAC/G;EACF,WAAW,CAACzB,sBAAsB;AAEhC,QAAII,OAAOyC,KAAK;AACd,aAAOtB,QAAQC,OAAOC,MAAM,oFAAA,CAAA;IAC9B;AACArB,WAAO8C,MAAMjD,WAAWiD;EAC1B;AACF,GA1BgC;AA4BhC,IAAMX,mBAAmB,wBAAC1C,MAAyB6D,kBAA2CC,WAA8BC,QAAQ,SAAI;AACtI,MAAIA,UAAUD,cAAc,SAASA,cAAc,QAAQ;AAGzD,WAAO;EACT;AACA,MAAI9D,SAAS8D,WAAW;AACtB,QAAIA,cAAc,UAAU9D,SAAS6D,kBAAkB;AACrD,YAAMjC,MAAM,iBAAiB5B,IAAAA,qCAAyC6D,gBAAAA,EAAkB;IAC1F;AACA,WAAO;EACT;AAEA,SAAO7D,SAAS,UAAU6D,qBAAqBC;AACjD,GAdyB;AAgBlB,IAAME,YAAY,8BAAOtE,MAAqBC,YAAAA;AACnD,QAAMsB,MAAM,MAAMgD,gCAAgCvE,MAAMC,OAAAA;AAExD,MAAIuE,gBAA0B,CAAA;AAC9B,MAAIC,QAAQ;AACZ,QAAMzC,QAAQ0C,IACZnD,IAAIO,WAAW6C,IAAI,OAAOC,cAAAA;AAExBH;AACA,QAAII;AACJ,UAAMlC,OAAOrD,YAAW,GAAGsF,UAAUlD,SAAS,IAAIH,IAAI9B,OAAO,IAAI,OAAA;AACjE,UAAMqF,UAAUF,UAAUlE,WAAWqE,KAAK,CAAA;AAC1C,QAAIC,eAAmDnC;AACvD,QAAI+B,UAAUlD,UAAUuD,WAAW,IAAI,GAAG;AACxC,YAAMpE,aAASqE,8BAAeN,UAAUlD,SAAS;AACjDsD,qBAAenE,OAAOsB;IACxB;AAEA,QAAI,OAA0F;AAC5F,YAAMgD,mBAAeC,uCAAmBN,QAAQpB,GAAG;AACnDmB,cAAQ,MAAM5E,QAAQsC,MAAM8C,iBAAiB;QAC3C1D,WAAWiD,UAAUjD;QACrBgB;QACAwC;QACA9C,UAAMiD,mDAA8B;UAAE,GAAIR,QAAQpB,IAAI6B,OAAO;YAAEA,KAAKT,QAAQpB,IAAI6B;UAAI;UAAIpD,KAAK6C;QAAuB,CAAA;MAEtH,CAAA;IACF,OAAO;AACL,YAAMrD,gBAAY6D,6BAAcZ,UAAUjD,SAAS;AACnDkD,cAAQ,UAAMY,wCAAmB;QAAE9C;QAAMhB;QAAWW,KAAKwC,QAAQpB;QAAKgC,MAAM;UAAEV;QAA2B;MAAE,CAAA;IAE7G;AACA,QAAI,CAACH,OAAO;AACVL,oBAAcmB,KAAK,aAAalB,KAAAA,gBAAqB;IACvD;AACA,WAAO;MACLG;MACAC;IACF;EACF,CAAA,CAAA;AAEF,QAAMe,QAAQpB,cAAczC,WAAW;AACvC,QAAM8D,SAAS;IACbC,MAAM;IACNvE;IACAqE;IACAG,UAAUH;IACVI,SAASJ,QAAQpB,cAAcyB,KAAK,IAAA,IAAQ;IAC5CC,kBAAkB,oBAAIC,KAAAA;EACxB;AACA,MAAIP,OAAO;AACTQ,YAAQC,IAAI,oCAAoC;MAAE,GAAGR;IAAO,CAAA;EAC9D;AACA,SAAOA;AACT,GAtDyB;AAwDlB,IAAMS,mBAAmB,8BAAO,EAAE/E,IAAG,GAAkBtB,YAAAA;AAC5D,MAAIR;AACJ,MAAIqC,aAAiC,CAAA;AAErC,MAAIyE,aAAahF,GAAAA,GAAM;AACrB,UAAMiF,QAAQjF,IAAIiF,MAAM,GAAA;AACxB/G,cAAU+G,MAAM,CAAA;AAChB1E,eAAW,CAAA,IAAK;MACdJ,WAAW8E,MAAM,CAAA;MACjB7E,WAAW6E,MAAM,CAAA;IACnB;EACF,WAAWC,iBAAiBlF,GAAAA,GAAM;AAChC9B,cAAU8B,IAAI9B;AACdqC,iBAAaP,IAAIO;EACnB,WAAW4E,mBAAmBnF,GAAAA,GAAM;AAClC,UAAM,EAAE9B,SAASkH,UAAU,GAAGhF,UAAAA,IAAcJ;AAC5C9B,cAAUkH;AACV7E,iBAAa;MAACH;;EAChB,OAAO;AACL,WAAOK,QAAQC,OAAOC,MAAM,sBAAsB,CAAA;EACpD;AACA,SAAO;IACLzC;IACAqC;EACF;AACF,GAzBgC;AA2BhC,eAAe8E,uCACbzG,iBACAF,SACAD,MAGC;AAED,MAAIG,gBAAgBmD,KAAK;AACvB,UAAMA,MAAMnD,gBAAgBmD;AAC5B,WAAO,MAAMrD,QAAQsC,MAAMsE,+BAA+B;MACxD,GAAG7G,KAAK0F,MAAMpC;MACd5C,YAAY4C;MACZwD,QAAQ;IACV,CAAA;EACF,WAAW3G,gBAAgBuD,KAAK;AAC9B,UAAMA,MAAMvD,gBAAgBuD;AAC5B,UAAMJ,MAAMI,IAAIJ;AAChB,WAAO,MAAMrD,QAAQsC,MAAMwE,+BAA+B;MACxDrG,YAAYP,gBAAgBuD;MAC5B,GAAIJ,OAAO;QACTA,KAAK;UACH,GAAGtD,MAAM0F,MAAMpC;UACf5C,YAAY4C;QACd;MACF;IACF,CAAA;EACF,WAAWnD,gBAAgBwD,OAAOxD,gBAAgBwD,IAAIsB,WAAW,MAAA,GAAS;AACxE,WAAO,MAAMhF,QAAQsC,MAAMyE,+BAA+B;MAAE,GAAGhH,MAAM0F,MAAMuB;MAAKvG,YAAYP,gBAAgBwD;IAAI,CAAA;EAClH,WAAWxD,gBAAgBgC,QAAQ,QAAQ;AACzC,WAAOU;EACT,OAAO;AACL,WAAOb,QAAQC,OAAOC,MAAM,iGAAiG,CAAA;EAC/H;AACF;AAlCe0E;AAoCf,SAASM,QAAQC,aAA8BhH,iBAA4BoB,KAAmB;AAC5F,MAAI4F,aAAa;AACf,WAAOA;EACT;AAEA,MAAIhH,iBAAiBiH,QAAQ,wBAAwB;AACnD,UAAM3H,cAAUyF,8BAAe3D,IAAI9B,OAAO;AAC1C,QAAI,CAACA,SAASsF,MAAMsC,OAAO,CAAA,GAAI;AAC7B,YAAM,IAAInF,MAAM,mCAAA;IAClB;AACA,WAAOzC,QAAQsF,KAAKsC,KAAK,CAAA;EAC3B;AAEA,SAAOxE;AACT;AAdSqE;AAgBF,IAAM3C,kCAAkC,8BAC7CvE,MAKAC,YAAAA;AAEA,QAAMsB,MAAM,MAAM+E,iBAAiBtG,MAAMC,OAAAA;AACzC,QAAM6B,aAAc,MAAME,QAAQ0C,IAChCnD,IAAIO,WAAW6C,IAAI,OAAOhD,cAAAA;AACxB,UAAMxB,sBAA6B+E,8BAAevD,UAAUD,SAAS;AACrE,UAAMgC,MAAMwD,QAAQlH,KAAK0D,KAAKvD,iBAAiBoB,GAAAA;AAC/C,UAAMb,aAAagD,MACf,UAAM4D,kDAA6B;MAAE5G,YAAYgD;MAAKT,QAAQ;IAAM,GAAGhD,OAAAA,IACvE,MAAM2G,uCAAuCzG,iBAAiBF,SAASD,IAAAA;AAC3E,QAAIU,eAAemC,QAAW;AAC5B,aAAO;QAAE,GAAGlB;QAAWjB;MAAW;IACpC;AACA,WAAOmC;EACT,CAAA,CAAA;AAGF,SAAO;IAAEpD,SAAS8B,IAAI9B;IAASqC;EAAW;AAC5C,GAxB+C;;;AJzb/C,IAAMyF,SAASC;AAGR,IAAMC,YAAYC,0BAAQC,QAAQC,IAAI,kBAAA;","names":["module","import_ssi_types","u8a","jwtServiceContextMethods","isJwsCompact","jws","split","match","COMPACT_JWS_REGEX","isJweCompact","jwe","COMPACT_JWE_REGEX","isJwsJsonFlattened","isJwsJsonGeneral","isJweJsonFlattened","isJweJsonGeneral","isJwsHeader","header","isJweHeader","enc","jweEnc","alg","jweAlg","JweAlgs","find","supportedVal","JweEncs","fromString","toString","concat","u8a","CompactJwtEncrypter","_alg","_enc","_keyManagementParams","recipientKey","expirationTime","issuer","audience","args","alg","enc","keyManagementParams","key","Error","value","JweEncs","includes","JweAlgs","encryptCompactJWT","payload","jweProtectedHeader","aad","protectedHeader","Promise","reject","exp","iss","aud","encrypt","EncryptJWT","setProtectedHeader","startsWith","setKeyManagementParameters","undefined","setExpirationTime","setIssuer","setAudience","decryptCompactJWT","jwt","options","jwtDecrypt","JSON","parse","toString","encryptedKey","ivB64","payloadB64","tagB64","split","console","log","tag","base64ToBytes","ciphertext","iv","recipients","encrypted_key","logger","Loggers","DEFAULT","get","fromString","u8a","JwtService","schema","IJwtService","methods","jwtPrepareJws","bind","jwtCreateJwsJsonGeneralSignature","jwtCreateJwsJsonFlattenedSignature","jwtCreateJwsCompactSignature","jwtVerifyJwsSignature","jwtEncryptJweCompactJwt","jwtDecryptJweCompactJwt","args","context","prepareJwsObject","createJwsJsonGeneral","createJwsJsonFlattened","jwt","createJwsCompact","verifyJws","payload","protectedHeader","alg","enc","recipientKey","issuer","expirationTime","audience","debug","JSON","stringify","jweAlg","jweEnc","encJwks","jwks","length","filter","jwk","kid","jwkThumbprint","use","Promise","reject","Error","jwkInfo","JwtLogger","warning","kty","startsWith","apuVal","apu","undefined","apvVal","apv","pubKey","importJWK","encrypter","CompactJwtEncrypter","keyManagementParams","key","jwe","encryptCompactJWT","error","console","message","import_ssi_sdk_ext","import_utils","u8a","fromString","u8a","payloadToBytes","payload","isBytes","Uint8Array","isString","JSON","stringify","prepareJwsObject","args","context","existingSignatures","protectedHeader","unprotectedHeader","issuer","mode","clientId","clientIdScheme","noIdentifierInHeader","identifier","ensureManagedIdentifierResult","checkAndUpdateJwsHeader","header","noIssPayloadUpdate","iss","client_id_scheme","client_id","payloadBytes","base64urlHeader","encodeJoseBlob","base64urlPayload","bytesToBase64url","jws","b64","createJwsCompact","protected","signature","createJwsJsonFlattened","createJwsJsonGeneral","signatures","length","Promise","reject","Error","alg","signatureAlgorithmFromKeyType","type","key","agent","keyManagerSign","keyRef","kmsKeyRef","data","encoding","undefined","algorithm","jsonSignature","isIdentifierMode","method","checkAndUpdateDidHeader","checkAndUpdateX5cHeader","checkAndUpdateKidHeader","checkAndUpdateJwkHeader","x5c","x5cIdentifier","identifierManagedGetByX5c","isManagedIdentifierX5cResult","jwk","kid","vmIdentifier","identifierManagedGetByDid","isManagedIdentifierDidResult","jwkIdentifier","identifierManagedGetByJwk","kidIdentifier","identifierManagedGetByKid","identifierMethod","checkMode","loose","verifyJws","toJwsJsonGeneralWithIdentifiers","errorMessages","index","all","map","sigWithId","valid","jwkInfo","jwks","signatureAlg","startsWith","decodeJoseBlob","publicKeyHex","jwkTtoPublicKeyHex","keyManagerVerify","keyTypeFromCryptographicSuite","crv","base64ToBytes","verifyRawSignature","opts","push","error","result","name","critical","message","join","verificationTime","Date","console","log","toJwsJsonGeneral","isJwsCompact","split","isJwsJsonGeneral","isJwsJsonFlattened","_payload","resolveExternalIdentifierFromJwsHeader","identifierExternalResolveByX5c","verify","identifierExternalResolveByJwk","identifierExternalResolveByDid","did","loadJWK","providedJwk","typ","keys","resolveExternalJwkIdentifier","schema","require","JwtLogger","Loggers","DEFAULT","get"]}