@blamejs/blamejs-shop 0.0.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1220) hide show
  1. package/CHANGELOG.md +87 -0
  2. package/LICENSE +17 -0
  3. package/README.md +117 -0
  4. package/SECURITY.md +139 -0
  5. package/lib/admin.js +952 -0
  6. package/lib/analytics.js +267 -0
  7. package/lib/cart.js +279 -0
  8. package/lib/catalog-import.js +344 -0
  9. package/lib/catalog.js +769 -0
  10. package/lib/checkout.js +320 -0
  11. package/lib/config.js +151 -0
  12. package/lib/customers.js +322 -0
  13. package/lib/email.js +242 -0
  14. package/lib/externaldb-d1.js +283 -0
  15. package/lib/index.js +57 -0
  16. package/lib/inventory-alerts.js +198 -0
  17. package/lib/newsletter.js +142 -0
  18. package/lib/order.js +380 -0
  19. package/lib/payment.js +318 -0
  20. package/lib/pricing.js +185 -0
  21. package/lib/r2-bridge.js +169 -0
  22. package/lib/shipping.js +185 -0
  23. package/lib/storefront.js +2160 -0
  24. package/lib/subscriptions.js +410 -0
  25. package/lib/tax.js +161 -0
  26. package/lib/theme.js +194 -0
  27. package/lib/vendor/MANIFEST.json +19 -0
  28. package/lib/vendor/blamejs/.clusterfuzzlite/Dockerfile +23 -0
  29. package/lib/vendor/blamejs/.clusterfuzzlite/build.sh +34 -0
  30. package/lib/vendor/blamejs/.clusterfuzzlite/project.yaml +16 -0
  31. package/lib/vendor/blamejs/.dockerignore +45 -0
  32. package/lib/vendor/blamejs/.gitattributes +42 -0
  33. package/lib/vendor/blamejs/.github/CODEOWNERS +4 -0
  34. package/lib/vendor/blamejs/.github/FUNDING.yml +2 -0
  35. package/lib/vendor/blamejs/.github/ISSUE_TEMPLATE/bug_report.md +58 -0
  36. package/lib/vendor/blamejs/.github/ISSUE_TEMPLATE/config.yml +8 -0
  37. package/lib/vendor/blamejs/.github/ISSUE_TEMPLATE/feature_request.md +99 -0
  38. package/lib/vendor/blamejs/.github/PULL_REQUEST_TEMPLATE.md +77 -0
  39. package/lib/vendor/blamejs/.github/dependabot.yml +37 -0
  40. package/lib/vendor/blamejs/.github/workflows/actions-lint.yml +148 -0
  41. package/lib/vendor/blamejs/.github/workflows/cflite_batch.yml +107 -0
  42. package/lib/vendor/blamejs/.github/workflows/cflite_pr.yml +122 -0
  43. package/lib/vendor/blamejs/.github/workflows/ci.yml +511 -0
  44. package/lib/vendor/blamejs/.github/workflows/codeql.yml +50 -0
  45. package/lib/vendor/blamejs/.github/workflows/npm-publish.yml +655 -0
  46. package/lib/vendor/blamejs/.github/workflows/release-container.yml +406 -0
  47. package/lib/vendor/blamejs/.github/workflows/scorecard.yml +101 -0
  48. package/lib/vendor/blamejs/.github/workflows/sha-to-tag-verify.yml +134 -0
  49. package/lib/vendor/blamejs/.gitignore +102 -0
  50. package/lib/vendor/blamejs/.gitleaks.toml +166 -0
  51. package/lib/vendor/blamejs/.hadolint.yaml +18 -0
  52. package/lib/vendor/blamejs/.npmrc +5 -0
  53. package/lib/vendor/blamejs/.pinact.yaml +17 -0
  54. package/lib/vendor/blamejs/ARCHITECTURE.md +158 -0
  55. package/lib/vendor/blamejs/CHANGELOG.md +1351 -0
  56. package/lib/vendor/blamejs/CODE_OF_CONDUCT.md +86 -0
  57. package/lib/vendor/blamejs/CONTRIBUTING.md +156 -0
  58. package/lib/vendor/blamejs/GOVERNANCE.md +201 -0
  59. package/lib/vendor/blamejs/LICENSE +201 -0
  60. package/lib/vendor/blamejs/LTS-CALENDAR.md +29 -0
  61. package/lib/vendor/blamejs/MIGRATING.md +29 -0
  62. package/lib/vendor/blamejs/NOTICE +81 -0
  63. package/lib/vendor/blamejs/README.md +304 -0
  64. package/lib/vendor/blamejs/SECURITY.md +432 -0
  65. package/lib/vendor/blamejs/api-snapshot.json +48709 -0
  66. package/lib/vendor/blamejs/assets/BlameJS_Logo.png +0 -0
  67. package/lib/vendor/blamejs/assets/BlameJS_Logo.svg +129 -0
  68. package/lib/vendor/blamejs/bench/README.md +77 -0
  69. package/lib/vendor/blamejs/bench/_helpers.js +70 -0
  70. package/lib/vendor/blamejs/bench/baseline.json +183 -0
  71. package/lib/vendor/blamejs/bench/crypto-hash.bench.js +19 -0
  72. package/lib/vendor/blamejs/bench/crypto-symmetric.bench.js +28 -0
  73. package/lib/vendor/blamejs/bench/run.js +140 -0
  74. package/lib/vendor/blamejs/bench/safe-json.bench.js +31 -0
  75. package/lib/vendor/blamejs/bin/blamejs.js +13 -0
  76. package/lib/vendor/blamejs/docker/caddy/Caddyfile +46 -0
  77. package/lib/vendor/blamejs/docker/coredns/Corefile +37 -0
  78. package/lib/vendor/blamejs/docker/haproxy/haproxy.cfg +52 -0
  79. package/lib/vendor/blamejs/docker/init/generate-certs.sh +118 -0
  80. package/lib/vendor/blamejs/docker/keycloak/realm-blamejs-test.json +87 -0
  81. package/lib/vendor/blamejs/docker/mitmproxy/config.yaml +16 -0
  82. package/lib/vendor/blamejs/docker/mongo/init-tls.sh +17 -0
  83. package/lib/vendor/blamejs/docker/mysql/my.cnf +12 -0
  84. package/lib/vendor/blamejs/docker/nats/nats.conf +33 -0
  85. package/lib/vendor/blamejs/docker/postgres/init-tls.sh +17 -0
  86. package/lib/vendor/blamejs/docker/postgres/postgresql.conf +18 -0
  87. package/lib/vendor/blamejs/docker/rabbitmq/rabbitmq.conf +18 -0
  88. package/lib/vendor/blamejs/docker/redis/redis.conf +15 -0
  89. package/lib/vendor/blamejs/docker/squid/squid.conf +24 -0
  90. package/lib/vendor/blamejs/docker/syslog/syslog-ng.conf +34 -0
  91. package/lib/vendor/blamejs/docker-compose.test.yml +545 -0
  92. package/lib/vendor/blamejs/docs/cis-postgres-crosswalk.md +102 -0
  93. package/lib/vendor/blamejs/docs/cis-sqlite-equivalent.md +92 -0
  94. package/lib/vendor/blamejs/eslint.config.mjs +204 -0
  95. package/lib/vendor/blamejs/examples/wiki/Caddyfile +40 -0
  96. package/lib/vendor/blamejs/examples/wiki/DEPLOY.md +218 -0
  97. package/lib/vendor/blamejs/examples/wiki/Dockerfile +120 -0
  98. package/lib/vendor/blamejs/examples/wiki/README.md +157 -0
  99. package/lib/vendor/blamejs/examples/wiki/cli-snapshot.json +250 -0
  100. package/lib/vendor/blamejs/examples/wiki/docker-compose.prod.yml +231 -0
  101. package/lib/vendor/blamejs/examples/wiki/docker-compose.yml +166 -0
  102. package/lib/vendor/blamejs/examples/wiki/env-snapshot.json +217 -0
  103. package/lib/vendor/blamejs/examples/wiki/lib/auto-site-entries.js +139 -0
  104. package/lib/vendor/blamejs/examples/wiki/lib/build-app.js +555 -0
  105. package/lib/vendor/blamejs/examples/wiki/lib/harvest-cli.js +507 -0
  106. package/lib/vendor/blamejs/examples/wiki/lib/harvest-env-vars.js +435 -0
  107. package/lib/vendor/blamejs/examples/wiki/lib/harvest-errors.js +282 -0
  108. package/lib/vendor/blamejs/examples/wiki/lib/harvest-vendored-deps.js +321 -0
  109. package/lib/vendor/blamejs/examples/wiki/lib/nav.js +15 -0
  110. package/lib/vendor/blamejs/examples/wiki/lib/opts-resolver.js +75 -0
  111. package/lib/vendor/blamejs/examples/wiki/lib/page-generator.js +508 -0
  112. package/lib/vendor/blamejs/examples/wiki/lib/section.js +276 -0
  113. package/lib/vendor/blamejs/examples/wiki/lib/source-comment-block-validator.js +587 -0
  114. package/lib/vendor/blamejs/examples/wiki/lib/source-doc-parser.js +318 -0
  115. package/lib/vendor/blamejs/examples/wiki/lib/symbol-index.js +122 -0
  116. package/lib/vendor/blamejs/examples/wiki/migrations/0001-pages-schema.js +74 -0
  117. package/lib/vendor/blamejs/examples/wiki/package.json +18 -0
  118. package/lib/vendor/blamejs/examples/wiki/public/img/blamejs-logo.png +0 -0
  119. package/lib/vendor/blamejs/examples/wiki/public/img/blamejs-logo.svg +129 -0
  120. package/lib/vendor/blamejs/examples/wiki/public/robots.txt +5 -0
  121. package/lib/vendor/blamejs/examples/wiki/public/vendor/MANIFEST.json +30 -0
  122. package/lib/vendor/blamejs/examples/wiki/public/vendor/prism.css +1 -0
  123. package/lib/vendor/blamejs/examples/wiki/public/vendor/prism.js +15 -0
  124. package/lib/vendor/blamejs/examples/wiki/public/wiki.css +1250 -0
  125. package/lib/vendor/blamejs/examples/wiki/routes/admin.js +366 -0
  126. package/lib/vendor/blamejs/examples/wiki/routes/integration.js +230 -0
  127. package/lib/vendor/blamejs/examples/wiki/routes/pages.js +266 -0
  128. package/lib/vendor/blamejs/examples/wiki/scripts/backfill-module-metadata.js +214 -0
  129. package/lib/vendor/blamejs/examples/wiki/seeders/prod/0001-default-pages.js +35 -0
  130. package/lib/vendor/blamejs/examples/wiki/seeders/prod/pages/_index.js +34 -0
  131. package/lib/vendor/blamejs/examples/wiki/seeders/prod/pages/api.js +76 -0
  132. package/lib/vendor/blamejs/examples/wiki/server.js +129 -0
  133. package/lib/vendor/blamejs/examples/wiki/site.config.js +197 -0
  134. package/lib/vendor/blamejs/examples/wiki/snippets/README.md +38 -0
  135. package/lib/vendor/blamejs/examples/wiki/snippets/auth/password-hash.example.js +15 -0
  136. package/lib/vendor/blamejs/examples/wiki/src/editor.js +103 -0
  137. package/lib/vendor/blamejs/examples/wiki/src/wiki.js +349 -0
  138. package/lib/vendor/blamejs/examples/wiki/test/AUDIT.md +155 -0
  139. package/lib/vendor/blamejs/examples/wiki/test/codebase-patterns.test.js +594 -0
  140. package/lib/vendor/blamejs/examples/wiki/test/e2e.js +741 -0
  141. package/lib/vendor/blamejs/examples/wiki/test/find-missing-pages.js +254 -0
  142. package/lib/vendor/blamejs/examples/wiki/test/integration.js +391 -0
  143. package/lib/vendor/blamejs/examples/wiki/test/validate-cli-snapshot.js +379 -0
  144. package/lib/vendor/blamejs/examples/wiki/test/validate-env-snapshot.js +346 -0
  145. package/lib/vendor/blamejs/examples/wiki/test/validate-nav-coverage.js +212 -0
  146. package/lib/vendor/blamejs/examples/wiki/test/validate-site-coverage.js +252 -0
  147. package/lib/vendor/blamejs/examples/wiki/test/validate-source-comment-blocks.js +107 -0
  148. package/lib/vendor/blamejs/examples/wiki/views/_layout.html +115 -0
  149. package/lib/vendor/blamejs/examples/wiki/views/admin/api-keys.html +51 -0
  150. package/lib/vendor/blamejs/examples/wiki/views/admin/dashboard.html +22 -0
  151. package/lib/vendor/blamejs/examples/wiki/views/admin/edit.html +17 -0
  152. package/lib/vendor/blamejs/examples/wiki/views/home.html +85 -0
  153. package/lib/vendor/blamejs/examples/wiki/views/login.html +18 -0
  154. package/lib/vendor/blamejs/examples/wiki/views/page.html +5 -0
  155. package/lib/vendor/blamejs/examples/wiki/views/partials/nav.html +13 -0
  156. package/lib/vendor/blamejs/examples/wiki/views/search.html +19 -0
  157. package/lib/vendor/blamejs/examples/wiki/wiki.config.js +15 -0
  158. package/lib/vendor/blamejs/fuzz/README.md +137 -0
  159. package/lib/vendor/blamejs/fuzz/_expected.js +35 -0
  160. package/lib/vendor/blamejs/fuzz/guard-agent-registry.fuzz.js +22 -0
  161. package/lib/vendor/blamejs/fuzz/guard-csv.fuzz.js +16 -0
  162. package/lib/vendor/blamejs/fuzz/guard-csv_seed_corpus/01-basic.csv +3 -0
  163. package/lib/vendor/blamejs/fuzz/guard-csv_seed_corpus/02-formula.csv +1 -0
  164. package/lib/vendor/blamejs/fuzz/guard-csv_seed_corpus/03-hyperlink.csv +1 -0
  165. package/lib/vendor/blamejs/fuzz/guard-dsn.fuzz.js +22 -0
  166. package/lib/vendor/blamejs/fuzz/guard-email.fuzz.js +16 -0
  167. package/lib/vendor/blamejs/fuzz/guard-email_seed_corpus/01-basic.eml +5 -0
  168. package/lib/vendor/blamejs/fuzz/guard-envelope.fuzz.js +24 -0
  169. package/lib/vendor/blamejs/fuzz/guard-event-bus-payload.fuzz.js +24 -0
  170. package/lib/vendor/blamejs/fuzz/guard-event-bus-topic.fuzz.js +20 -0
  171. package/lib/vendor/blamejs/fuzz/guard-html.fuzz.js +16 -0
  172. package/lib/vendor/blamejs/fuzz/guard-html_seed_corpus/01-basic.html +1 -0
  173. package/lib/vendor/blamejs/fuzz/guard-html_seed_corpus/02-script.html +1 -0
  174. package/lib/vendor/blamejs/fuzz/guard-html_seed_corpus/03-event.html +1 -0
  175. package/lib/vendor/blamejs/fuzz/guard-html_seed_corpus/04-jsurl.html +1 -0
  176. package/lib/vendor/blamejs/fuzz/guard-idempotency-key.fuzz.js +20 -0
  177. package/lib/vendor/blamejs/fuzz/guard-imap-command.fuzz.js +35 -0
  178. package/lib/vendor/blamejs/fuzz/guard-jmap.fuzz.js +41 -0
  179. package/lib/vendor/blamejs/fuzz/guard-json.fuzz.js +16 -0
  180. package/lib/vendor/blamejs/fuzz/guard-json_seed_corpus/01-basic.json +1 -0
  181. package/lib/vendor/blamejs/fuzz/guard-json_seed_corpus/02-proto.json +1 -0
  182. package/lib/vendor/blamejs/fuzz/guard-json_seed_corpus/03-dupkey.json +1 -0
  183. package/lib/vendor/blamejs/fuzz/guard-json_seed_corpus/04-nan.json +1 -0
  184. package/lib/vendor/blamejs/fuzz/guard-json_seed_corpus/05-bom.json +1 -0
  185. package/lib/vendor/blamejs/fuzz/guard-list-id.fuzz.js +21 -0
  186. package/lib/vendor/blamejs/fuzz/guard-list-unsubscribe.fuzz.js +25 -0
  187. package/lib/vendor/blamejs/fuzz/guard-mail-compose.fuzz.js +22 -0
  188. package/lib/vendor/blamejs/fuzz/guard-mail-move.fuzz.js +22 -0
  189. package/lib/vendor/blamejs/fuzz/guard-mail-query.fuzz.js +27 -0
  190. package/lib/vendor/blamejs/fuzz/guard-mail-reply.fuzz.js +23 -0
  191. package/lib/vendor/blamejs/fuzz/guard-mail-sieve.fuzz.js +36 -0
  192. package/lib/vendor/blamejs/fuzz/guard-managesieve-command.fuzz.js +26 -0
  193. package/lib/vendor/blamejs/fuzz/guard-markdown.fuzz.js +16 -0
  194. package/lib/vendor/blamejs/fuzz/guard-markdown_seed_corpus/01-basic.md +2 -0
  195. package/lib/vendor/blamejs/fuzz/guard-markdown_seed_corpus/02-jsurl.md +1 -0
  196. package/lib/vendor/blamejs/fuzz/guard-markdown_seed_corpus/03-jsimg.md +1 -0
  197. package/lib/vendor/blamejs/fuzz/guard-message-id.fuzz.js +26 -0
  198. package/lib/vendor/blamejs/fuzz/guard-pop3-command.fuzz.js +23 -0
  199. package/lib/vendor/blamejs/fuzz/guard-posture-chain.fuzz.js +22 -0
  200. package/lib/vendor/blamejs/fuzz/guard-saga-config.fuzz.js +32 -0
  201. package/lib/vendor/blamejs/fuzz/guard-smtp-command.fuzz.js +27 -0
  202. package/lib/vendor/blamejs/fuzz/guard-snapshot-envelope.fuzz.js +22 -0
  203. package/lib/vendor/blamejs/fuzz/guard-stream-args.fuzz.js +22 -0
  204. package/lib/vendor/blamejs/fuzz/guard-svg.fuzz.js +16 -0
  205. package/lib/vendor/blamejs/fuzz/guard-svg_seed_corpus/01-basic.svg +1 -0
  206. package/lib/vendor/blamejs/fuzz/guard-svg_seed_corpus/02-script.svg +1 -0
  207. package/lib/vendor/blamejs/fuzz/guard-tenant-id.fuzz.js +20 -0
  208. package/lib/vendor/blamejs/fuzz/guard-trace-context.fuzz.js +30 -0
  209. package/lib/vendor/blamejs/fuzz/guard-xml.fuzz.js +16 -0
  210. package/lib/vendor/blamejs/fuzz/guard-xml_seed_corpus/01-basic.xml +1 -0
  211. package/lib/vendor/blamejs/fuzz/guard-xml_seed_corpus/02-xxe.xml +1 -0
  212. package/lib/vendor/blamejs/fuzz/guard-yaml.fuzz.js +16 -0
  213. package/lib/vendor/blamejs/fuzz/guard-yaml_seed_corpus/01-basic.yaml +2 -0
  214. package/lib/vendor/blamejs/fuzz/guard-yaml_seed_corpus/02-anchor.yaml +2 -0
  215. package/lib/vendor/blamejs/fuzz/guard-yaml_seed_corpus/03-norway.yaml +1 -0
  216. package/lib/vendor/blamejs/fuzz/guard-yaml_seed_corpus/04-multidoc.yaml +4 -0
  217. package/lib/vendor/blamejs/fuzz/parsers__safe-ini.fuzz.js +16 -0
  218. package/lib/vendor/blamejs/fuzz/parsers__safe-ini_seed_corpus/01-basic.ini +2 -0
  219. package/lib/vendor/blamejs/fuzz/parsers__safe-toml.fuzz.js +16 -0
  220. package/lib/vendor/blamejs/fuzz/parsers__safe-toml_seed_corpus/01-basic.toml +4 -0
  221. package/lib/vendor/blamejs/fuzz/parsers__safe-xml.fuzz.js +16 -0
  222. package/lib/vendor/blamejs/fuzz/parsers__safe-xml_seed_corpus/01-basic.xml +1 -0
  223. package/lib/vendor/blamejs/fuzz/parsers__safe-yaml.fuzz.js +16 -0
  224. package/lib/vendor/blamejs/fuzz/parsers__safe-yaml_seed_corpus/01-basic.yaml +4 -0
  225. package/lib/vendor/blamejs/fuzz/safe-decompress.fuzz.js +49 -0
  226. package/lib/vendor/blamejs/fuzz/safe-dns.fuzz.js +29 -0
  227. package/lib/vendor/blamejs/fuzz/safe-ical.fuzz.js +16 -0
  228. package/lib/vendor/blamejs/fuzz/safe-icap.fuzz.js +42 -0
  229. package/lib/vendor/blamejs/fuzz/safe-json.fuzz.js +25 -0
  230. package/lib/vendor/blamejs/fuzz/safe-json_seed_corpus/01-object.txt +1 -0
  231. package/lib/vendor/blamejs/fuzz/safe-json_seed_corpus/02-array.txt +1 -0
  232. package/lib/vendor/blamejs/fuzz/safe-json_seed_corpus/03-string.txt +1 -0
  233. package/lib/vendor/blamejs/fuzz/safe-json_seed_corpus/04-proto.txt +1 -0
  234. package/lib/vendor/blamejs/fuzz/safe-json_seed_corpus/05-deep.txt +1 -0
  235. package/lib/vendor/blamejs/fuzz/safe-jsonpath.fuzz.js +16 -0
  236. package/lib/vendor/blamejs/fuzz/safe-jsonpath_seed_corpus/01-basic.txt +1 -0
  237. package/lib/vendor/blamejs/fuzz/safe-jsonpath_seed_corpus/02-filter.txt +1 -0
  238. package/lib/vendor/blamejs/fuzz/safe-jsonpath_seed_corpus/03-deepscan.txt +1 -0
  239. package/lib/vendor/blamejs/fuzz/safe-jsonpath_seed_corpus/04-slice.txt +1 -0
  240. package/lib/vendor/blamejs/fuzz/safe-mime.fuzz.js +27 -0
  241. package/lib/vendor/blamejs/fuzz/safe-mount-info.fuzz.js +33 -0
  242. package/lib/vendor/blamejs/fuzz/safe-sieve.fuzz.js +28 -0
  243. package/lib/vendor/blamejs/fuzz/safe-smtp.fuzz.js +64 -0
  244. package/lib/vendor/blamejs/fuzz/safe-url.fuzz.js +16 -0
  245. package/lib/vendor/blamejs/fuzz/safe-url_seed_corpus/01-basic.txt +1 -0
  246. package/lib/vendor/blamejs/fuzz/safe-url_seed_corpus/02-userinfo.txt +1 -0
  247. package/lib/vendor/blamejs/fuzz/safe-url_seed_corpus/03-dangerous.txt +1 -0
  248. package/lib/vendor/blamejs/fuzz/safe-url_seed_corpus/04-data.txt +1 -0
  249. package/lib/vendor/blamejs/fuzz/safe-url_seed_corpus/05-ipv6.txt +1 -0
  250. package/lib/vendor/blamejs/fuzz/safe-url_seed_corpus/06-idn.txt +1 -0
  251. package/lib/vendor/blamejs/fuzz/safe-vcard.fuzz.js +16 -0
  252. package/lib/vendor/blamejs/index.js +678 -0
  253. package/lib/vendor/blamejs/keys/release-pqc-pub.json +7 -0
  254. package/lib/vendor/blamejs/lib/_test/crypto-fixtures.js +67 -0
  255. package/lib/vendor/blamejs/lib/a2a-tasks.js +598 -0
  256. package/lib/vendor/blamejs/lib/a2a.js +407 -0
  257. package/lib/vendor/blamejs/lib/acme.js +1448 -0
  258. package/lib/vendor/blamejs/lib/agent-audit.js +45 -0
  259. package/lib/vendor/blamejs/lib/agent-event-bus.js +382 -0
  260. package/lib/vendor/blamejs/lib/agent-idempotency.js +497 -0
  261. package/lib/vendor/blamejs/lib/agent-orchestrator.js +717 -0
  262. package/lib/vendor/blamejs/lib/agent-posture-chain.js +366 -0
  263. package/lib/vendor/blamejs/lib/agent-saga.js +321 -0
  264. package/lib/vendor/blamejs/lib/agent-snapshot.js +676 -0
  265. package/lib/vendor/blamejs/lib/agent-stream.js +269 -0
  266. package/lib/vendor/blamejs/lib/agent-tenant.js +632 -0
  267. package/lib/vendor/blamejs/lib/agent-trace.js +281 -0
  268. package/lib/vendor/blamejs/lib/ai-adverse-decision.js +184 -0
  269. package/lib/vendor/blamejs/lib/ai-content-detect.js +268 -0
  270. package/lib/vendor/blamejs/lib/ai-input.js +201 -0
  271. package/lib/vendor/blamejs/lib/ai-model-manifest.js +363 -0
  272. package/lib/vendor/blamejs/lib/ai-pref.js +340 -0
  273. package/lib/vendor/blamejs/lib/api-key.js +721 -0
  274. package/lib/vendor/blamejs/lib/api-snapshot.js +458 -0
  275. package/lib/vendor/blamejs/lib/app-shutdown.js +557 -0
  276. package/lib/vendor/blamejs/lib/app.js +365 -0
  277. package/lib/vendor/blamejs/lib/archive.js +547 -0
  278. package/lib/vendor/blamejs/lib/arg-parser.js +697 -0
  279. package/lib/vendor/blamejs/lib/argon2-builtin.js +173 -0
  280. package/lib/vendor/blamejs/lib/asn1-der.js +424 -0
  281. package/lib/vendor/blamejs/lib/asyncapi-bindings.js +160 -0
  282. package/lib/vendor/blamejs/lib/asyncapi-traits.js +143 -0
  283. package/lib/vendor/blamejs/lib/asyncapi.js +575 -0
  284. package/lib/vendor/blamejs/lib/atomic-file.js +1023 -0
  285. package/lib/vendor/blamejs/lib/audit-chain.js +266 -0
  286. package/lib/vendor/blamejs/lib/audit-daily-review.js +389 -0
  287. package/lib/vendor/blamejs/lib/audit-sign.js +751 -0
  288. package/lib/vendor/blamejs/lib/audit-tools.js +1113 -0
  289. package/lib/vendor/blamejs/lib/audit.js +1671 -0
  290. package/lib/vendor/blamejs/lib/auth/aal.js +169 -0
  291. package/lib/vendor/blamejs/lib/auth/access-lock.js +220 -0
  292. package/lib/vendor/blamejs/lib/auth/acr-vocabulary.js +265 -0
  293. package/lib/vendor/blamejs/lib/auth/ato-kill-switch.js +112 -0
  294. package/lib/vendor/blamejs/lib/auth/auth-time-tracker.js +111 -0
  295. package/lib/vendor/blamejs/lib/auth/bot-challenge.js +573 -0
  296. package/lib/vendor/blamejs/lib/auth/ciba.js +637 -0
  297. package/lib/vendor/blamejs/lib/auth/dpop.js +516 -0
  298. package/lib/vendor/blamejs/lib/auth/elevation-grant.js +306 -0
  299. package/lib/vendor/blamejs/lib/auth/fal.js +229 -0
  300. package/lib/vendor/blamejs/lib/auth/fido-mds3.js +681 -0
  301. package/lib/vendor/blamejs/lib/auth/jwt-external.js +519 -0
  302. package/lib/vendor/blamejs/lib/auth/jwt.js +430 -0
  303. package/lib/vendor/blamejs/lib/auth/lockout.js +449 -0
  304. package/lib/vendor/blamejs/lib/auth/oauth.js +2141 -0
  305. package/lib/vendor/blamejs/lib/auth/oid4vci.js +657 -0
  306. package/lib/vendor/blamejs/lib/auth/oid4vp.js +531 -0
  307. package/lib/vendor/blamejs/lib/auth/openid-federation.js +600 -0
  308. package/lib/vendor/blamejs/lib/auth/passkey.js +676 -0
  309. package/lib/vendor/blamejs/lib/auth/password.js +693 -0
  310. package/lib/vendor/blamejs/lib/auth/saml.js +2109 -0
  311. package/lib/vendor/blamejs/lib/auth/sd-jwt-vc-disclosure.js +95 -0
  312. package/lib/vendor/blamejs/lib/auth/sd-jwt-vc-holder.js +225 -0
  313. package/lib/vendor/blamejs/lib/auth/sd-jwt-vc-issuer.js +197 -0
  314. package/lib/vendor/blamejs/lib/auth/sd-jwt-vc.js +728 -0
  315. package/lib/vendor/blamejs/lib/auth/status-list.js +272 -0
  316. package/lib/vendor/blamejs/lib/auth/step-up-policy.js +335 -0
  317. package/lib/vendor/blamejs/lib/auth/step-up.js +454 -0
  318. package/lib/vendor/blamejs/lib/auth-bot-challenge.js +505 -0
  319. package/lib/vendor/blamejs/lib/auth-header.js +148 -0
  320. package/lib/vendor/blamejs/lib/backup/bundle.js +265 -0
  321. package/lib/vendor/blamejs/lib/backup/crypto.js +176 -0
  322. package/lib/vendor/blamejs/lib/backup/index.js +1001 -0
  323. package/lib/vendor/blamejs/lib/backup/manifest.js +443 -0
  324. package/lib/vendor/blamejs/lib/boot-gates.js +174 -0
  325. package/lib/vendor/blamejs/lib/breach-deadline.js +272 -0
  326. package/lib/vendor/blamejs/lib/break-glass.js +1753 -0
  327. package/lib/vendor/blamejs/lib/budr.js +205 -0
  328. package/lib/vendor/blamejs/lib/bundler.js +461 -0
  329. package/lib/vendor/blamejs/lib/cache-redis.js +256 -0
  330. package/lib/vendor/blamejs/lib/cache-status.js +288 -0
  331. package/lib/vendor/blamejs/lib/cache.js +1331 -0
  332. package/lib/vendor/blamejs/lib/calendar.js +1240 -0
  333. package/lib/vendor/blamejs/lib/canonical-json.js +143 -0
  334. package/lib/vendor/blamejs/lib/cdn-cache-control.js +473 -0
  335. package/lib/vendor/blamejs/lib/cert.js +763 -0
  336. package/lib/vendor/blamejs/lib/chain-writer.js +259 -0
  337. package/lib/vendor/blamejs/lib/circuit-breaker.js +101 -0
  338. package/lib/vendor/blamejs/lib/cli-helpers.js +237 -0
  339. package/lib/vendor/blamejs/lib/cli.js +2328 -0
  340. package/lib/vendor/blamejs/lib/client-hints.js +318 -0
  341. package/lib/vendor/blamejs/lib/cloud-events.js +277 -0
  342. package/lib/vendor/blamejs/lib/cluster-provider-db.js +317 -0
  343. package/lib/vendor/blamejs/lib/cluster-storage.js +351 -0
  344. package/lib/vendor/blamejs/lib/cluster.js +1017 -0
  345. package/lib/vendor/blamejs/lib/cms-codec.js +826 -0
  346. package/lib/vendor/blamejs/lib/codepoint-class.js +262 -0
  347. package/lib/vendor/blamejs/lib/compliance-ai-act-logging.js +190 -0
  348. package/lib/vendor/blamejs/lib/compliance-ai-act-prohibited.js +205 -0
  349. package/lib/vendor/blamejs/lib/compliance-ai-act-risk.js +189 -0
  350. package/lib/vendor/blamejs/lib/compliance-ai-act-transparency.js +200 -0
  351. package/lib/vendor/blamejs/lib/compliance-ai-act.js +821 -0
  352. package/lib/vendor/blamejs/lib/compliance-eaa.js +204 -0
  353. package/lib/vendor/blamejs/lib/compliance-sanctions-aliases.js +167 -0
  354. package/lib/vendor/blamejs/lib/compliance-sanctions-fetcher.js +206 -0
  355. package/lib/vendor/blamejs/lib/compliance-sanctions-fuzzy.js +297 -0
  356. package/lib/vendor/blamejs/lib/compliance-sanctions.js +569 -0
  357. package/lib/vendor/blamejs/lib/compliance.js +1558 -0
  358. package/lib/vendor/blamejs/lib/config-drift.js +426 -0
  359. package/lib/vendor/blamejs/lib/config.js +446 -0
  360. package/lib/vendor/blamejs/lib/consent.js +369 -0
  361. package/lib/vendor/blamejs/lib/constants.js +209 -0
  362. package/lib/vendor/blamejs/lib/content-credentials.js +704 -0
  363. package/lib/vendor/blamejs/lib/cookies.js +560 -0
  364. package/lib/vendor/blamejs/lib/cra-report.js +299 -0
  365. package/lib/vendor/blamejs/lib/credential-hash.js +394 -0
  366. package/lib/vendor/blamejs/lib/crypto-field.js +1017 -0
  367. package/lib/vendor/blamejs/lib/crypto-hpke-pq.js +187 -0
  368. package/lib/vendor/blamejs/lib/crypto-hpke.js +256 -0
  369. package/lib/vendor/blamejs/lib/crypto.js +1908 -0
  370. package/lib/vendor/blamejs/lib/csp.js +271 -0
  371. package/lib/vendor/blamejs/lib/csv.js +418 -0
  372. package/lib/vendor/blamejs/lib/daemon.js +481 -0
  373. package/lib/vendor/blamejs/lib/dark-patterns.js +488 -0
  374. package/lib/vendor/blamejs/lib/data-act.js +328 -0
  375. package/lib/vendor/blamejs/lib/db-collection.js +587 -0
  376. package/lib/vendor/blamejs/lib/db-declare-row-policy.js +267 -0
  377. package/lib/vendor/blamejs/lib/db-declare-view.js +420 -0
  378. package/lib/vendor/blamejs/lib/db-file-lifecycle.js +333 -0
  379. package/lib/vendor/blamejs/lib/db-query.js +802 -0
  380. package/lib/vendor/blamejs/lib/db-role-context.js +50 -0
  381. package/lib/vendor/blamejs/lib/db-schema.js +322 -0
  382. package/lib/vendor/blamejs/lib/db.js +3111 -0
  383. package/lib/vendor/blamejs/lib/dbsc.js +299 -0
  384. package/lib/vendor/blamejs/lib/ddl-change-control.js +523 -0
  385. package/lib/vendor/blamejs/lib/deprecate.js +377 -0
  386. package/lib/vendor/blamejs/lib/dev.js +405 -0
  387. package/lib/vendor/blamejs/lib/dora.js +402 -0
  388. package/lib/vendor/blamejs/lib/dr-runbook.js +368 -0
  389. package/lib/vendor/blamejs/lib/dsr.js +1188 -0
  390. package/lib/vendor/blamejs/lib/dual-control.js +526 -0
  391. package/lib/vendor/blamejs/lib/early-hints.js +212 -0
  392. package/lib/vendor/blamejs/lib/error-page.js +420 -0
  393. package/lib/vendor/blamejs/lib/events.js +214 -0
  394. package/lib/vendor/blamejs/lib/external-db-migrate.js +659 -0
  395. package/lib/vendor/blamejs/lib/external-db.js +1877 -0
  396. package/lib/vendor/blamejs/lib/fapi2.js +394 -0
  397. package/lib/vendor/blamejs/lib/fda-21cfr11.js +395 -0
  398. package/lib/vendor/blamejs/lib/fdx.js +370 -0
  399. package/lib/vendor/blamejs/lib/fedcm.js +264 -0
  400. package/lib/vendor/blamejs/lib/file-type.js +360 -0
  401. package/lib/vendor/blamejs/lib/file-upload.js +1256 -0
  402. package/lib/vendor/blamejs/lib/flag-cache.js +136 -0
  403. package/lib/vendor/blamejs/lib/flag-evaluation-context.js +135 -0
  404. package/lib/vendor/blamejs/lib/flag-providers.js +279 -0
  405. package/lib/vendor/blamejs/lib/flag-targeting.js +210 -0
  406. package/lib/vendor/blamejs/lib/flag.js +346 -0
  407. package/lib/vendor/blamejs/lib/forms.js +525 -0
  408. package/lib/vendor/blamejs/lib/framework-error.js +724 -0
  409. package/lib/vendor/blamejs/lib/framework-schema.js +845 -0
  410. package/lib/vendor/blamejs/lib/framework-sha1-hibp.js +34 -0
  411. package/lib/vendor/blamejs/lib/fsm.js +469 -0
  412. package/lib/vendor/blamejs/lib/gate-contract.js +1661 -0
  413. package/lib/vendor/blamejs/lib/gdpr-ropa.js +261 -0
  414. package/lib/vendor/blamejs/lib/graphql-federation.js +234 -0
  415. package/lib/vendor/blamejs/lib/guard-agent-registry.js +179 -0
  416. package/lib/vendor/blamejs/lib/guard-all.js +555 -0
  417. package/lib/vendor/blamejs/lib/guard-archive.js +901 -0
  418. package/lib/vendor/blamejs/lib/guard-auth.js +451 -0
  419. package/lib/vendor/blamejs/lib/guard-cidr.js +676 -0
  420. package/lib/vendor/blamejs/lib/guard-csv.js +1176 -0
  421. package/lib/vendor/blamejs/lib/guard-domain.js +814 -0
  422. package/lib/vendor/blamejs/lib/guard-dsn.js +382 -0
  423. package/lib/vendor/blamejs/lib/guard-email.js +951 -0
  424. package/lib/vendor/blamejs/lib/guard-envelope.js +294 -0
  425. package/lib/vendor/blamejs/lib/guard-event-bus-payload.js +217 -0
  426. package/lib/vendor/blamejs/lib/guard-event-bus-topic.js +150 -0
  427. package/lib/vendor/blamejs/lib/guard-filename.js +956 -0
  428. package/lib/vendor/blamejs/lib/guard-graphql.js +731 -0
  429. package/lib/vendor/blamejs/lib/guard-html-wcag-aria.js +164 -0
  430. package/lib/vendor/blamejs/lib/guard-html-wcag-forms.js +144 -0
  431. package/lib/vendor/blamejs/lib/guard-html-wcag-tables.js +154 -0
  432. package/lib/vendor/blamejs/lib/guard-html-wcag-tagwalk.js +44 -0
  433. package/lib/vendor/blamejs/lib/guard-html-wcag.js +470 -0
  434. package/lib/vendor/blamejs/lib/guard-html.js +1209 -0
  435. package/lib/vendor/blamejs/lib/guard-idempotency-key.js +151 -0
  436. package/lib/vendor/blamejs/lib/guard-image.js +584 -0
  437. package/lib/vendor/blamejs/lib/guard-imap-command.js +337 -0
  438. package/lib/vendor/blamejs/lib/guard-jmap.js +321 -0
  439. package/lib/vendor/blamejs/lib/guard-json.js +935 -0
  440. package/lib/vendor/blamejs/lib/guard-jsonpath.js +512 -0
  441. package/lib/vendor/blamejs/lib/guard-jwt.js +772 -0
  442. package/lib/vendor/blamejs/lib/guard-list-id.js +318 -0
  443. package/lib/vendor/blamejs/lib/guard-list-unsubscribe.js +412 -0
  444. package/lib/vendor/blamejs/lib/guard-mail-compose.js +282 -0
  445. package/lib/vendor/blamejs/lib/guard-mail-move.js +202 -0
  446. package/lib/vendor/blamejs/lib/guard-mail-query.js +310 -0
  447. package/lib/vendor/blamejs/lib/guard-mail-reply.js +172 -0
  448. package/lib/vendor/blamejs/lib/guard-mail-sieve.js +207 -0
  449. package/lib/vendor/blamejs/lib/guard-managesieve-command.js +566 -0
  450. package/lib/vendor/blamejs/lib/guard-markdown.js +768 -0
  451. package/lib/vendor/blamejs/lib/guard-message-id.js +267 -0
  452. package/lib/vendor/blamejs/lib/guard-mime.js +609 -0
  453. package/lib/vendor/blamejs/lib/guard-oauth.js +650 -0
  454. package/lib/vendor/blamejs/lib/guard-pdf.js +569 -0
  455. package/lib/vendor/blamejs/lib/guard-pop3-command.js +317 -0
  456. package/lib/vendor/blamejs/lib/guard-posture-chain.js +201 -0
  457. package/lib/vendor/blamejs/lib/guard-regex.js +632 -0
  458. package/lib/vendor/blamejs/lib/guard-saga-config.js +157 -0
  459. package/lib/vendor/blamejs/lib/guard-shell.js +522 -0
  460. package/lib/vendor/blamejs/lib/guard-smtp-command.js +594 -0
  461. package/lib/vendor/blamejs/lib/guard-snapshot-envelope.js +168 -0
  462. package/lib/vendor/blamejs/lib/guard-stream-args.js +166 -0
  463. package/lib/vendor/blamejs/lib/guard-svg.js +1163 -0
  464. package/lib/vendor/blamejs/lib/guard-template.js +490 -0
  465. package/lib/vendor/blamejs/lib/guard-tenant-id.js +138 -0
  466. package/lib/vendor/blamejs/lib/guard-time.js +586 -0
  467. package/lib/vendor/blamejs/lib/guard-trace-context.js +172 -0
  468. package/lib/vendor/blamejs/lib/guard-uuid.js +548 -0
  469. package/lib/vendor/blamejs/lib/guard-xml.js +666 -0
  470. package/lib/vendor/blamejs/lib/guard-yaml.js +726 -0
  471. package/lib/vendor/blamejs/lib/hal.js +125 -0
  472. package/lib/vendor/blamejs/lib/handlers.js +350 -0
  473. package/lib/vendor/blamejs/lib/honeytoken.js +168 -0
  474. package/lib/vendor/blamejs/lib/html-balance.js +347 -0
  475. package/lib/vendor/blamejs/lib/http-client-cache.js +923 -0
  476. package/lib/vendor/blamejs/lib/http-client-cookie-jar.js +519 -0
  477. package/lib/vendor/blamejs/lib/http-client.js +2152 -0
  478. package/lib/vendor/blamejs/lib/http-message-signature.js +589 -0
  479. package/lib/vendor/blamejs/lib/http2-teardown.js +34 -0
  480. package/lib/vendor/blamejs/lib/i18n-messageformat.js +398 -0
  481. package/lib/vendor/blamejs/lib/i18n.js +931 -0
  482. package/lib/vendor/blamejs/lib/iab-mspa.js +257 -0
  483. package/lib/vendor/blamejs/lib/iab-tcf.js +461 -0
  484. package/lib/vendor/blamejs/lib/importmap-integrity.js +90 -0
  485. package/lib/vendor/blamejs/lib/inbox.js +435 -0
  486. package/lib/vendor/blamejs/lib/incident-report.js +314 -0
  487. package/lib/vendor/blamejs/lib/ip-utils.js +102 -0
  488. package/lib/vendor/blamejs/lib/jobs.js +185 -0
  489. package/lib/vendor/blamejs/lib/jose-jwe-experimental.js +228 -0
  490. package/lib/vendor/blamejs/lib/jsonapi.js +230 -0
  491. package/lib/vendor/blamejs/lib/keychain.js +865 -0
  492. package/lib/vendor/blamejs/lib/lazy-require.js +48 -0
  493. package/lib/vendor/blamejs/lib/legal-hold.js +374 -0
  494. package/lib/vendor/blamejs/lib/local-db-thin.js +321 -0
  495. package/lib/vendor/blamejs/lib/log-stream-cloudwatch.js +369 -0
  496. package/lib/vendor/blamejs/lib/log-stream-local.js +146 -0
  497. package/lib/vendor/blamejs/lib/log-stream-otlp-grpc.js +410 -0
  498. package/lib/vendor/blamejs/lib/log-stream-otlp.js +286 -0
  499. package/lib/vendor/blamejs/lib/log-stream-syslog.js +310 -0
  500. package/lib/vendor/blamejs/lib/log-stream-webhook.js +199 -0
  501. package/lib/vendor/blamejs/lib/log-stream.js +584 -0
  502. package/lib/vendor/blamejs/lib/log.js +625 -0
  503. package/lib/vendor/blamejs/lib/lro.js +200 -0
  504. package/lib/vendor/blamejs/lib/mail-agent.js +786 -0
  505. package/lib/vendor/blamejs/lib/mail-arc-sign.js +417 -0
  506. package/lib/vendor/blamejs/lib/mail-arf.js +343 -0
  507. package/lib/vendor/blamejs/lib/mail-auth.js +2144 -0
  508. package/lib/vendor/blamejs/lib/mail-bimi.js +1047 -0
  509. package/lib/vendor/blamejs/lib/mail-bounce.js +955 -0
  510. package/lib/vendor/blamejs/lib/mail-crypto-pgp.js +1286 -0
  511. package/lib/vendor/blamejs/lib/mail-crypto-smime.js +789 -0
  512. package/lib/vendor/blamejs/lib/mail-crypto.js +108 -0
  513. package/lib/vendor/blamejs/lib/mail-dav.js +1224 -0
  514. package/lib/vendor/blamejs/lib/mail-deploy.js +1119 -0
  515. package/lib/vendor/blamejs/lib/mail-dkim.js +1250 -0
  516. package/lib/vendor/blamejs/lib/mail-greylist.js +448 -0
  517. package/lib/vendor/blamejs/lib/mail-helo.js +473 -0
  518. package/lib/vendor/blamejs/lib/mail-journal.js +435 -0
  519. package/lib/vendor/blamejs/lib/mail-mdn.js +424 -0
  520. package/lib/vendor/blamejs/lib/mail-rbl.js +392 -0
  521. package/lib/vendor/blamejs/lib/mail-require-tls.js +198 -0
  522. package/lib/vendor/blamejs/lib/mail-scan.js +502 -0
  523. package/lib/vendor/blamejs/lib/mail-send-deliver.js +629 -0
  524. package/lib/vendor/blamejs/lib/mail-server-imap.js +1858 -0
  525. package/lib/vendor/blamejs/lib/mail-server-jmap.js +1565 -0
  526. package/lib/vendor/blamejs/lib/mail-server-managesieve.js +908 -0
  527. package/lib/vendor/blamejs/lib/mail-server-mx.js +969 -0
  528. package/lib/vendor/blamejs/lib/mail-server-pop3.js +915 -0
  529. package/lib/vendor/blamejs/lib/mail-server-rate-limit.js +315 -0
  530. package/lib/vendor/blamejs/lib/mail-server-registry.js +378 -0
  531. package/lib/vendor/blamejs/lib/mail-server-submission.js +1396 -0
  532. package/lib/vendor/blamejs/lib/mail-server-tls.js +445 -0
  533. package/lib/vendor/blamejs/lib/mail-sieve.js +557 -0
  534. package/lib/vendor/blamejs/lib/mail-spam-score.js +284 -0
  535. package/lib/vendor/blamejs/lib/mail-srs.js +248 -0
  536. package/lib/vendor/blamejs/lib/mail-store-fts.js +394 -0
  537. package/lib/vendor/blamejs/lib/mail-store.js +929 -0
  538. package/lib/vendor/blamejs/lib/mail-unsubscribe.js +400 -0
  539. package/lib/vendor/blamejs/lib/mail.js +1971 -0
  540. package/lib/vendor/blamejs/lib/mcp-tool-registry.js +473 -0
  541. package/lib/vendor/blamejs/lib/mcp.js +950 -0
  542. package/lib/vendor/blamejs/lib/metrics.js +1503 -0
  543. package/lib/vendor/blamejs/lib/middleware/age-gate.js +177 -0
  544. package/lib/vendor/blamejs/lib/middleware/ai-act-disclosure.js +203 -0
  545. package/lib/vendor/blamejs/lib/middleware/api-encrypt.js +981 -0
  546. package/lib/vendor/blamejs/lib/middleware/assetlinks.js +137 -0
  547. package/lib/vendor/blamejs/lib/middleware/asyncapi-serve.js +171 -0
  548. package/lib/vendor/blamejs/lib/middleware/attach-user.js +220 -0
  549. package/lib/vendor/blamejs/lib/middleware/bearer-auth.js +293 -0
  550. package/lib/vendor/blamejs/lib/middleware/body-parser.js +1519 -0
  551. package/lib/vendor/blamejs/lib/middleware/bot-disclose.js +183 -0
  552. package/lib/vendor/blamejs/lib/middleware/bot-guard.js +217 -0
  553. package/lib/vendor/blamejs/lib/middleware/clear-site-data.js +122 -0
  554. package/lib/vendor/blamejs/lib/middleware/compose-pipeline.js +355 -0
  555. package/lib/vendor/blamejs/lib/middleware/compression.js +489 -0
  556. package/lib/vendor/blamejs/lib/middleware/cookies.js +130 -0
  557. package/lib/vendor/blamejs/lib/middleware/cors.js +386 -0
  558. package/lib/vendor/blamejs/lib/middleware/csp-nonce.js +388 -0
  559. package/lib/vendor/blamejs/lib/middleware/csp-report.js +167 -0
  560. package/lib/vendor/blamejs/lib/middleware/csrf-protect.js +499 -0
  561. package/lib/vendor/blamejs/lib/middleware/daily-byte-quota.js +243 -0
  562. package/lib/vendor/blamejs/lib/middleware/db-role-for.js +304 -0
  563. package/lib/vendor/blamejs/lib/middleware/dpop.js +402 -0
  564. package/lib/vendor/blamejs/lib/middleware/error-handler.js +69 -0
  565. package/lib/vendor/blamejs/lib/middleware/fetch-metadata.js +168 -0
  566. package/lib/vendor/blamejs/lib/middleware/flag-context.js +110 -0
  567. package/lib/vendor/blamejs/lib/middleware/gpc.js +153 -0
  568. package/lib/vendor/blamejs/lib/middleware/headers.js +242 -0
  569. package/lib/vendor/blamejs/lib/middleware/health.js +438 -0
  570. package/lib/vendor/blamejs/lib/middleware/host-allowlist.js +189 -0
  571. package/lib/vendor/blamejs/lib/middleware/idempotency-key.js +964 -0
  572. package/lib/vendor/blamejs/lib/middleware/index.js +183 -0
  573. package/lib/vendor/blamejs/lib/middleware/nel.js +214 -0
  574. package/lib/vendor/blamejs/lib/middleware/network-allowlist.js +237 -0
  575. package/lib/vendor/blamejs/lib/middleware/no-cache.js +106 -0
  576. package/lib/vendor/blamejs/lib/middleware/openapi-serve.js +177 -0
  577. package/lib/vendor/blamejs/lib/middleware/protected-resource-metadata.js +277 -0
  578. package/lib/vendor/blamejs/lib/middleware/rate-limit.js +556 -0
  579. package/lib/vendor/blamejs/lib/middleware/request-id.js +79 -0
  580. package/lib/vendor/blamejs/lib/middleware/request-log.js +205 -0
  581. package/lib/vendor/blamejs/lib/middleware/require-aal.js +138 -0
  582. package/lib/vendor/blamejs/lib/middleware/require-auth.js +144 -0
  583. package/lib/vendor/blamejs/lib/middleware/require-bound-key.js +290 -0
  584. package/lib/vendor/blamejs/lib/middleware/require-content-type.js +113 -0
  585. package/lib/vendor/blamejs/lib/middleware/require-methods.js +97 -0
  586. package/lib/vendor/blamejs/lib/middleware/require-mtls.js +212 -0
  587. package/lib/vendor/blamejs/lib/middleware/require-step-up.js +226 -0
  588. package/lib/vendor/blamejs/lib/middleware/scim-server.js +375 -0
  589. package/lib/vendor/blamejs/lib/middleware/security-headers.js +285 -0
  590. package/lib/vendor/blamejs/lib/middleware/security-txt.js +170 -0
  591. package/lib/vendor/blamejs/lib/middleware/span-http-server.js +280 -0
  592. package/lib/vendor/blamejs/lib/middleware/speculation-rules.js +323 -0
  593. package/lib/vendor/blamejs/lib/middleware/sse.js +200 -0
  594. package/lib/vendor/blamejs/lib/middleware/trace-log-correlation.js +167 -0
  595. package/lib/vendor/blamejs/lib/middleware/trace-propagate.js +148 -0
  596. package/lib/vendor/blamejs/lib/middleware/tus-upload.js +749 -0
  597. package/lib/vendor/blamejs/lib/middleware/web-app-manifest.js +164 -0
  598. package/lib/vendor/blamejs/lib/migration-files.js +37 -0
  599. package/lib/vendor/blamejs/lib/migrations.js +385 -0
  600. package/lib/vendor/blamejs/lib/mime-parse.js +198 -0
  601. package/lib/vendor/blamejs/lib/money.js +699 -0
  602. package/lib/vendor/blamejs/lib/mtls-ca.js +572 -0
  603. package/lib/vendor/blamejs/lib/mtls-engine-default.js +501 -0
  604. package/lib/vendor/blamejs/lib/network-byte-quota.js +308 -0
  605. package/lib/vendor/blamejs/lib/network-dns-resolver.js +533 -0
  606. package/lib/vendor/blamejs/lib/network-dns.js +1930 -0
  607. package/lib/vendor/blamejs/lib/network-heartbeat.js +425 -0
  608. package/lib/vendor/blamejs/lib/network-nts.js +574 -0
  609. package/lib/vendor/blamejs/lib/network-proxy.js +265 -0
  610. package/lib/vendor/blamejs/lib/network-smtp-policy.js +836 -0
  611. package/lib/vendor/blamejs/lib/network-tls.js +3126 -0
  612. package/lib/vendor/blamejs/lib/network.js +346 -0
  613. package/lib/vendor/blamejs/lib/nis2-report.js +181 -0
  614. package/lib/vendor/blamejs/lib/nist-crosswalk.js +293 -0
  615. package/lib/vendor/blamejs/lib/nonce-store.js +177 -0
  616. package/lib/vendor/blamejs/lib/notify.js +683 -0
  617. package/lib/vendor/blamejs/lib/ntp-check.js +458 -0
  618. package/lib/vendor/blamejs/lib/numeric-bounds.js +111 -0
  619. package/lib/vendor/blamejs/lib/numeric-checks.js +40 -0
  620. package/lib/vendor/blamejs/lib/object-store/azure-blob-bucket-ops.js +349 -0
  621. package/lib/vendor/blamejs/lib/object-store/azure-blob.js +488 -0
  622. package/lib/vendor/blamejs/lib/object-store/gcs-bucket-ops.js +351 -0
  623. package/lib/vendor/blamejs/lib/object-store/gcs.js +515 -0
  624. package/lib/vendor/blamejs/lib/object-store/http-put.js +153 -0
  625. package/lib/vendor/blamejs/lib/object-store/http-request.js +38 -0
  626. package/lib/vendor/blamejs/lib/object-store/index.js +197 -0
  627. package/lib/vendor/blamejs/lib/object-store/local.js +163 -0
  628. package/lib/vendor/blamejs/lib/object-store/sigv4-bucket-ops.js +1133 -0
  629. package/lib/vendor/blamejs/lib/object-store/sigv4.js +957 -0
  630. package/lib/vendor/blamejs/lib/observability-otlp-exporter.js +420 -0
  631. package/lib/vendor/blamejs/lib/observability-tracer.js +395 -0
  632. package/lib/vendor/blamejs/lib/observability.js +720 -0
  633. package/lib/vendor/blamejs/lib/openapi-paths-builder.js +248 -0
  634. package/lib/vendor/blamejs/lib/openapi-schema-walk.js +192 -0
  635. package/lib/vendor/blamejs/lib/openapi-security.js +169 -0
  636. package/lib/vendor/blamejs/lib/openapi-yaml.js +154 -0
  637. package/lib/vendor/blamejs/lib/openapi.js +489 -0
  638. package/lib/vendor/blamejs/lib/otel-export.js +278 -0
  639. package/lib/vendor/blamejs/lib/outbox.js +547 -0
  640. package/lib/vendor/blamejs/lib/pagination.js +542 -0
  641. package/lib/vendor/blamejs/lib/parsers/index.js +91 -0
  642. package/lib/vendor/blamejs/lib/parsers/safe-env.js +642 -0
  643. package/lib/vendor/blamejs/lib/parsers/safe-ini.js +293 -0
  644. package/lib/vendor/blamejs/lib/parsers/safe-toml.js +784 -0
  645. package/lib/vendor/blamejs/lib/parsers/safe-xml.js +390 -0
  646. package/lib/vendor/blamejs/lib/parsers/safe-yaml.js +1015 -0
  647. package/lib/vendor/blamejs/lib/permissions.js +793 -0
  648. package/lib/vendor/blamejs/lib/pick.js +105 -0
  649. package/lib/vendor/blamejs/lib/pqc-agent.js +351 -0
  650. package/lib/vendor/blamejs/lib/pqc-gate.js +279 -0
  651. package/lib/vendor/blamejs/lib/pqc-software.js +271 -0
  652. package/lib/vendor/blamejs/lib/problem-details.js +482 -0
  653. package/lib/vendor/blamejs/lib/process-spawn.js +196 -0
  654. package/lib/vendor/blamejs/lib/promise-pool.js +162 -0
  655. package/lib/vendor/blamejs/lib/protobuf-encoder.js +190 -0
  656. package/lib/vendor/blamejs/lib/protocol-dispatcher.js +161 -0
  657. package/lib/vendor/blamejs/lib/public-suffix.js +403 -0
  658. package/lib/vendor/blamejs/lib/pubsub-cluster.js +154 -0
  659. package/lib/vendor/blamejs/lib/pubsub-redis.js +167 -0
  660. package/lib/vendor/blamejs/lib/pubsub.js +463 -0
  661. package/lib/vendor/blamejs/lib/queue-local.js +476 -0
  662. package/lib/vendor/blamejs/lib/queue-redis.js +745 -0
  663. package/lib/vendor/blamejs/lib/queue-sqs.js +319 -0
  664. package/lib/vendor/blamejs/lib/queue.js +1016 -0
  665. package/lib/vendor/blamejs/lib/redact.js +1007 -0
  666. package/lib/vendor/blamejs/lib/redis-client.js +520 -0
  667. package/lib/vendor/blamejs/lib/render.js +285 -0
  668. package/lib/vendor/blamejs/lib/request-helpers.js +767 -0
  669. package/lib/vendor/blamejs/lib/resource-access-lock.js +116 -0
  670. package/lib/vendor/blamejs/lib/restore-bundle.js +340 -0
  671. package/lib/vendor/blamejs/lib/restore-rollback.js +365 -0
  672. package/lib/vendor/blamejs/lib/restore.js +409 -0
  673. package/lib/vendor/blamejs/lib/retention.js +640 -0
  674. package/lib/vendor/blamejs/lib/retry.js +523 -0
  675. package/lib/vendor/blamejs/lib/router.js +1289 -0
  676. package/lib/vendor/blamejs/lib/safe-async.js +1184 -0
  677. package/lib/vendor/blamejs/lib/safe-buffer.js +562 -0
  678. package/lib/vendor/blamejs/lib/safe-decompress.js +297 -0
  679. package/lib/vendor/blamejs/lib/safe-dns.js +665 -0
  680. package/lib/vendor/blamejs/lib/safe-ical.js +634 -0
  681. package/lib/vendor/blamejs/lib/safe-icap.js +502 -0
  682. package/lib/vendor/blamejs/lib/safe-json.js +946 -0
  683. package/lib/vendor/blamejs/lib/safe-jsonpath.js +285 -0
  684. package/lib/vendor/blamejs/lib/safe-mime.js +831 -0
  685. package/lib/vendor/blamejs/lib/safe-mount-info.js +306 -0
  686. package/lib/vendor/blamejs/lib/safe-path.js +254 -0
  687. package/lib/vendor/blamejs/lib/safe-redirect.js +106 -0
  688. package/lib/vendor/blamejs/lib/safe-schema.js +1810 -0
  689. package/lib/vendor/blamejs/lib/safe-sieve.js +684 -0
  690. package/lib/vendor/blamejs/lib/safe-smtp.js +185 -0
  691. package/lib/vendor/blamejs/lib/safe-sql.js +363 -0
  692. package/lib/vendor/blamejs/lib/safe-url.js +428 -0
  693. package/lib/vendor/blamejs/lib/safe-vcard.js +473 -0
  694. package/lib/vendor/blamejs/lib/sandbox-worker.js +135 -0
  695. package/lib/vendor/blamejs/lib/sandbox.js +358 -0
  696. package/lib/vendor/blamejs/lib/scheduler.js +827 -0
  697. package/lib/vendor/blamejs/lib/sd-notify.js +269 -0
  698. package/lib/vendor/blamejs/lib/sec-cyber.js +214 -0
  699. package/lib/vendor/blamejs/lib/security-assert.js +395 -0
  700. package/lib/vendor/blamejs/lib/seeders.js +620 -0
  701. package/lib/vendor/blamejs/lib/self-update-standalone-verifier.js +309 -0
  702. package/lib/vendor/blamejs/lib/self-update.js +804 -0
  703. package/lib/vendor/blamejs/lib/server-timing.js +174 -0
  704. package/lib/vendor/blamejs/lib/session-device-binding.js +431 -0
  705. package/lib/vendor/blamejs/lib/session-stores.js +138 -0
  706. package/lib/vendor/blamejs/lib/session.js +1162 -0
  707. package/lib/vendor/blamejs/lib/slug.js +381 -0
  708. package/lib/vendor/blamejs/lib/sse.js +349 -0
  709. package/lib/vendor/blamejs/lib/ssrf-guard.js +792 -0
  710. package/lib/vendor/blamejs/lib/standard-webhooks.js +183 -0
  711. package/lib/vendor/blamejs/lib/static.js +1249 -0
  712. package/lib/vendor/blamejs/lib/storage.js +1272 -0
  713. package/lib/vendor/blamejs/lib/stream-throttle.js +235 -0
  714. package/lib/vendor/blamejs/lib/structured-fields.js +244 -0
  715. package/lib/vendor/blamejs/lib/subject.js +667 -0
  716. package/lib/vendor/blamejs/lib/tcpa-10dlc.js +175 -0
  717. package/lib/vendor/blamejs/lib/template.js +931 -0
  718. package/lib/vendor/blamejs/lib/tenant-quota.js +545 -0
  719. package/lib/vendor/blamejs/lib/test-harness.js +275 -0
  720. package/lib/vendor/blamejs/lib/testing.js +1185 -0
  721. package/lib/vendor/blamejs/lib/time.js +578 -0
  722. package/lib/vendor/blamejs/lib/tls-exporter.js +239 -0
  723. package/lib/vendor/blamejs/lib/totp.js +318 -0
  724. package/lib/vendor/blamejs/lib/tracing.js +546 -0
  725. package/lib/vendor/blamejs/lib/uuid.js +207 -0
  726. package/lib/vendor/blamejs/lib/validate-opts.js +381 -0
  727. package/lib/vendor/blamejs/lib/vault/index.js +638 -0
  728. package/lib/vendor/blamejs/lib/vault/passphrase-ops.js +311 -0
  729. package/lib/vendor/blamejs/lib/vault/passphrase-source.js +198 -0
  730. package/lib/vendor/blamejs/lib/vault/rotate.js +803 -0
  731. package/lib/vendor/blamejs/lib/vault/seal-pem-file.js +471 -0
  732. package/lib/vendor/blamejs/lib/vault/wrap.js +296 -0
  733. package/lib/vendor/blamejs/lib/vault-aad.js +259 -0
  734. package/lib/vendor/blamejs/lib/vendor/.vendor-data-pubkey +4 -0
  735. package/lib/vendor/blamejs/lib/vendor/MANIFEST.json +161 -0
  736. package/lib/vendor/blamejs/lib/vendor/bimi-trust-anchors.data.js +68 -0
  737. package/lib/vendor/blamejs/lib/vendor/bimi-trust-anchors.pem +33 -0
  738. package/lib/vendor/blamejs/lib/vendor/common-passwords-top-10000.data.js +1325 -0
  739. package/lib/vendor/blamejs/lib/vendor/common-passwords-top-10000.txt +10002 -0
  740. package/lib/vendor/blamejs/lib/vendor/noble-ciphers.cjs +9 -0
  741. package/lib/vendor/blamejs/lib/vendor/noble-post-quantum.cjs +18 -0
  742. package/lib/vendor/blamejs/lib/vendor/pki.cjs +181 -0
  743. package/lib/vendor/blamejs/lib/vendor/public-suffix-list.dat +16382 -0
  744. package/lib/vendor/blamejs/lib/vendor/public-suffix-list.data.js +5881 -0
  745. package/lib/vendor/blamejs/lib/vendor/simplewebauthn-server.cjs +328 -0
  746. package/lib/vendor/blamejs/lib/vendor/vendor-data-pubkey.js +16 -0
  747. package/lib/vendor/blamejs/lib/vendor-data.js +520 -0
  748. package/lib/vendor/blamejs/lib/vex.js +630 -0
  749. package/lib/vendor/blamejs/lib/watcher.js +608 -0
  750. package/lib/vendor/blamejs/lib/web-push-vapid.js +322 -0
  751. package/lib/vendor/blamejs/lib/webhook.js +977 -0
  752. package/lib/vendor/blamejs/lib/websocket-channels.js +327 -0
  753. package/lib/vendor/blamejs/lib/websocket.js +1561 -0
  754. package/lib/vendor/blamejs/lib/wiki-concepts.js +338 -0
  755. package/lib/vendor/blamejs/lib/worker-pool.js +464 -0
  756. package/lib/vendor/blamejs/lib/ws-client.js +978 -0
  757. package/lib/vendor/blamejs/lib/xml-c14n.js +506 -0
  758. package/lib/vendor/blamejs/memory/specs/node-26-map-getorinsert-migration.md +164 -0
  759. package/lib/vendor/blamejs/oss-fuzz/projects/blamejs/Dockerfile +19 -0
  760. package/lib/vendor/blamejs/oss-fuzz/projects/blamejs/README.md +88 -0
  761. package/lib/vendor/blamejs/oss-fuzz/projects/blamejs/build.sh +26 -0
  762. package/lib/vendor/blamejs/oss-fuzz/projects/blamejs/project.yaml +28 -0
  763. package/lib/vendor/blamejs/package.json +81 -0
  764. package/lib/vendor/blamejs/release-notes/v0.0.x.json +310 -0
  765. package/lib/vendor/blamejs/release-notes/v0.1.x.json +1798 -0
  766. package/lib/vendor/blamejs/release-notes/v0.10.x.json +1288 -0
  767. package/lib/vendor/blamejs/release-notes/v0.11.x.json +2551 -0
  768. package/lib/vendor/blamejs/release-notes/v0.12.0.json +64 -0
  769. package/lib/vendor/blamejs/release-notes/v0.12.1.json +32 -0
  770. package/lib/vendor/blamejs/release-notes/v0.12.2.json +45 -0
  771. package/lib/vendor/blamejs/release-notes/v0.2.x.json +706 -0
  772. package/lib/vendor/blamejs/release-notes/v0.3.x.json +786 -0
  773. package/lib/vendor/blamejs/release-notes/v0.4.x.json +588 -0
  774. package/lib/vendor/blamejs/release-notes/v0.5.x.json +390 -0
  775. package/lib/vendor/blamejs/release-notes/v0.6.x.json +1947 -0
  776. package/lib/vendor/blamejs/release-notes/v0.7.x.json +3811 -0
  777. package/lib/vendor/blamejs/release-notes/v0.8.x.json +3318 -0
  778. package/lib/vendor/blamejs/release-notes/v0.9.x.json +2257 -0
  779. package/lib/vendor/blamejs/scripts/build-vendored-sbom.js +325 -0
  780. package/lib/vendor/blamejs/scripts/check-api-snapshot.js +62 -0
  781. package/lib/vendor/blamejs/scripts/check-changelog-extract.js +108 -0
  782. package/lib/vendor/blamejs/scripts/check-pack-against-gitignore.js +83 -0
  783. package/lib/vendor/blamejs/scripts/check-services.js +483 -0
  784. package/lib/vendor/blamejs/scripts/check-vendor-currency.js +349 -0
  785. package/lib/vendor/blamejs/scripts/consolidate-release-notes.js +216 -0
  786. package/lib/vendor/blamejs/scripts/gen-migrating.js +275 -0
  787. package/lib/vendor/blamejs/scripts/generate-changelog-entry.js +577 -0
  788. package/lib/vendor/blamejs/scripts/generate-release-signing-key.js +79 -0
  789. package/lib/vendor/blamejs/scripts/publish-dep-confusion-placeholder.sh +101 -0
  790. package/lib/vendor/blamejs/scripts/refresh-api-snapshot.js +31 -0
  791. package/lib/vendor/blamejs/scripts/refresh-vendor-manifest.js +132 -0
  792. package/lib/vendor/blamejs/scripts/release.js +652 -0
  793. package/lib/vendor/blamejs/scripts/sha3-digest.js +62 -0
  794. package/lib/vendor/blamejs/scripts/sign-release-artifact.js +92 -0
  795. package/lib/vendor/blamejs/scripts/test-integration.js +181 -0
  796. package/lib/vendor/blamejs/scripts/test-wiki-integration.js +126 -0
  797. package/lib/vendor/blamejs/scripts/validate-source-comment-blocks.js +77 -0
  798. package/lib/vendor/blamejs/scripts/vendor-data-gen.js +186 -0
  799. package/lib/vendor/blamejs/scripts/vendor-data-keygen.js +101 -0
  800. package/lib/vendor/blamejs/scripts/vendor-update.sh +278 -0
  801. package/lib/vendor/blamejs/test/00-primitives.js +19075 -0
  802. package/lib/vendor/blamejs/test/10-state.js +622 -0
  803. package/lib/vendor/blamejs/test/20-db.js +561 -0
  804. package/lib/vendor/blamejs/test/30-chain.js +2110 -0
  805. package/lib/vendor/blamejs/test/40-consumers.js +2453 -0
  806. package/lib/vendor/blamejs/test/50-integration.js +486 -0
  807. package/lib/vendor/blamejs/test/_helpers.js +10 -0
  808. package/lib/vendor/blamejs/test/_smoke-worker.js +69 -0
  809. package/lib/vendor/blamejs/test/fixtures/exploit-corpus/corpus.json +368 -0
  810. package/lib/vendor/blamejs/test/fixtures/http-client-stream-payload.txt +2 -0
  811. package/lib/vendor/blamejs/test/fixtures/worker-pool/echo.js +52 -0
  812. package/lib/vendor/blamejs/test/helpers/_codebase-shingle-worker.js +24 -0
  813. package/lib/vendor/blamejs/test/helpers/_codebase-shingle.js +203 -0
  814. package/lib/vendor/blamejs/test/helpers/_shape-match.js +513 -0
  815. package/lib/vendor/blamejs/test/helpers/check.js +36 -0
  816. package/lib/vendor/blamejs/test/helpers/cluster.js +70 -0
  817. package/lib/vendor/blamejs/test/helpers/db.js +143 -0
  818. package/lib/vendor/blamejs/test/helpers/drivers.js +207 -0
  819. package/lib/vendor/blamejs/test/helpers/fs-watch.js +101 -0
  820. package/lib/vendor/blamejs/test/helpers/http.js +14 -0
  821. package/lib/vendor/blamejs/test/helpers/index.js +93 -0
  822. package/lib/vendor/blamejs/test/helpers/json-round-trip.js +120 -0
  823. package/lib/vendor/blamejs/test/helpers/mocks.js +20 -0
  824. package/lib/vendor/blamejs/test/helpers/otel.js +13 -0
  825. package/lib/vendor/blamejs/test/helpers/services.js +380 -0
  826. package/lib/vendor/blamejs/test/helpers/wait.js +206 -0
  827. package/lib/vendor/blamejs/test/integration/cache.test.js +235 -0
  828. package/lib/vendor/blamejs/test/integration/cluster-provider-mysql.test.js +174 -0
  829. package/lib/vendor/blamejs/test/integration/federation-auth.test.js +611 -0
  830. package/lib/vendor/blamejs/test/integration/http-client.test.js +129 -0
  831. package/lib/vendor/blamejs/test/integration/log-stream.test.js +219 -0
  832. package/lib/vendor/blamejs/test/integration/mail-crypto-smime.test.js +181 -0
  833. package/lib/vendor/blamejs/test/integration/mail-dkim.test.js +152 -0
  834. package/lib/vendor/blamejs/test/integration/mail-smtp.test.js +161 -0
  835. package/lib/vendor/blamejs/test/integration/mtls-ca.test.js +289 -0
  836. package/lib/vendor/blamejs/test/integration/network-dns.test.js +123 -0
  837. package/lib/vendor/blamejs/test/integration/network-heartbeat.test.js +101 -0
  838. package/lib/vendor/blamejs/test/integration/ntp-check.test.js +89 -0
  839. package/lib/vendor/blamejs/test/integration/object-store-sigv4.test.js +403 -0
  840. package/lib/vendor/blamejs/test/integration/pqc-pkcs8-forward-compat.test.js +271 -0
  841. package/lib/vendor/blamejs/test/integration/pubsub.test.js +137 -0
  842. package/lib/vendor/blamejs/test/integration/queue-redis.test.js +352 -0
  843. package/lib/vendor/blamejs/test/integration/redis-client-tls.test.js +96 -0
  844. package/lib/vendor/blamejs/test/integration/ssrf-guard.test.js +98 -0
  845. package/lib/vendor/blamejs/test/integration/websocket-permessage-deflate.test.js +261 -0
  846. package/lib/vendor/blamejs/test/integration/ws-client-roundtrip.test.js +230 -0
  847. package/lib/vendor/blamejs/test/layer-0-primitives/a2a-tasks.test.js +211 -0
  848. package/lib/vendor/blamejs/test/layer-0-primitives/a2a.test.js +59 -0
  849. package/lib/vendor/blamejs/test/layer-0-primitives/access-lock.test.js +136 -0
  850. package/lib/vendor/blamejs/test/layer-0-primitives/acme.test.js +219 -0
  851. package/lib/vendor/blamejs/test/layer-0-primitives/age-gate.test.js +69 -0
  852. package/lib/vendor/blamejs/test/layer-0-primitives/agent-event-bus.test.js +266 -0
  853. package/lib/vendor/blamejs/test/layer-0-primitives/agent-idempotency.test.js +262 -0
  854. package/lib/vendor/blamejs/test/layer-0-primitives/agent-orchestrator.test.js +390 -0
  855. package/lib/vendor/blamejs/test/layer-0-primitives/agent-posture-chain.test.js +174 -0
  856. package/lib/vendor/blamejs/test/layer-0-primitives/agent-saga.test.js +279 -0
  857. package/lib/vendor/blamejs/test/layer-0-primitives/agent-snapshot.test.js +322 -0
  858. package/lib/vendor/blamejs/test/layer-0-primitives/agent-stream.test.js +227 -0
  859. package/lib/vendor/blamejs/test/layer-0-primitives/agent-tenant.test.js +302 -0
  860. package/lib/vendor/blamejs/test/layer-0-primitives/agent-trace.test.js +150 -0
  861. package/lib/vendor/blamejs/test/layer-0-primitives/ai-adverse-decision.test.js +44 -0
  862. package/lib/vendor/blamejs/test/layer-0-primitives/ai-content-detect.test.js +150 -0
  863. package/lib/vendor/blamejs/test/layer-0-primitives/ai-input.test.js +50 -0
  864. package/lib/vendor/blamejs/test/layer-0-primitives/ai-model-manifest.test.js +96 -0
  865. package/lib/vendor/blamejs/test/layer-0-primitives/ai-pref.test.js +76 -0
  866. package/lib/vendor/blamejs/test/layer-0-primitives/api-encrypt.test.js +1080 -0
  867. package/lib/vendor/blamejs/test/layer-0-primitives/app-shutdown.test.js +311 -0
  868. package/lib/vendor/blamejs/test/layer-0-primitives/archive-zip-stream.test.js +291 -0
  869. package/lib/vendor/blamejs/test/layer-0-primitives/archive.test.js +140 -0
  870. package/lib/vendor/blamejs/test/layer-0-primitives/arg-parser.test.js +267 -0
  871. package/lib/vendor/blamejs/test/layer-0-primitives/asn1-der.test.js +108 -0
  872. package/lib/vendor/blamejs/test/layer-0-primitives/asyncapi.test.js +929 -0
  873. package/lib/vendor/blamejs/test/layer-0-primitives/atomic-file-conflict-path.test.js +80 -0
  874. package/lib/vendor/blamejs/test/layer-0-primitives/audit-cve-defensive.test.js +176 -0
  875. package/lib/vendor/blamejs/test/layer-0-primitives/audit-daily-review.test.js +132 -0
  876. package/lib/vendor/blamejs/test/layer-0-primitives/audit-export-cadf.test.js +97 -0
  877. package/lib/vendor/blamejs/test/layer-0-primitives/audit-framework-namespaces.test.js +141 -0
  878. package/lib/vendor/blamejs/test/layer-0-primitives/audit-segregation.test.js +115 -0
  879. package/lib/vendor/blamejs/test/layer-0-primitives/audit-sign-ml-dsa-65.test.js +163 -0
  880. package/lib/vendor/blamejs/test/layer-0-primitives/audit-use-store.test.js +246 -0
  881. package/lib/vendor/blamejs/test/layer-0-primitives/auth-bot-challenge-verifier.test.js +485 -0
  882. package/lib/vendor/blamejs/test/layer-0-primitives/auth-bot-challenge.test.js +331 -0
  883. package/lib/vendor/blamejs/test/layer-0-primitives/auth-jwt-defenses.test.js +352 -0
  884. package/lib/vendor/blamejs/test/layer-0-primitives/auth-lockout.test.js +572 -0
  885. package/lib/vendor/blamejs/test/layer-0-primitives/auth-password-audit.test.js +61 -0
  886. package/lib/vendor/blamejs/test/layer-0-primitives/azure-blob-bucket-ops.test.js +258 -0
  887. package/lib/vendor/blamejs/test/layer-0-primitives/backup-manifest-signature.test.js +105 -0
  888. package/lib/vendor/blamejs/test/layer-0-primitives/backup-worker.test.js +34 -0
  889. package/lib/vendor/blamejs/test/layer-0-primitives/bearer-auth.test.js +107 -0
  890. package/lib/vendor/blamejs/test/layer-0-primitives/body-parser-chunked-malformed.test.js +131 -0
  891. package/lib/vendor/blamejs/test/layer-0-primitives/body-parser-smuggling.test.js +118 -0
  892. package/lib/vendor/blamejs/test/layer-0-primitives/boot-gates.test.js +85 -0
  893. package/lib/vendor/blamejs/test/layer-0-primitives/breach-deadline.test.js +38 -0
  894. package/lib/vendor/blamejs/test/layer-0-primitives/break-glass.test.js +861 -0
  895. package/lib/vendor/blamejs/test/layer-0-primitives/budr.test.js +55 -0
  896. package/lib/vendor/blamejs/test/layer-0-primitives/bundler-engine.test.js +209 -0
  897. package/lib/vendor/blamejs/test/layer-0-primitives/cache-status.test.js +129 -0
  898. package/lib/vendor/blamejs/test/layer-0-primitives/cache.test.js +871 -0
  899. package/lib/vendor/blamejs/test/layer-0-primitives/calendar.test.js +891 -0
  900. package/lib/vendor/blamejs/test/layer-0-primitives/canonical-json-jcs.test.js +43 -0
  901. package/lib/vendor/blamejs/test/layer-0-primitives/cdn-cache-control.test.js +243 -0
  902. package/lib/vendor/blamejs/test/layer-0-primitives/cert.test.js +550 -0
  903. package/lib/vendor/blamejs/test/layer-0-primitives/clear-site-data.test.js +107 -0
  904. package/lib/vendor/blamejs/test/layer-0-primitives/cli-api-key.test.js +147 -0
  905. package/lib/vendor/blamejs/test/layer-0-primitives/cli-audit-verify-chain.test.js +104 -0
  906. package/lib/vendor/blamejs/test/layer-0-primitives/cli-backup.test.js +135 -0
  907. package/lib/vendor/blamejs/test/layer-0-primitives/cli-config-drift.test.js +67 -0
  908. package/lib/vendor/blamejs/test/layer-0-primitives/cli-erase.test.js +75 -0
  909. package/lib/vendor/blamejs/test/layer-0-primitives/cli-file-type.test.js +98 -0
  910. package/lib/vendor/blamejs/test/layer-0-primitives/cli-helpers.test.js +145 -0
  911. package/lib/vendor/blamejs/test/layer-0-primitives/cli-mtls.test.js +133 -0
  912. package/lib/vendor/blamejs/test/layer-0-primitives/cli-password.test.js +97 -0
  913. package/lib/vendor/blamejs/test/layer-0-primitives/cli-restore.test.js +160 -0
  914. package/lib/vendor/blamejs/test/layer-0-primitives/cli-retention.test.js +84 -0
  915. package/lib/vendor/blamejs/test/layer-0-primitives/cli-security.test.js +69 -0
  916. package/lib/vendor/blamejs/test/layer-0-primitives/cli-vault.test.js +142 -0
  917. package/lib/vendor/blamejs/test/layer-0-primitives/client-hints.test.js +133 -0
  918. package/lib/vendor/blamejs/test/layer-0-primitives/cms-codec.test.js +237 -0
  919. package/lib/vendor/blamejs/test/layer-0-primitives/codebase-patterns.test.js +9600 -0
  920. package/lib/vendor/blamejs/test/layer-0-primitives/compliance-ai-act.test.js +575 -0
  921. package/lib/vendor/blamejs/test/layer-0-primitives/compliance-cascade.test.js +89 -0
  922. package/lib/vendor/blamejs/test/layer-0-primitives/compliance-eaa.test.js +36 -0
  923. package/lib/vendor/blamejs/test/layer-0-primitives/compliance-sanctions.test.js +712 -0
  924. package/lib/vendor/blamejs/test/layer-0-primitives/compliance.test.js +278 -0
  925. package/lib/vendor/blamejs/test/layer-0-primitives/config-drift.test.js +97 -0
  926. package/lib/vendor/blamejs/test/layer-0-primitives/config.test.js +424 -0
  927. package/lib/vendor/blamejs/test/layer-0-primitives/content-credentials.test.js +94 -0
  928. package/lib/vendor/blamejs/test/layer-0-primitives/cors.test.js +357 -0
  929. package/lib/vendor/blamejs/test/layer-0-primitives/cra-report.test.js +31 -0
  930. package/lib/vendor/blamejs/test/layer-0-primitives/credential-hash.test.js +226 -0
  931. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-base64url.test.js +86 -0
  932. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-envelope.test.js +85 -0
  933. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-hash-files-parallel.test.js +193 -0
  934. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-hash-stream.test.js +98 -0
  935. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-hpke-pq.test.js +132 -0
  936. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-hpke.test.js +155 -0
  937. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-mlkem768-x25519.test.js +129 -0
  938. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-namespace-hash.test.js +0 -0
  939. package/lib/vendor/blamejs/test/layer-0-primitives/crypto-random-int.test.js +72 -0
  940. package/lib/vendor/blamejs/test/layer-0-primitives/csp-builder.test.js +96 -0
  941. package/lib/vendor/blamejs/test/layer-0-primitives/csp-nonce.test.js +401 -0
  942. package/lib/vendor/blamejs/test/layer-0-primitives/csp-report.test.js +34 -0
  943. package/lib/vendor/blamejs/test/layer-0-primitives/csv.test.js +180 -0
  944. package/lib/vendor/blamejs/test/layer-0-primitives/daemon.test.js +210 -0
  945. package/lib/vendor/blamejs/test/layer-0-primitives/daily-byte-quota.test.js +153 -0
  946. package/lib/vendor/blamejs/test/layer-0-primitives/dark-patterns.test.js +66 -0
  947. package/lib/vendor/blamejs/test/layer-0-primitives/data-act.test.js +74 -0
  948. package/lib/vendor/blamejs/test/layer-0-primitives/db-collection-extensions.test.js +226 -0
  949. package/lib/vendor/blamejs/test/layer-0-primitives/db-collection.test.js +136 -0
  950. package/lib/vendor/blamejs/test/layer-0-primitives/db-init-extensions.test.js +165 -0
  951. package/lib/vendor/blamejs/test/layer-0-primitives/db-query-cross-schema.test.js +150 -0
  952. package/lib/vendor/blamejs/test/layer-0-primitives/db-query-extensions.test.js +191 -0
  953. package/lib/vendor/blamejs/test/layer-0-primitives/db-role-for.test.js +228 -0
  954. package/lib/vendor/blamejs/test/layer-0-primitives/db-vacuum.test.js +55 -0
  955. package/lib/vendor/blamejs/test/layer-0-primitives/db-worm.test.js +89 -0
  956. package/lib/vendor/blamejs/test/layer-0-primitives/ddl-change-control.test.js +184 -0
  957. package/lib/vendor/blamejs/test/layer-0-primitives/declare-row-policy.test.js +203 -0
  958. package/lib/vendor/blamejs/test/layer-0-primitives/declare-view.test.js +303 -0
  959. package/lib/vendor/blamejs/test/layer-0-primitives/dns-dnssec-algorithm.test.js +163 -0
  960. package/lib/vendor/blamejs/test/layer-0-primitives/dns-null-mx.test.js +39 -0
  961. package/lib/vendor/blamejs/test/layer-0-primitives/dora.test.js +165 -0
  962. package/lib/vendor/blamejs/test/layer-0-primitives/dr-runbook.test.js +59 -0
  963. package/lib/vendor/blamejs/test/layer-0-primitives/dsr-state-rules.test.js +55 -0
  964. package/lib/vendor/blamejs/test/layer-0-primitives/dsr.test.js +786 -0
  965. package/lib/vendor/blamejs/test/layer-0-primitives/dual-control.test.js +105 -0
  966. package/lib/vendor/blamejs/test/layer-0-primitives/early-hints.test.js +147 -0
  967. package/lib/vendor/blamejs/test/layer-0-primitives/events.test.js +105 -0
  968. package/lib/vendor/blamejs/test/layer-0-primitives/exploit-replay.test.js +243 -0
  969. package/lib/vendor/blamejs/test/layer-0-primitives/external-db-hardening.test.js +181 -0
  970. package/lib/vendor/blamejs/test/layer-0-primitives/external-db-migrate.test.js +190 -0
  971. package/lib/vendor/blamejs/test/layer-0-primitives/external-db-routing.test.js +531 -0
  972. package/lib/vendor/blamejs/test/layer-0-primitives/fal.test.js +118 -0
  973. package/lib/vendor/blamejs/test/layer-0-primitives/fapi2.test.js +89 -0
  974. package/lib/vendor/blamejs/test/layer-0-primitives/fda-21cfr11.test.js +156 -0
  975. package/lib/vendor/blamejs/test/layer-0-primitives/fdx.test.js +79 -0
  976. package/lib/vendor/blamejs/test/layer-0-primitives/fedcm-dbsc.test.js +216 -0
  977. package/lib/vendor/blamejs/test/layer-0-primitives/federation-vc-suite.test.js +434 -0
  978. package/lib/vendor/blamejs/test/layer-0-primitives/fido-mds3.test.js +432 -0
  979. package/lib/vendor/blamejs/test/layer-0-primitives/file-type.test.js +81 -0
  980. package/lib/vendor/blamejs/test/layer-0-primitives/flag.test.js +887 -0
  981. package/lib/vendor/blamejs/test/layer-0-primitives/forensic-snapshot.test.js +51 -0
  982. package/lib/vendor/blamejs/test/layer-0-primitives/fsm.test.js +375 -0
  983. package/lib/vendor/blamejs/test/layer-0-primitives/gcs-bucket-ops.test.js +321 -0
  984. package/lib/vendor/blamejs/test/layer-0-primitives/gdpr-ropa.test.js +41 -0
  985. package/lib/vendor/blamejs/test/layer-0-primitives/graphql-federation.test.js +32 -0
  986. package/lib/vendor/blamejs/test/layer-0-primitives/guard-agent-registry.test.js +87 -0
  987. package/lib/vendor/blamejs/test/layer-0-primitives/guard-all.test.js +328 -0
  988. package/lib/vendor/blamejs/test/layer-0-primitives/guard-archive.test.js +339 -0
  989. package/lib/vendor/blamejs/test/layer-0-primitives/guard-csv.test.js +694 -0
  990. package/lib/vendor/blamejs/test/layer-0-primitives/guard-dsn.test.js +296 -0
  991. package/lib/vendor/blamejs/test/layer-0-primitives/guard-email.test.js +234 -0
  992. package/lib/vendor/blamejs/test/layer-0-primitives/guard-envelope.test.js +192 -0
  993. package/lib/vendor/blamejs/test/layer-0-primitives/guard-event-bus-payload.test.js +89 -0
  994. package/lib/vendor/blamejs/test/layer-0-primitives/guard-event-bus-topic.test.js +71 -0
  995. package/lib/vendor/blamejs/test/layer-0-primitives/guard-filename.test.js +386 -0
  996. package/lib/vendor/blamejs/test/layer-0-primitives/guard-html-wcag.test.js +859 -0
  997. package/lib/vendor/blamejs/test/layer-0-primitives/guard-html.test.js +357 -0
  998. package/lib/vendor/blamejs/test/layer-0-primitives/guard-idempotency-key.test.js +92 -0
  999. package/lib/vendor/blamejs/test/layer-0-primitives/guard-imap-command.test.js +0 -0
  1000. package/lib/vendor/blamejs/test/layer-0-primitives/guard-jmap.test.js +174 -0
  1001. package/lib/vendor/blamejs/test/layer-0-primitives/guard-json.test.js +317 -0
  1002. package/lib/vendor/blamejs/test/layer-0-primitives/guard-list-id.test.js +199 -0
  1003. package/lib/vendor/blamejs/test/layer-0-primitives/guard-list-unsubscribe.test.js +214 -0
  1004. package/lib/vendor/blamejs/test/layer-0-primitives/guard-mail-compose.test.js +111 -0
  1005. package/lib/vendor/blamejs/test/layer-0-primitives/guard-mail-move.test.js +110 -0
  1006. package/lib/vendor/blamejs/test/layer-0-primitives/guard-mail-query.test.js +112 -0
  1007. package/lib/vendor/blamejs/test/layer-0-primitives/guard-mail-reply.test.js +86 -0
  1008. package/lib/vendor/blamejs/test/layer-0-primitives/guard-mail-sieve.test.js +92 -0
  1009. package/lib/vendor/blamejs/test/layer-0-primitives/guard-managesieve-command.test.js +301 -0
  1010. package/lib/vendor/blamejs/test/layer-0-primitives/guard-markdown.test.js +265 -0
  1011. package/lib/vendor/blamejs/test/layer-0-primitives/guard-message-id.test.js +0 -0
  1012. package/lib/vendor/blamejs/test/layer-0-primitives/guard-pop3-command.test.js +161 -0
  1013. package/lib/vendor/blamejs/test/layer-0-primitives/guard-posture-chain.test.js +100 -0
  1014. package/lib/vendor/blamejs/test/layer-0-primitives/guard-saga-config.test.js +79 -0
  1015. package/lib/vendor/blamejs/test/layer-0-primitives/guard-smtp-command.test.js +269 -0
  1016. package/lib/vendor/blamejs/test/layer-0-primitives/guard-snapshot-envelope.test.js +89 -0
  1017. package/lib/vendor/blamejs/test/layer-0-primitives/guard-stream-args.test.js +78 -0
  1018. package/lib/vendor/blamejs/test/layer-0-primitives/guard-svg.test.js +288 -0
  1019. package/lib/vendor/blamejs/test/layer-0-primitives/guard-tenant-id.test.js +69 -0
  1020. package/lib/vendor/blamejs/test/layer-0-primitives/guard-trace-context.test.js +102 -0
  1021. package/lib/vendor/blamejs/test/layer-0-primitives/guard-xml.test.js +202 -0
  1022. package/lib/vendor/blamejs/test/layer-0-primitives/guard-yaml.test.js +203 -0
  1023. package/lib/vendor/blamejs/test/layer-0-primitives/hal.test.js +51 -0
  1024. package/lib/vendor/blamejs/test/layer-0-primitives/honeytoken.test.js +50 -0
  1025. package/lib/vendor/blamejs/test/layer-0-primitives/html-balance.test.js +37 -0
  1026. package/lib/vendor/blamejs/test/layer-0-primitives/http-client-cache.test.js +692 -0
  1027. package/lib/vendor/blamejs/test/layer-0-primitives/http-client-stream.test.js +280 -0
  1028. package/lib/vendor/blamejs/test/layer-0-primitives/http-message-signature.test.js +225 -0
  1029. package/lib/vendor/blamejs/test/layer-0-primitives/i18n-messageformat.test.js +203 -0
  1030. package/lib/vendor/blamejs/test/layer-0-primitives/i18n.test.js +991 -0
  1031. package/lib/vendor/blamejs/test/layer-0-primitives/iab-mspa.test.js +63 -0
  1032. package/lib/vendor/blamejs/test/layer-0-primitives/iab-tcf.test.js +73 -0
  1033. package/lib/vendor/blamejs/test/layer-0-primitives/idempotency-key.test.js +612 -0
  1034. package/lib/vendor/blamejs/test/layer-0-primitives/importmap-integrity.test.js +56 -0
  1035. package/lib/vendor/blamejs/test/layer-0-primitives/inbox.test.js +166 -0
  1036. package/lib/vendor/blamejs/test/layer-0-primitives/incident-report.test.js +29 -0
  1037. package/lib/vendor/blamejs/test/layer-0-primitives/jose-jwe-experimental.test.js +121 -0
  1038. package/lib/vendor/blamejs/test/layer-0-primitives/json-api.test.js +58 -0
  1039. package/lib/vendor/blamejs/test/layer-0-primitives/json-round-trip-helper.test.js +110 -0
  1040. package/lib/vendor/blamejs/test/layer-0-primitives/jwt-external.test.js +159 -0
  1041. package/lib/vendor/blamejs/test/layer-0-primitives/keychain.test.js +0 -0
  1042. package/lib/vendor/blamejs/test/layer-0-primitives/legal-hold.test.js +118 -0
  1043. package/lib/vendor/blamejs/test/layer-0-primitives/local-db-thin.test.js +150 -0
  1044. package/lib/vendor/blamejs/test/layer-0-primitives/log-stream-cloudwatch.test.js +489 -0
  1045. package/lib/vendor/blamejs/test/layer-0-primitives/log-stream-otlp-grpc.test.js +207 -0
  1046. package/lib/vendor/blamejs/test/layer-0-primitives/log-stream-otlp.test.js +283 -0
  1047. package/lib/vendor/blamejs/test/layer-0-primitives/lro.test.js +65 -0
  1048. package/lib/vendor/blamejs/test/layer-0-primitives/mail-agent.test.js +417 -0
  1049. package/lib/vendor/blamejs/test/layer-0-primitives/mail-arf.test.js +208 -0
  1050. package/lib/vendor/blamejs/test/layer-0-primitives/mail-auth.test.js +910 -0
  1051. package/lib/vendor/blamejs/test/layer-0-primitives/mail-bimi.test.js +502 -0
  1052. package/lib/vendor/blamejs/test/layer-0-primitives/mail-bounce.test.js +680 -0
  1053. package/lib/vendor/blamejs/test/layer-0-primitives/mail-canspam.test.js +128 -0
  1054. package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto-pgp-experimental.test.js +149 -0
  1055. package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto-pgp.test.js +323 -0
  1056. package/lib/vendor/blamejs/test/layer-0-primitives/mail-crypto-smime.test.js +297 -0
  1057. package/lib/vendor/blamejs/test/layer-0-primitives/mail-dav.test.js +514 -0
  1058. package/lib/vendor/blamejs/test/layer-0-primitives/mail-deploy-tlsrpt.test.js +369 -0
  1059. package/lib/vendor/blamejs/test/layer-0-primitives/mail-deploy.test.js +199 -0
  1060. package/lib/vendor/blamejs/test/layer-0-primitives/mail-dkim.test.js +627 -0
  1061. package/lib/vendor/blamejs/test/layer-0-primitives/mail-feedback-id.test.js +56 -0
  1062. package/lib/vendor/blamejs/test/layer-0-primitives/mail-greylist.test.js +217 -0
  1063. package/lib/vendor/blamejs/test/layer-0-primitives/mail-helo.test.js +283 -0
  1064. package/lib/vendor/blamejs/test/layer-0-primitives/mail-journal.test.js +217 -0
  1065. package/lib/vendor/blamejs/test/layer-0-primitives/mail-mdn.test.js +334 -0
  1066. package/lib/vendor/blamejs/test/layer-0-primitives/mail-rbl.test.js +271 -0
  1067. package/lib/vendor/blamejs/test/layer-0-primitives/mail-require-tls.test.js +128 -0
  1068. package/lib/vendor/blamejs/test/layer-0-primitives/mail-scan.test.js +215 -0
  1069. package/lib/vendor/blamejs/test/layer-0-primitives/mail-send-deliver.test.js +336 -0
  1070. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-imap.test.js +732 -0
  1071. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-jmap.test.js +840 -0
  1072. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-managesieve.test.js +130 -0
  1073. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-mx.test.js +285 -0
  1074. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-pop3.test.js +74 -0
  1075. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-rate-limit.test.js +112 -0
  1076. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-registry.test.js +229 -0
  1077. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-submission.test.js +394 -0
  1078. package/lib/vendor/blamejs/test/layer-0-primitives/mail-server-tls.test.js +147 -0
  1079. package/lib/vendor/blamejs/test/layer-0-primitives/mail-sieve.test.js +151 -0
  1080. package/lib/vendor/blamejs/test/layer-0-primitives/mail-spam-score.test.js +204 -0
  1081. package/lib/vendor/blamejs/test/layer-0-primitives/mail-srs.test.js +152 -0
  1082. package/lib/vendor/blamejs/test/layer-0-primitives/mail-store-fts.test.js +279 -0
  1083. package/lib/vendor/blamejs/test/layer-0-primitives/mail-store.test.js +323 -0
  1084. package/lib/vendor/blamejs/test/layer-0-primitives/mail-unsubscribe.test.js +165 -0
  1085. package/lib/vendor/blamejs/test/layer-0-primitives/mail.test.js +439 -0
  1086. package/lib/vendor/blamejs/test/layer-0-primitives/mcp-tool-registry.test.js +202 -0
  1087. package/lib/vendor/blamejs/test/layer-0-primitives/mcp.test.js +155 -0
  1088. package/lib/vendor/blamejs/test/layer-0-primitives/metrics-shadow-registry.test.js +112 -0
  1089. package/lib/vendor/blamejs/test/layer-0-primitives/metrics-snapshot.test.js +224 -0
  1090. package/lib/vendor/blamejs/test/layer-0-primitives/middleware-compose-pipeline.test.js +278 -0
  1091. package/lib/vendor/blamejs/test/layer-0-primitives/money.test.js +376 -0
  1092. package/lib/vendor/blamejs/test/layer-0-primitives/mtls-ca-paths.test.js +89 -0
  1093. package/lib/vendor/blamejs/test/layer-0-primitives/nel.test.js +200 -0
  1094. package/lib/vendor/blamejs/test/layer-0-primitives/network-allowlist.test.js +106 -0
  1095. package/lib/vendor/blamejs/test/layer-0-primitives/network-byte-quota.test.js +133 -0
  1096. package/lib/vendor/blamejs/test/layer-0-primitives/network-dns-resolver.test.js +372 -0
  1097. package/lib/vendor/blamejs/test/layer-0-primitives/network-dns.test.js +635 -0
  1098. package/lib/vendor/blamejs/test/layer-0-primitives/network-heartbeat-passive.test.js +128 -0
  1099. package/lib/vendor/blamejs/test/layer-0-primitives/network-tls-build-options.test.js +130 -0
  1100. package/lib/vendor/blamejs/test/layer-0-primitives/network-tls-ct-inclusion.test.js +179 -0
  1101. package/lib/vendor/blamejs/test/layer-0-primitives/network-tls.test.js +447 -0
  1102. package/lib/vendor/blamejs/test/layer-0-primitives/network.test.js +369 -0
  1103. package/lib/vendor/blamejs/test/layer-0-primitives/nis2-report.test.js +21 -0
  1104. package/lib/vendor/blamejs/test/layer-0-primitives/nist-crosswalk.test.js +42 -0
  1105. package/lib/vendor/blamejs/test/layer-0-primitives/no-cache.test.js +98 -0
  1106. package/lib/vendor/blamejs/test/layer-0-primitives/notify.test.js +707 -0
  1107. package/lib/vendor/blamejs/test/layer-0-primitives/numeric-bounds.test.js +142 -0
  1108. package/lib/vendor/blamejs/test/layer-0-primitives/oauth-callback.test.js +72 -0
  1109. package/lib/vendor/blamejs/test/layer-0-primitives/observability-tracing.test.js +597 -0
  1110. package/lib/vendor/blamejs/test/layer-0-primitives/observability.test.js +190 -0
  1111. package/lib/vendor/blamejs/test/layer-0-primitives/openapi.test.js +877 -0
  1112. package/lib/vendor/blamejs/test/layer-0-primitives/otel-export.test.js +257 -0
  1113. package/lib/vendor/blamejs/test/layer-0-primitives/pagination.test.js +522 -0
  1114. package/lib/vendor/blamejs/test/layer-0-primitives/parsers-standalone.test.js +216 -0
  1115. package/lib/vendor/blamejs/test/layer-0-primitives/passkey.test.js +324 -0
  1116. package/lib/vendor/blamejs/test/layer-0-primitives/permissions.test.js +546 -0
  1117. package/lib/vendor/blamejs/test/layer-0-primitives/pqc-agent-curve.test.js +153 -0
  1118. package/lib/vendor/blamejs/test/layer-0-primitives/pqc-software.test.js +94 -0
  1119. package/lib/vendor/blamejs/test/layer-0-primitives/problem-details.test.js +195 -0
  1120. package/lib/vendor/blamejs/test/layer-0-primitives/process-spawn.test.js +62 -0
  1121. package/lib/vendor/blamejs/test/layer-0-primitives/promise-pool.test.js +93 -0
  1122. package/lib/vendor/blamejs/test/layer-0-primitives/protected-resource-metadata.test.js +68 -0
  1123. package/lib/vendor/blamejs/test/layer-0-primitives/protobuf-encoder.test.js +138 -0
  1124. package/lib/vendor/blamejs/test/layer-0-primitives/protocol-dispatcher.test.js +174 -0
  1125. package/lib/vendor/blamejs/test/layer-0-primitives/public-suffix.test.js +197 -0
  1126. package/lib/vendor/blamejs/test/layer-0-primitives/pubsub.test.js +232 -0
  1127. package/lib/vendor/blamejs/test/layer-0-primitives/queue-dlq-extend-lease.test.js +178 -0
  1128. package/lib/vendor/blamejs/test/layer-0-primitives/queue-flow-repeat.test.js +322 -0
  1129. package/lib/vendor/blamejs/test/layer-0-primitives/queue-priority-rate-progress.test.js +266 -0
  1130. package/lib/vendor/blamejs/test/layer-0-primitives/queue-sqs.test.js +300 -0
  1131. package/lib/vendor/blamejs/test/layer-0-primitives/rate-limit-cluster.test.js +338 -0
  1132. package/lib/vendor/blamejs/test/layer-0-primitives/rate-limit-registry.test.js +75 -0
  1133. package/lib/vendor/blamejs/test/layer-0-primitives/redact-dlp.test.js +246 -0
  1134. package/lib/vendor/blamejs/test/layer-0-primitives/redis-client.test.js +130 -0
  1135. package/lib/vendor/blamejs/test/layer-0-primitives/request-helpers.test.js +335 -0
  1136. package/lib/vendor/blamejs/test/layer-0-primitives/request-log.test.js +170 -0
  1137. package/lib/vendor/blamejs/test/layer-0-primitives/require-auth-cache-control.test.js +93 -0
  1138. package/lib/vendor/blamejs/test/layer-0-primitives/require-mtls.test.js +34 -0
  1139. package/lib/vendor/blamejs/test/layer-0-primitives/resource-access-lock.test.js +52 -0
  1140. package/lib/vendor/blamejs/test/layer-0-primitives/retention-floor.test.js +67 -0
  1141. package/lib/vendor/blamejs/test/layer-0-primitives/retry.test.js +535 -0
  1142. package/lib/vendor/blamejs/test/layer-0-primitives/router-cross-origin-redirect.test.js +0 -0
  1143. package/lib/vendor/blamejs/test/layer-0-primitives/router-tls0rtt.test.js +128 -0
  1144. package/lib/vendor/blamejs/test/layer-0-primitives/safe-async-loops.test.js +163 -0
  1145. package/lib/vendor/blamejs/test/layer-0-primitives/safe-async-parallel.test.js +170 -0
  1146. package/lib/vendor/blamejs/test/layer-0-primitives/safe-decompress.test.js +248 -0
  1147. package/lib/vendor/blamejs/test/layer-0-primitives/safe-dns.test.js +451 -0
  1148. package/lib/vendor/blamejs/test/layer-0-primitives/safe-ical.test.js +289 -0
  1149. package/lib/vendor/blamejs/test/layer-0-primitives/safe-icap.test.js +206 -0
  1150. package/lib/vendor/blamejs/test/layer-0-primitives/safe-jsonpath.test.js +104 -0
  1151. package/lib/vendor/blamejs/test/layer-0-primitives/safe-mime.test.js +339 -0
  1152. package/lib/vendor/blamejs/test/layer-0-primitives/safe-mount-info.test.js +180 -0
  1153. package/lib/vendor/blamejs/test/layer-0-primitives/safe-path.test.js +78 -0
  1154. package/lib/vendor/blamejs/test/layer-0-primitives/safe-sieve.test.js +123 -0
  1155. package/lib/vendor/blamejs/test/layer-0-primitives/safe-smtp.test.js +95 -0
  1156. package/lib/vendor/blamejs/test/layer-0-primitives/safe-url-idn-homograph.test.js +77 -0
  1157. package/lib/vendor/blamejs/test/layer-0-primitives/safe-vcard.test.js +257 -0
  1158. package/lib/vendor/blamejs/test/layer-0-primitives/saml-slo.test.js +249 -0
  1159. package/lib/vendor/blamejs/test/layer-0-primitives/sandbox.test.js +228 -0
  1160. package/lib/vendor/blamejs/test/layer-0-primitives/scheduler-exactly-once.test.js +238 -0
  1161. package/lib/vendor/blamejs/test/layer-0-primitives/scim-server.test.js +92 -0
  1162. package/lib/vendor/blamejs/test/layer-0-primitives/sd-jwt-vc.test.js +700 -0
  1163. package/lib/vendor/blamejs/test/layer-0-primitives/sd-notify.test.js +67 -0
  1164. package/lib/vendor/blamejs/test/layer-0-primitives/sec-cyber.test.js +85 -0
  1165. package/lib/vendor/blamejs/test/layer-0-primitives/security-assert.test.js +107 -0
  1166. package/lib/vendor/blamejs/test/layer-0-primitives/security-headers.test.js +175 -0
  1167. package/lib/vendor/blamejs/test/layer-0-primitives/seeders.test.js +816 -0
  1168. package/lib/vendor/blamejs/test/layer-0-primitives/self-update-standalone-verifier.test.js +168 -0
  1169. package/lib/vendor/blamejs/test/layer-0-primitives/self-update.test.js +302 -0
  1170. package/lib/vendor/blamejs/test/layer-0-primitives/server-timing.test.js +93 -0
  1171. package/lib/vendor/blamejs/test/layer-0-primitives/session-device-binding.test.js +247 -0
  1172. package/lib/vendor/blamejs/test/layer-0-primitives/session-extensions.test.js +295 -0
  1173. package/lib/vendor/blamejs/test/layer-0-primitives/shape-match.test.js +142 -0
  1174. package/lib/vendor/blamejs/test/layer-0-primitives/sigv4-bucket-ops.test.js +952 -0
  1175. package/lib/vendor/blamejs/test/layer-0-primitives/sigv4-multipart-sse.test.js +441 -0
  1176. package/lib/vendor/blamejs/test/layer-0-primitives/slug.test.js +330 -0
  1177. package/lib/vendor/blamejs/test/layer-0-primitives/smtp-policy.test.js +233 -0
  1178. package/lib/vendor/blamejs/test/layer-0-primitives/source-comment-blocks.test.js +105 -0
  1179. package/lib/vendor/blamejs/test/layer-0-primitives/speculation-rules.test.js +319 -0
  1180. package/lib/vendor/blamejs/test/layer-0-primitives/sse.test.js +148 -0
  1181. package/lib/vendor/blamejs/test/layer-0-primitives/ssrf-guard.test.js +283 -0
  1182. package/lib/vendor/blamejs/test/layer-0-primitives/standard-webhooks.test.js +67 -0
  1183. package/lib/vendor/blamejs/test/layer-0-primitives/static.test.js +266 -0
  1184. package/lib/vendor/blamejs/test/layer-0-primitives/step-up.test.js +487 -0
  1185. package/lib/vendor/blamejs/test/layer-0-primitives/storage-chunk-scratch.test.js +0 -0
  1186. package/lib/vendor/blamejs/test/layer-0-primitives/storage-presigned-url.test.js +773 -0
  1187. package/lib/vendor/blamejs/test/layer-0-primitives/stream-throttle.test.js +173 -0
  1188. package/lib/vendor/blamejs/test/layer-0-primitives/structured-fields.test.js +180 -0
  1189. package/lib/vendor/blamejs/test/layer-0-primitives/tcpa-10dlc.test.js +66 -0
  1190. package/lib/vendor/blamejs/test/layer-0-primitives/tenant-quota.test.js +89 -0
  1191. package/lib/vendor/blamejs/test/layer-0-primitives/test-coverage.test.js +571 -0
  1192. package/lib/vendor/blamejs/test/layer-0-primitives/test-harness.test.js +190 -0
  1193. package/lib/vendor/blamejs/test/layer-0-primitives/testing-request.test.js +119 -0
  1194. package/lib/vendor/blamejs/test/layer-0-primitives/testing.test.js +522 -0
  1195. package/lib/vendor/blamejs/test/layer-0-primitives/time.test.js +151 -0
  1196. package/lib/vendor/blamejs/test/layer-0-primitives/tls-exporter.test.js +168 -0
  1197. package/lib/vendor/blamejs/test/layer-0-primitives/tls-ocsp-ct.test.js +275 -0
  1198. package/lib/vendor/blamejs/test/layer-0-primitives/tls-ocsp-verify.test.js +105 -0
  1199. package/lib/vendor/blamejs/test/layer-0-primitives/tls-pinset-drift.test.js +35 -0
  1200. package/lib/vendor/blamejs/test/layer-0-primitives/tls-preferred-groups.test.js +81 -0
  1201. package/lib/vendor/blamejs/test/layer-0-primitives/tracing.test.js +280 -0
  1202. package/lib/vendor/blamejs/test/layer-0-primitives/uuid.test.js +93 -0
  1203. package/lib/vendor/blamejs/test/layer-0-primitives/vault-aad.test.js +277 -0
  1204. package/lib/vendor/blamejs/test/layer-0-primitives/vault-seal-pem-file.test.js +252 -0
  1205. package/lib/vendor/blamejs/test/layer-0-primitives/vendor-data.test.js +149 -0
  1206. package/lib/vendor/blamejs/test/layer-0-primitives/vendor-manifest.test.js +92 -0
  1207. package/lib/vendor/blamejs/test/layer-0-primitives/vex.test.js +661 -0
  1208. package/lib/vendor/blamejs/test/layer-0-primitives/watcher.test.js +308 -0
  1209. package/lib/vendor/blamejs/test/layer-0-primitives/web-push-vapid.test.js +144 -0
  1210. package/lib/vendor/blamejs/test/layer-0-primitives/webhook.test.js +674 -0
  1211. package/lib/vendor/blamejs/test/layer-0-primitives/websocket-channels.test.js +360 -0
  1212. package/lib/vendor/blamejs/test/layer-0-primitives/worker-pool.test.js +302 -0
  1213. package/lib/vendor/blamejs/test/layer-0-primitives/ws-client.test.js +349 -0
  1214. package/lib/vendor/blamejs/test/layer-1-state/api-key.test.js +717 -0
  1215. package/lib/vendor/blamejs/test/layer-5-integration/bundler-output.test.js +444 -0
  1216. package/lib/vendor/blamejs/test/layer-5-integration/guard-host-integration.test.js +597 -0
  1217. package/lib/vendor/blamejs/test/layer-5-integration/security-chaos.test.js +308 -0
  1218. package/lib/vendor/blamejs/test/smoke.js +431 -0
  1219. package/lib/webhooks.js +305 -0
  1220. package/package.json +43 -0
@@ -0,0 +1,181 @@
1
+ // Peculiar PKI — vendored @peculiar/x509 v2.0.0 + pkijs v3.4.0
2
+ // License: MIT. Bundled with esbuild.
3
+ // Exports: { pkijs, x509, crypto (node:webcrypto bound) }
4
+ // Includes: reflect-metadata, pvutils, pvtsutils, asn1js, @peculiar/asn1-*
5
+ // Used by lib/mtls-engine-default.js for pure-JS CA + PKCS#12 operations.
6
+ var B2=Object.create;var Lv=Object.defineProperty;var x2=Object.getOwnPropertyDescriptor;var O2=Object.getOwnPropertyNames;var T2=Object.getPrototypeOf,V2=Object.prototype.hasOwnProperty;var eN=(r,e)=>()=>(r&&(e=r(r=0)),e);var v=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),o_=(r,e)=>{for(var t in e)Lv(r,t,{get:e[t],enumerable:!0})},tN=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of O2(e))!V2.call(r,i)&&i!==t&&Lv(r,i,{get:()=>e[i],enumerable:!(s=x2(e,i))||s.enumerable});return r};var c_=(r,e,t)=>(t=r!=null?B2(T2(r)):{},tN(e||!r||!r.__esModule?Lv(t,"default",{value:r,enumerable:!0}):t,r)),E=r=>tN(Lv({},"__esModule",{value:!0}),r);var sN=v(()=>{var rN;(function(r){(function(e){var t=typeof globalThis=="object"?globalThis:typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:c(),s=i(r);typeof t.Reflect<"u"&&(s=i(t.Reflect,s)),e(s,t),typeof t.Reflect>"u"&&(t.Reflect=r);function i(l,h){return function(d,m){Object.defineProperty(l,d,{configurable:!0,writable:!0,value:m}),h&&h(d,m)}}function n(){try{return Function("return this;")()}catch{}}function o(){try{return(0,eval)("(function() { return this; })()")}catch{}}function c(){return n()||o()}})(function(e,t){var s=Object.prototype.hasOwnProperty,i=typeof Symbol=="function",n=i&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",o=i&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",c=typeof Object.create=="function",l={__proto__:[]}instanceof Array,h=!c&&!l,d={create:c?function(){return a_(Object.create(null))}:l?function(){return a_({__proto__:null})}:function(){return a_({})},has:h?function(_,P){return s.call(_,P)}:function(_,P){return P in _},get:h?function(_,P){return s.call(_,P)?_[P]:void 0}:function(_,P){return _[P]}},m=Object.getPrototypeOf(Function),p=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:P2(),A=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:I2(),w=typeof WeakMap=="function"?WeakMap:E2(),C=i?Symbol.for("@reflect-metadata:registry"):void 0,S=_2(),q=b2(S);function L(_,P,x,K){if(D(x)){if(!zr(_))throw new TypeError;if(!Ue(P))throw new TypeError;return Be(_,P)}else{if(!zr(_))throw new TypeError;if(!pe(P))throw new TypeError;if(!pe(K)&&!D(K)&&!fe(K))throw new TypeError;return fe(K)&&(K=void 0),x=Vt(x),Gr(_,P,x,K)}}e("decorate",L);function j(_,P){function x(K,se){if(!pe(K))throw new TypeError;if(!D(se)&&!A2(se))throw new TypeError;Qt(_,P,K,se)}return x}e("metadata",j);function M(_,P,x,K){if(!pe(x))throw new TypeError;return D(K)||(K=Vt(K)),Qt(_,P,x,K)}e("defineMetadata",M);function $(_,P,x){if(!pe(P))throw new TypeError;return D(x)||(x=Vt(x)),Pt(_,P,x)}e("hasMetadata",$);function te(_,P,x){if(!pe(P))throw new TypeError;return D(x)||(x=Vt(x)),Le(_,P,x)}e("hasOwnMetadata",te);function Ce(_,P,x){if(!pe(P))throw new TypeError;return D(x)||(x=Vt(x)),Lt(_,P,x)}e("getMetadata",Ce);function oe(_,P,x){if(!pe(P))throw new TypeError;return D(x)||(x=Vt(x)),Ut(_,P,x)}e("getOwnMetadata",oe);function be(_,P){if(!pe(_))throw new TypeError;return D(P)||(P=Vt(P)),Ge(_,P)}e("getMetadataKeys",be);function st(_,P){if(!pe(_))throw new TypeError;return D(P)||(P=Vt(P)),Q(_,P)}e("getOwnMetadataKeys",st);function Pe(_,P,x){if(!pe(P))throw new TypeError;if(D(x)||(x=Vt(x)),!pe(P))throw new TypeError;D(x)||(x=Vt(x));var K=sd(P,x,!1);return D(K)?!1:K.OrdinaryDeleteMetadata(_,P,x)}e("deleteMetadata",Pe);function Be(_,P){for(var x=_.length-1;x>=0;--x){var K=_[x],se=K(P);if(!D(se)&&!fe(se)){if(!Ue(se))throw new TypeError;P=se}}return P}function Gr(_,P,x,K){for(var se=_.length-1;se>=0;--se){var pt=_[se],It=pt(P,x,K);if(!D(It)&&!fe(It)){if(!pe(It))throw new TypeError;K=It}}return K}function Pt(_,P,x){var K=Le(_,P,x);if(K)return!0;var se=n_(P);return fe(se)?!1:Pt(_,se,x)}function Le(_,P,x){var K=sd(P,x,!1);return D(K)?!1:Se(K.OrdinaryHasOwnMetadata(_,P,x))}function Lt(_,P,x){var K=Le(_,P,x);if(K)return Ut(_,P,x);var se=n_(P);if(!fe(se))return Lt(_,se,x)}function Ut(_,P,x){var K=sd(P,x,!1);if(!D(K))return K.OrdinaryGetOwnMetadata(_,P,x)}function Qt(_,P,x,K){var se=sd(x,K,!0);se.OrdinaryDefineOwnMetadata(_,P,x,K)}function Ge(_,P){var x=Q(_,P),K=n_(_);if(K===null)return x;var se=Ge(K,P);if(se.length<=0)return x;if(x.length<=0)return se;for(var pt=new A,It=[],ye=0,J=x;ye<J.length;ye++){var Y=J[ye],Z=pt.has(Y);Z||(pt.add(Y),It.push(Y))}for(var ee=0,Ae=se;ee<Ae.length;ee++){var Y=Ae[ee],Z=pt.has(Y);Z||(pt.add(Y),It.push(Y))}return It}function Q(_,P){var x=sd(_,P,!1);return x?x.OrdinaryOwnMetadataKeys(_,P):[]}function ce(_){if(_===null)return 1;switch(typeof _){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return _===null?1:6;default:return 6}}function D(_){return _===void 0}function fe(_){return _===null}function Ne(_){return typeof _=="symbol"}function pe(_){return typeof _=="object"?_!==null:typeof _=="function"}function Wr(_,P){switch(ce(_)){case 0:return _;case 1:return _;case 2:return _;case 3:return _;case 4:return _;case 5:return _}var x=P===3?"string":P===5?"number":"default",K=Wk(_,n);if(K!==void 0){var se=K.call(_,x);if(pe(se))throw new TypeError;return se}return it(_,x==="default"?"number":x)}function it(_,P){if(P==="string"){var x=_.toString;if(Zt(x)){var K=x.call(_);if(!pe(K))return K}var se=_.valueOf;if(Zt(se)){var K=se.call(_);if(!pe(K))return K}}else{var se=_.valueOf;if(Zt(se)){var K=se.call(_);if(!pe(K))return K}var pt=_.toString;if(Zt(pt)){var K=pt.call(_);if(!pe(K))return K}}throw new TypeError}function Se(_){return!!_}function re(_){return""+_}function Vt(_){var P=Wr(_,3);return Ne(P)?P:re(P)}function zr(_){return Array.isArray?Array.isArray(_):_ instanceof Object?_ instanceof Array:Object.prototype.toString.call(_)==="[object Array]"}function Zt(_){return typeof _=="function"}function Ue(_){return typeof _=="function"}function A2(_){switch(ce(_)){case 3:return!0;case 4:return!0;default:return!1}}function i_(_,P){return _===P||_!==_&&P!==P}function Wk(_,P){var x=_[P];if(x!=null){if(!Zt(x))throw new TypeError;return x}}function zk(_){var P=Wk(_,o);if(!Zt(P))throw new TypeError;var x=P.call(_);if(!pe(x))throw new TypeError;return x}function Yk(_){return _.value}function Xk(_){var P=_.next();return P.done?!1:P}function Qk(_){var P=_.return;P&&P.call(_)}function n_(_){var P=Object.getPrototypeOf(_);if(typeof _!="function"||_===m||P!==m)return P;var x=_.prototype,K=x&&Object.getPrototypeOf(x);if(K==null||K===Object.prototype)return P;var se=K.constructor;return typeof se!="function"||se===_?P:se}function w2(){var _;!D(C)&&typeof t.Reflect<"u"&&!(C in t.Reflect)&&typeof t.Reflect.defineMetadata=="function"&&(_=C2(t.Reflect));var P,x,K,se=new w,pt={registerProvider:It,getProvider:J,setProvider:Z};return pt;function It(ee){if(!Object.isExtensible(pt))throw new Error("Cannot add provider to a frozen registry.");switch(!0){case _===ee:break;case D(P):P=ee;break;case P===ee:break;case D(x):x=ee;break;case x===ee:break;default:K===void 0&&(K=new A),K.add(ee);break}}function ye(ee,Ae){if(!D(P)){if(P.isProviderFor(ee,Ae))return P;if(!D(x)){if(x.isProviderFor(ee,Ae))return P;if(!D(K))for(var Xe=zk(K);;){var mt=Xk(Xe);if(!mt)return;var Yr=Yk(mt);if(Yr.isProviderFor(ee,Ae))return Qk(Xe),Yr}}}if(!D(_)&&_.isProviderFor(ee,Ae))return _}function J(ee,Ae){var Xe=se.get(ee),mt;return D(Xe)||(mt=Xe.get(Ae)),D(mt)&&(mt=ye(ee,Ae),D(mt)||(D(Xe)&&(Xe=new p,se.set(ee,Xe)),Xe.set(Ae,mt))),mt}function Y(ee){if(D(ee))throw new TypeError;return P===ee||x===ee||!D(K)&&K.has(ee)}function Z(ee,Ae,Xe){if(!Y(Xe))throw new Error("Metadata provider not registered.");var mt=J(ee,Ae);if(mt!==Xe){if(!D(mt))return!1;var Yr=se.get(ee);D(Yr)&&(Yr=new p,se.set(ee,Yr)),Yr.set(Ae,Xe)}return!0}}function _2(){var _;return!D(C)&&pe(t.Reflect)&&Object.isExtensible(t.Reflect)&&(_=t.Reflect[C]),D(_)&&(_=w2()),!D(C)&&pe(t.Reflect)&&Object.isExtensible(t.Reflect)&&Object.defineProperty(t.Reflect,C,{enumerable:!1,configurable:!1,writable:!1,value:_}),_}function b2(_){var P=new w,x={isProviderFor:function(Y,Z){var ee=P.get(Y);return D(ee)?!1:ee.has(Z)},OrdinaryDefineOwnMetadata:It,OrdinaryHasOwnMetadata:se,OrdinaryGetOwnMetadata:pt,OrdinaryOwnMetadataKeys:ye,OrdinaryDeleteMetadata:J};return S.registerProvider(x),x;function K(Y,Z,ee){var Ae=P.get(Y),Xe=!1;if(D(Ae)){if(!ee)return;Ae=new p,P.set(Y,Ae),Xe=!0}var mt=Ae.get(Z);if(D(mt)){if(!ee)return;if(mt=new p,Ae.set(Z,mt),!_.setProvider(Y,Z,x))throw Ae.delete(Z),Xe&&P.delete(Y),new Error("Wrong provider for target.")}return mt}function se(Y,Z,ee){var Ae=K(Z,ee,!1);return D(Ae)?!1:Se(Ae.has(Y))}function pt(Y,Z,ee){var Ae=K(Z,ee,!1);if(!D(Ae))return Ae.get(Y)}function It(Y,Z,ee,Ae){var Xe=K(ee,Ae,!0);Xe.set(Y,Z)}function ye(Y,Z){var ee=[],Ae=K(Y,Z,!1);if(D(Ae))return ee;for(var Xe=Ae.keys(),mt=zk(Xe),Yr=0;;){var Zk=Xk(mt);if(!Zk)return ee.length=Yr,ee;var k2=Yk(Zk);try{ee[Yr]=k2}catch(N2){try{Qk(mt)}finally{throw N2}}Yr++}}function J(Y,Z,ee){var Ae=K(Z,ee,!1);if(D(Ae)||!Ae.delete(Y))return!1;if(Ae.size===0){var Xe=P.get(Z);D(Xe)||(Xe.delete(ee),Xe.size===0&&P.delete(Xe))}return!0}}function C2(_){var P=_.defineMetadata,x=_.hasOwnMetadata,K=_.getOwnMetadata,se=_.getOwnMetadataKeys,pt=_.deleteMetadata,It=new w,ye={isProviderFor:function(J,Y){var Z=It.get(J);return!D(Z)&&Z.has(Y)?!0:se(J,Y).length?(D(Z)&&(Z=new A,It.set(J,Z)),Z.add(Y),!0):!1},OrdinaryDefineOwnMetadata:P,OrdinaryHasOwnMetadata:x,OrdinaryGetOwnMetadata:K,OrdinaryOwnMetadataKeys:se,OrdinaryDeleteMetadata:pt};return ye}function sd(_,P,x){var K=S.getProvider(_,P);if(!D(K))return K;if(x){if(S.setProvider(_,P,q))return q;throw new Error("Illegal state.")}}function P2(){var _={},P=[],x=(function(){function ye(J,Y,Z){this._index=0,this._keys=J,this._values=Y,this._selector=Z}return ye.prototype["@@iterator"]=function(){return this},ye.prototype[o]=function(){return this},ye.prototype.next=function(){var J=this._index;if(J>=0&&J<this._keys.length){var Y=this._selector(this._keys[J],this._values[J]);return J+1>=this._keys.length?(this._index=-1,this._keys=P,this._values=P):this._index++,{value:Y,done:!1}}return{value:void 0,done:!0}},ye.prototype.throw=function(J){throw this._index>=0&&(this._index=-1,this._keys=P,this._values=P),J},ye.prototype.return=function(J){return this._index>=0&&(this._index=-1,this._keys=P,this._values=P),{value:J,done:!0}},ye})(),K=(function(){function ye(){this._keys=[],this._values=[],this._cacheKey=_,this._cacheIndex=-2}return Object.defineProperty(ye.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),ye.prototype.has=function(J){return this._find(J,!1)>=0},ye.prototype.get=function(J){var Y=this._find(J,!1);return Y>=0?this._values[Y]:void 0},ye.prototype.set=function(J,Y){var Z=this._find(J,!0);return this._values[Z]=Y,this},ye.prototype.delete=function(J){var Y=this._find(J,!1);if(Y>=0){for(var Z=this._keys.length,ee=Y+1;ee<Z;ee++)this._keys[ee-1]=this._keys[ee],this._values[ee-1]=this._values[ee];return this._keys.length--,this._values.length--,i_(J,this._cacheKey)&&(this._cacheKey=_,this._cacheIndex=-2),!0}return!1},ye.prototype.clear=function(){this._keys.length=0,this._values.length=0,this._cacheKey=_,this._cacheIndex=-2},ye.prototype.keys=function(){return new x(this._keys,this._values,se)},ye.prototype.values=function(){return new x(this._keys,this._values,pt)},ye.prototype.entries=function(){return new x(this._keys,this._values,It)},ye.prototype["@@iterator"]=function(){return this.entries()},ye.prototype[o]=function(){return this.entries()},ye.prototype._find=function(J,Y){if(!i_(this._cacheKey,J)){this._cacheIndex=-1;for(var Z=0;Z<this._keys.length;Z++)if(i_(this._keys[Z],J)){this._cacheIndex=Z;break}}return this._cacheIndex<0&&Y&&(this._cacheIndex=this._keys.length,this._keys.push(J),this._values.push(void 0)),this._cacheIndex},ye})();return K;function se(ye,J){return ye}function pt(ye,J){return J}function It(ye,J){return[ye,J]}}function I2(){var _=(function(){function P(){this._map=new p}return Object.defineProperty(P.prototype,"size",{get:function(){return this._map.size},enumerable:!0,configurable:!0}),P.prototype.has=function(x){return this._map.has(x)},P.prototype.add=function(x){return this._map.set(x,x),this},P.prototype.delete=function(x){return this._map.delete(x)},P.prototype.clear=function(){this._map.clear()},P.prototype.keys=function(){return this._map.keys()},P.prototype.values=function(){return this._map.keys()},P.prototype.entries=function(){return this._map.entries()},P.prototype["@@iterator"]=function(){return this.keys()},P.prototype[o]=function(){return this.keys()},P})();return _}function E2(){var _=16,P=d.create(),x=K();return(function(){function J(){this._key=K()}return J.prototype.has=function(Y){var Z=se(Y,!1);return Z!==void 0?d.has(Z,this._key):!1},J.prototype.get=function(Y){var Z=se(Y,!1);return Z!==void 0?d.get(Z,this._key):void 0},J.prototype.set=function(Y,Z){var ee=se(Y,!0);return ee[this._key]=Z,this},J.prototype.delete=function(Y){var Z=se(Y,!1);return Z!==void 0?delete Z[this._key]:!1},J.prototype.clear=function(){this._key=K()},J})();function K(){var J;do J="@@WeakMap@@"+ye();while(d.has(P,J));return P[J]=!0,J}function se(J,Y){if(!s.call(J,x)){if(!Y)return;Object.defineProperty(J,x,{value:d.create()})}return J[x]}function pt(J,Y){for(var Z=0;Z<Y;++Z)J[Z]=Math.random()*255|0;return J}function It(J){if(typeof Uint8Array=="function"){var Y=new Uint8Array(J);return typeof crypto<"u"?crypto.getRandomValues(Y):typeof msCrypto<"u"?msCrypto.getRandomValues(Y):pt(Y,J),Y}return pt(new Array(J),J)}function ye(){var J=It(_);J[6]=J[6]&79|64,J[8]=J[8]&191|128;for(var Y="",Z=0;Z<_;++Z){var ee=J[Z];(Z===4||Z===6||Z===8)&&(Y+="-"),ee<16&&(Y+="0"),Y+=ee.toString(16).toLowerCase()}return Y}}function a_(_){return _.__=void 0,delete _.__,_}})})(rN||(rN={}))});var _s=v(fu=>{"use strict";var R2="[object ArrayBuffer]",ti=class r{static isArrayBuffer(e){return Object.prototype.toString.call(e)===R2}static toArrayBuffer(e){return this.isArrayBuffer(e)?e:e.byteLength===e.buffer.byteLength||e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e.buffer:this.toUint8Array(e.buffer).slice(e.byteOffset,e.byteOffset+e.byteLength).buffer}static toUint8Array(e){return this.toView(e,Uint8Array)}static toView(e,t){if(e.constructor===t)return e;if(this.isArrayBuffer(e))return new t(e);if(this.isArrayBufferView(e))return new t(e.buffer,e.byteOffset,e.byteLength);throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(e){return this.isArrayBufferView(e)||this.isArrayBuffer(e)}static isArrayBufferView(e){return ArrayBuffer.isView(e)||e&&this.isArrayBuffer(e.buffer)}static isEqual(e,t){let s=r.toUint8Array(e),i=r.toUint8Array(t);if(s.length!==i.byteLength)return!1;for(let n=0;n<s.length;n++)if(s[n]!==i[n])return!1;return!0}static concat(...e){let t;Array.isArray(e[0])&&!(e[1]instanceof Function)||Array.isArray(e[0])&&e[1]instanceof Function?t=e[0]:e[e.length-1]instanceof Function?t=e.slice(0,e.length-1):t=e;let s=0;for(let o of t)s+=o.byteLength;let i=new Uint8Array(s),n=0;for(let o of t){let c=this.toUint8Array(o);i.set(c,n),n+=c.length}return e[e.length-1]instanceof Function?this.toView(i,e[e.length-1]):i.buffer}},u_="string",D2=/^[0-9a-f\s]+$/i,q2=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,j2=/^[a-zA-Z0-9-_]+$/,Uv=class{static fromString(e){let t=unescape(encodeURIComponent(e)),s=new Uint8Array(t.length);for(let i=0;i<t.length;i++)s[i]=t.charCodeAt(i);return s.buffer}static toString(e){let t=ti.toUint8Array(e),s="";for(let n=0;n<t.length;n++)s+=String.fromCharCode(t[n]);return decodeURIComponent(escape(s))}},xr=class{static toString(e,t=!1){let s=ti.toArrayBuffer(e),i=new DataView(s),n="";for(let o=0;o<s.byteLength;o+=2){let c=i.getUint16(o,t);n+=String.fromCharCode(c)}return n}static fromString(e,t=!1){let s=new ArrayBuffer(e.length*2),i=new DataView(s);for(let n=0;n<e.length;n++)i.setUint16(n*2,e.charCodeAt(n),t);return s}},Hv=class r{static isHex(e){return typeof e===u_&&D2.test(e)}static isBase64(e){return typeof e===u_&&q2.test(e)}static isBase64Url(e){return typeof e===u_&&j2.test(e)}static ToString(e,t="utf8"){let s=ti.toUint8Array(e);switch(t.toLowerCase()){case"utf8":return this.ToUtf8String(s);case"binary":return this.ToBinary(s);case"hex":return this.ToHex(s);case"base64":return this.ToBase64(s);case"base64url":return this.ToBase64Url(s);case"utf16le":return xr.toString(s,!0);case"utf16":case"utf16be":return xr.toString(s);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromString(e,t="utf8"){if(!e)return new ArrayBuffer(0);switch(t.toLowerCase()){case"utf8":return this.FromUtf8String(e);case"binary":return this.FromBinary(e);case"hex":return this.FromHex(e);case"base64":return this.FromBase64(e);case"base64url":return this.FromBase64Url(e);case"utf16le":return xr.fromString(e,!0);case"utf16":case"utf16be":return xr.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){let t=ti.toUint8Array(e);if(typeof btoa<"u"){let s=this.ToString(t,"binary");return btoa(s)}else return Buffer.from(t).toString("base64")}static FromBase64(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64(t))throw new TypeError("Argument 'base64Text' is not Base64 encoded");return typeof atob<"u"?this.FromBinary(atob(t)):new Uint8Array(Buffer.from(t,"base64")).buffer}static FromBase64Url(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isBase64Url(t))throw new TypeError("Argument 'base64url' is not Base64Url encoded");return this.FromBase64(this.Base64Padding(t.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(e){return this.ToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.FromBinary(e);case"utf8":return Uv.fromString(e);case"utf16":case"utf16be":return xr.fromString(e);case"utf16le":case"usc2":return xr.fromString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToUtf8String(e,t=r.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.ToBinary(e);case"utf8":return Uv.toString(e);case"utf16":case"utf16be":return xr.toString(e);case"utf16le":case"usc2":return xr.toString(e,!0);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromBinary(e){let t=e.length,s=new Uint8Array(t);for(let i=0;i<t;i++)s[i]=e.charCodeAt(i);return s.buffer}static ToBinary(e){let t=ti.toUint8Array(e),s="";for(let i=0;i<t.length;i++)s+=String.fromCharCode(t[i]);return s}static ToHex(e){let t=ti.toUint8Array(e),s="",i=t.length;for(let n=0;n<i;n++){let o=t[n];o<16&&(s+="0"),s+=o.toString(16)}return s}static FromHex(e){let t=this.formatString(e);if(!t)return new ArrayBuffer(0);if(!r.isHex(t))throw new TypeError("Argument 'hexString' is not HEX encoded");t.length%2&&(t=`0${t}`);let s=new Uint8Array(t.length/2);for(let i=0;i<t.length;i=i+2){let n=t.slice(i,i+2);s[i/2]=parseInt(n,16)}return s.buffer}static ToUtf16String(e,t=!1){return xr.toString(e,t)}static FromUtf16String(e,t=!1){return xr.fromString(e,t)}static Base64Padding(e){let t=4-e.length%4;if(t<4)for(let s=0;s<t;s++)e+="=";return e}static formatString(e){return e?.replace(/[\n\r\t ]/g,"")||""}};Hv.DEFAULT_UTF8_ENCODING="utf8";function M2(r,...e){let t=arguments[0];for(let s=1;s<arguments.length;s++){let i=arguments[s];for(let n in i)t[n]=i[n]}return t}function L2(...r){let e=r.map(i=>i.byteLength).reduce((i,n)=>i+n),t=new Uint8Array(e),s=0;return r.map(i=>new Uint8Array(i)).forEach(i=>{for(let n of i)t[s++]=n}),t.buffer}function U2(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),s=new Uint8Array(e);for(let i=0;i<r.byteLength;i++)if(t[i]!==s[i])return!1;return!0}fu.BufferSourceConverter=ti;fu.Convert=Hv;fu.assign=M2;fu.combine=L2;fu.isEqual=U2});var f_=v(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});function H2(r){return new Date(r.getTime()+r.getTimezoneOffset()*6e4)}function K2(r,e,t){var s;return r instanceof Object&&(s=r[e])!==null&&s!==void 0?s:t}function $2(r,e=0,t=r.byteLength-e,s=!1){let i="";for(let n of new Uint8Array(r,e,t)){let o=n.toString(16).toUpperCase();o.length===1&&(i+="0"),i+=o,s&&(i+=" ")}return i.trim()}function F2(r,e,t,s){return e instanceof ArrayBuffer?e.byteLength?t<0?(r.error="Wrong parameter: inputOffset less than zero",!1):s<0?(r.error="Wrong parameter: inputLength less than zero",!1):e.byteLength-t-s<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error='Wrong parameter: inputBuffer must be "ArrayBuffer"',!1)}function l_(r,e){let t=0;if(r.length===1)return r[0];for(let s=r.length-1;s>=0;s--)t+=r[r.length-1-s]*Math.pow(2,e*s);return t}function h_(r,e,t=-1){let s=t,i=r,n=0,o=Math.pow(2,e);for(let c=1;c<8;c++){if(r<o){let l;if(s<0)l=new ArrayBuffer(c),n=c;else{if(s<c)return new ArrayBuffer(0);l=new ArrayBuffer(s),n=s}let h=new Uint8Array(l);for(let d=c-1;d>=0;d--){let m=Math.pow(2,d*e);h[n-d-1]=Math.floor(i/m),i-=h[n-d-1]*m}return l}o*=Math.pow(2,e)}return new ArrayBuffer(0)}function J2(...r){let e=0,t=0;for(let n of r)e+=n.byteLength;let s=new ArrayBuffer(e),i=new Uint8Array(s);for(let n of r)i.set(new Uint8Array(n),t),t+=n.byteLength;return s}function G2(...r){let e=0,t=0;for(let n of r)e+=n.length;let s=new ArrayBuffer(e),i=new Uint8Array(s);for(let n of r)i.set(n,t),t+=n.length;return i}function W2(){let r=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){let c=r[0]===255&&r[1]&128,l=r[0]===0&&(r[1]&128)===0;(c||l)&&this.warnings.push("Needlessly long format")}let e=new ArrayBuffer(this.valueHex.byteLength),t=new Uint8Array(e);for(let c=0;c<this.valueHex.byteLength;c++)t[c]=0;t[0]=r[0]&128;let s=l_(t,8),i=new ArrayBuffer(this.valueHex.byteLength),n=new Uint8Array(i);for(let c=0;c<this.valueHex.byteLength;c++)n[c]=r[c];return n[0]&=127,l_(n,8)-s}function z2(r){let e=r<0?r*-1:r,t=128;for(let s=1;s<8;s++){if(e<=t){if(r<0){let o=t-e,c=h_(o,8,s),l=new Uint8Array(c);return l[0]|=128,c}let i=h_(e,8,s),n=new Uint8Array(i);if(n[0]&128){let o=i.slice(0),c=new Uint8Array(o);i=new ArrayBuffer(i.byteLength+1),n=new Uint8Array(i);for(let l=0;l<o.byteLength;l++)n[l+1]=c[l];n[0]=0}return i}t*=Math.pow(2,8)}return new ArrayBuffer(0)}function Y2(r,e){if(r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),s=new Uint8Array(e);for(let i=0;i<t.length;i++)if(t[i]!==s[i])return!1;return!0}function X2(r,e){let t=r.toString(10);if(e<t.length)return"";let s=e-t.length,i=new Array(s);for(let o=0;o<s;o++)i[o]="0";return i.join("").concat(t)}var iN="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",nN="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=";function Q2(r,e=!1,t=!1,s=!1){let i=0,n=0,o=0,c="",l=e?nN:iN;if(s){let h=0;for(let d=0;d<r.length;d++)if(r.charCodeAt(d)!==0){h=d;break}r=r.slice(h)}for(;i<r.length;){let h=r.charCodeAt(i++);i>=r.length&&(n=1);let d=r.charCodeAt(i++);i>=r.length&&(o=1);let m=r.charCodeAt(i++),p=h>>2,A=(h&3)<<4|d>>4,w=(d&15)<<2|m>>6,C=m&63;n===1?w=C=64:o===1&&(C=64),t?w===64?c+=`${l.charAt(p)}${l.charAt(A)}`:C===64?c+=`${l.charAt(p)}${l.charAt(A)}${l.charAt(w)}`:c+=`${l.charAt(p)}${l.charAt(A)}${l.charAt(w)}${l.charAt(C)}`:c+=`${l.charAt(p)}${l.charAt(A)}${l.charAt(w)}${l.charAt(C)}`}return c}function Z2(r,e=!1,t=!1){let s=e?nN:iN;function i(l){for(let h=0;h<64;h++)if(s.charAt(h)===l)return h;return 64}function n(l){return l===64?0:l}let o=0,c="";for(;o<r.length;){let l=i(r.charAt(o++)),h=o>=r.length?0:i(r.charAt(o++)),d=o>=r.length?0:i(r.charAt(o++)),m=o>=r.length?0:i(r.charAt(o++)),p=n(l)<<2|n(h)>>4,A=(n(h)&15)<<4|n(d)>>2,w=(n(d)&3)<<6|n(m);c+=String.fromCharCode(p),d!==64&&(c+=String.fromCharCode(A)),m!==64&&(c+=String.fromCharCode(w))}if(t){let l=c.length,h=-1;for(let d=l-1;d>=0;d--)if(c.charCodeAt(d)!==0){h=d;break}h!==-1?c=c.slice(0,h+1):c=""}return c}function eD(r){let e="",t=new Uint8Array(r);for(let s of t)e+=String.fromCharCode(s);return e}function tD(r){let e=r.length,t=new ArrayBuffer(e),s=new Uint8Array(t);for(let i=0;i<e;i++)s[i]=r.charCodeAt(i);return t}var rD=Math.log(2);function sD(r){let e=Math.log(r)/rD,t=Math.floor(e),s=Math.round(e);return t===s?t:s}function iD(r,e){for(let t of e)delete r[t]}St.arrayBufferToString=eD;St.bufferToHexCodes=$2;St.checkBufferParams=F2;St.clearProps=iD;St.fromBase64=Z2;St.getParametersValue=K2;St.getUTCDate=H2;St.isEqualBuffer=Y2;St.nearestPowerOf2=sD;St.padNumber=X2;St.stringToArrayBuffer=tD;St.toBase64=Q2;St.utilConcatBuf=J2;St.utilConcatView=G2;St.utilDecodeTC=W2;St.utilEncodeTC=z2;St.utilFromBase=l_;St.utilToBase=h_});var ni=v(ue=>{"use strict";var nD=_s(),aD=f_();function uN(r){var e=Object.create(null);return r&&Object.keys(r).forEach(function(t){if(t!=="default"){var s=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,s.get?s:{enumerable:!0,get:function(){return r[t]}})}}),e.default=r,Object.freeze(e)}var ve=uN(nD),De=uN(aD);function Kv(){if(typeof BigInt>"u")throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}function m_(r){let e=0,t=0;for(let i=0;i<r.length;i++){let n=r[i];e+=n.byteLength}let s=new Uint8Array(e);for(let i=0;i<r.length;i++){let n=r[i];s.set(new Uint8Array(n),t),t+=n.byteLength}return s.buffer}function ii(r,e,t,s){return e instanceof Uint8Array?e.byteLength?t<0?(r.error="Wrong parameter: inputOffset less than zero",!1):s<0?(r.error="Wrong parameter: inputLength less than zero",!1):e.byteLength-t-s<0?(r.error="End of input reached before message was fully decoded (inconsistent offset and length values)",!1):!0:(r.error="Wrong parameter: inputBuffer has zero length",!1):(r.error="Wrong parameter: inputBuffer must be 'Uint8Array'",!1)}var pu=class{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return m_(this.items)}},id=[new Uint8Array([1])],aN="0123456789",d_="name",oN="valueHexView",oD="isHexOnly",cD="idBlock",uD="tagClass",lD="tagNumber",hD="isConstructed",fD="fromBER",dD="toBER",pD="local",nr="",Ps=new ArrayBuffer(0),nS=new Uint8Array(0),ad="EndOfContent",lN="OCTET STRING",hN="BIT STRING";function Is(r){var e;return e=class extends r{get valueHex(){return this.valueHexView.slice().buffer}set valueHex(s){this.valueHexView=new Uint8Array(s)}constructor(...s){var i;super(...s);let n=s[0]||{};this.isHexOnly=(i=n.isHexOnly)!==null&&i!==void 0?i:!1,this.valueHexView=n.valueHex?ve.BufferSourceConverter.toUint8Array(n.valueHex):nS}fromBER(s,i,n,o){let c=s instanceof ArrayBuffer?new Uint8Array(s):s;if(!ii(this,c,i,n))return-1;let l=i+n;return this.valueHexView=c.subarray(i,l),this.valueHexView.length?(this.blockLength=n,l):(this.warnings.push("Zero buffer length"),i)}toBER(s=!1){return this.isHexOnly?s?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.byteLength===this.valueHexView.buffer.byteLength?this.valueHexView.buffer:this.valueHexView.slice().buffer:(this.error="Flag 'isHexOnly' is not set, abort",Ps)}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:ve.Convert.ToHex(this.valueHexView)}}},e.NAME="hexBlock",e}var ri=class{static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(e){this.valueBeforeDecodeView=new Uint8Array(e)}constructor({blockLength:e=0,error:t=nr,warnings:s=[],valueBeforeDecode:i=nS}={}){this.blockLength=e,this.error=t,this.warnings=s,this.valueBeforeDecodeView=ve.BufferSourceConverter.toUint8Array(i)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:ve.Convert.ToHex(this.valueBeforeDecodeView)}}};ri.NAME="baseBlock";var Rt=class extends ri{fromBER(e,t,s,i){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(e,t){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}};Rt.NAME="valueBlock";var $v=class extends Is(ri){constructor({idBlock:e={}}={}){var t,s,i,n;super(),e?(this.isHexOnly=(t=e.isHexOnly)!==null&&t!==void 0?t:!1,this.valueHexView=e.valueHex?ve.BufferSourceConverter.toUint8Array(e.valueHex):nS,this.tagClass=(s=e.tagClass)!==null&&s!==void 0?s:-1,this.tagNumber=(i=e.tagNumber)!==null&&i!==void 0?i:-1,this.isConstructed=(n=e.isConstructed)!==null&&n!==void 0?n:!1):(this.tagClass=-1,this.tagNumber=-1,this.isConstructed=!1)}toBER(e=!1){let t=0;switch(this.tagClass){case 1:t|=0;break;case 2:t|=64;break;case 3:t|=128;break;case 4:t|=192;break;default:return this.error="Unknown tag class",Ps}if(this.isConstructed&&(t|=32),this.tagNumber<31&&!this.isHexOnly){let i=new Uint8Array(1);if(!e){let n=this.tagNumber;n&=31,t|=n,i[0]=t}return i.buffer}if(!this.isHexOnly){let i=De.utilToBase(this.tagNumber,7),n=new Uint8Array(i),o=i.byteLength,c=new Uint8Array(o+1);if(c[0]=t|31,!e){for(let l=0;l<o-1;l++)c[l+1]=n[l]|128;c[o]=n[o-1]}return c.buffer}let s=new Uint8Array(this.valueHexView.byteLength+1);if(s[0]=t|31,!e){let i=this.valueHexView;for(let n=0;n<i.length-1;n++)s[n+1]=i[n]|128;s[this.valueHexView.byteLength]=i[i.length-1]}return s.buffer}fromBER(e,t,s){let i=ve.BufferSourceConverter.toUint8Array(e);if(!ii(this,i,t,s))return-1;let n=i.subarray(t,t+s);if(n.length===0)return this.error="Zero buffer length",-1;switch(n[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:return this.error="Unknown tag class",-1}this.isConstructed=(n[0]&32)===32,this.isHexOnly=!1;let c=n[0]&31;if(c!==31)this.tagNumber=c,this.blockLength=1;else{let l=0;for(;;){let d=l+1;if(d>=n.length)return this.error="End of input reached before message was fully decoded",-1;if(l++,(n[d]&128)===0)break}this.blockLength=l+1;let h=this.valueHexView=new Uint8Array(l);for(let d=0;d<l;d++)h[d]=n[d+1]&127;this.blockLength<=9?this.tagNumber=De.utilFromBase(h,7):(this.isHexOnly=!0,this.warnings.push("Tag too long, represented as hex-coded"))}if(this.tagClass===1&&this.isConstructed)switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:return this.error="Constructed encoding used for primitive type",-1}return t+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}};$v.NAME="identificationBlock";var Fv=class extends ri{constructor({lenBlock:e={}}={}){var t,s,i;super(),this.isIndefiniteForm=(t=e.isIndefiniteForm)!==null&&t!==void 0?t:!1,this.longFormUsed=(s=e.longFormUsed)!==null&&s!==void 0?s:!1,this.length=(i=e.length)!==null&&i!==void 0?i:0}fromBER(e,t,s){let i=ve.BufferSourceConverter.toUint8Array(e);if(!ii(this,i,t,s))return-1;let n=i.subarray(t,t+s);if(n.length===0)return this.error="Zero buffer length",-1;if(n[0]===255)return this.error="Length block 0xFF is reserved by standard",-1;if(this.isIndefiniteForm=n[0]===128,this.isIndefiniteForm)return this.blockLength=1,t+this.blockLength;if(this.longFormUsed=!!(n[0]&128),this.longFormUsed===!1)return this.length=n[0],this.blockLength=1,t+this.blockLength;let o=n[0]&127;if(o>8)return this.error="Too big integer",-1;if(o+1>n.length)return this.error="End of input reached before message was fully decoded",-1;let c=t+1,l=i.subarray(c,c+o);return l[o-1]===0&&this.warnings.push("Needlessly long encoded length"),this.length=De.utilFromBase(l,8),this.longFormUsed&&this.length<=127&&this.warnings.push("Unnecessary usage of long length form"),this.blockLength=o+1,t+this.blockLength}toBER(e=!1){let t,s;if(this.length>127&&(this.longFormUsed=!0),this.isIndefiniteForm)return t=new ArrayBuffer(1),e===!1&&(s=new Uint8Array(t),s[0]=128),t;if(this.longFormUsed){let i=De.utilToBase(this.length,8);if(i.byteLength>127)return this.error="Too big length",Ps;if(t=new ArrayBuffer(i.byteLength+1),e)return t;let n=new Uint8Array(i);s=new Uint8Array(t),s[0]=i.byteLength|128;for(let o=0;o<i.byteLength;o++)s[o+1]=n[o];return t}return t=new ArrayBuffer(1),e===!1&&(s=new Uint8Array(t),s[0]=this.length),t}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}};Fv.NAME="lengthBlock";var G={},Et=class extends ri{constructor({name:e=nr,optional:t=!1,primitiveSchema:s,...i}={},n){super(i),this.name=e,this.optional=t,s&&(this.primitiveSchema=s),this.idBlock=new $v(i),this.lenBlock=new Fv(i),this.valueBlock=n?new n(i):new Rt(i)}fromBER(e,t,s,i){let n=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?s:this.lenBlock.length,i);return n===-1?(this.error=this.valueBlock.error,n):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),n)}toBER(e,t){let s=t||new pu;t||fN(this);let i=this.idBlock.toBER(e);if(s.write(i),this.lenBlock.isIndefiniteForm)s.write(new Uint8Array([128]).buffer),this.valueBlock.toBER(e,s),s.write(new ArrayBuffer(2));else{let n=this.valueBlock.toBER(e);this.lenBlock.length=n.byteLength;let o=this.lenBlock.toBER(e);s.write(o),s.write(n)}return t?Ps:s.final()}toJSON(){let e={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};return this.primitiveSchema&&(e.primitiveSchema=this.primitiveSchema.toJSON()),e}toString(e="ascii"){return e==="ascii"?this.onAsciiEncoding():ve.Convert.ToHex(this.toBER())}onAsciiEncoding(){let e=this.constructor.NAME,t=ve.Convert.ToHex(this.valueBlock.valueBeforeDecodeView);return`${e} : ${t}`}isEqual(e){if(this===e)return!0;if(!(e instanceof this.constructor))return!1;let t=this.toBER(),s=e.toBER();return De.isEqualBuffer(t,s)}};Et.NAME="BaseBlock";function fN(r){var e;if(r instanceof G.Constructed)for(let t of r.valueBlock.value)fN(t)&&(r.lenBlock.isIndefiniteForm=!0);return!!(!((e=r.lenBlock)===null||e===void 0)&&e.isIndefiniteForm)}var od=class extends Et{getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}constructor({value:e=nr,...t}={},s){super(t,s),e&&this.fromString(e)}fromBER(e,t,s){let i=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?s:this.lenBlock.length);return i===-1?(this.error=this.valueBlock.error,i):(this.fromBuffer(this.valueBlock.valueHexView),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),i)}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}};od.NAME="BaseStringBlock";var Jv=class extends Is(Rt){constructor({isHexOnly:e=!0,...t}={}){super(t),this.isHexOnly=e}};Jv.NAME="PrimitiveValueBlock";var dN,cd=class extends Et{constructor(e={}){super(e,Jv),this.idBlock.isConstructed=!1}};dN=cd;G.Primitive=dN;cd.NAME="PRIMITIVE";var pN=100,mN=1e4,gN=16*1024*1024,mD="Maximum ASN.1 nesting depth exceeded",gD="Maximum ASN.1 node count exceeded",yD="Maximum ASN.1 content length exceeded";function Md(r={}){var e,t,s;return{depth:0,maxDepth:(e=r.maxDepth)!==null&&e!==void 0?e:pN,nodesCount:0,maxNodes:(t=r.maxNodes)!==null&&t!==void 0?t:mN,maxContentLength:(s=r.maxContentLength)!==null&&s!==void 0?s:gN}}function vD(r){let e=new Et({},Rt);return e.error=r,{offset:-1,result:e}}function SD(r){if(r.nodesCount+=1,r.nodesCount>r.maxNodes)return gD}function AD(r,e){if(r>e.maxContentLength)return yD}function g_(r,e,t,s){let i=s.depth+1;if(i>s.maxDepth)return vD(mD);s.depth=i;try{return aS(r,e,t,s)}finally{s.depth-=1}}function wD(r,e){if(r instanceof e)return r;let t=new e;return t.idBlock=r.idBlock,t.lenBlock=r.lenBlock,t.warnings=r.warnings,t.valueBeforeDecodeView=r.valueBeforeDecodeView,t}function aS(r,e=0,t=r.length,s=Md()){let i=e,n=new Et({},Rt),o=new ri;if(!ii(o,r,e,t))return n.error=o.error,{offset:-1,result:n};if(!r.subarray(e,e+t).length)return n.error="Zero buffer length",{offset:-1,result:n};let l=SD(s);if(l)return n.error=l,{offset:-1,result:n};let h=n.idBlock.fromBER(r,e,t);if(n.idBlock.warnings.length&&n.warnings.concat(n.idBlock.warnings),h===-1)return n.error=n.idBlock.error,{offset:-1,result:n};if(e=h,t-=n.idBlock.blockLength,h=n.lenBlock.fromBER(r,e,t),n.lenBlock.warnings.length&&n.warnings.concat(n.lenBlock.warnings),h===-1)return n.error=n.lenBlock.error,{offset:-1,result:n};e=h,t-=n.lenBlock.blockLength;let d=n.lenBlock.isIndefiniteForm?t:n.lenBlock.length,m=AD(d,s);if(m)return n.error=m,{offset:-1,result:n};if(!n.idBlock.isConstructed&&n.lenBlock.isIndefiniteForm)return n.error="Indefinite length form used for primitive encoding form",{offset:-1,result:n};let p=Et;switch(n.idBlock.tagClass){case 1:if(n.idBlock.tagNumber>=37&&n.idBlock.isHexOnly===!1)return n.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard",{offset:-1,result:n};switch(n.idBlock.tagNumber){case 0:if(n.idBlock.isConstructed&&n.lenBlock.length>0)return n.error="Type [UNIVERSAL 0] is reserved",{offset:-1,result:n};p=G.EndOfContent;break;case 1:p=G.Boolean;break;case 2:p=G.Integer;break;case 3:p=G.BitString;break;case 4:p=G.OctetString;break;case 5:p=G.Null;break;case 6:p=G.ObjectIdentifier;break;case 10:p=G.Enumerated;break;case 12:p=G.Utf8String;break;case 13:p=G.RelativeObjectIdentifier;break;case 14:p=G.TIME;break;case 15:return n.error="[UNIVERSAL 15] is reserved by ASN.1 standard",{offset:-1,result:n};case 16:p=G.Sequence;break;case 17:p=G.Set;break;case 18:p=G.NumericString;break;case 19:p=G.PrintableString;break;case 20:p=G.TeletexString;break;case 21:p=G.VideotexString;break;case 22:p=G.IA5String;break;case 23:p=G.UTCTime;break;case 24:p=G.GeneralizedTime;break;case 25:p=G.GraphicString;break;case 26:p=G.VisibleString;break;case 27:p=G.GeneralString;break;case 28:p=G.UniversalString;break;case 29:p=G.CharacterString;break;case 30:p=G.BmpString;break;case 31:p=G.DATE;break;case 32:p=G.TimeOfDay;break;case 33:p=G.DateTime;break;case 34:p=G.Duration;break;default:{let A=n.idBlock.isConstructed?new G.Constructed:new G.Primitive;A.idBlock=n.idBlock,A.lenBlock=n.lenBlock,A.warnings=n.warnings,n=A}}break;default:p=n.idBlock.isConstructed?G.Constructed:G.Primitive}return n=wD(n,p),h=n.fromBER(r,e,d,s),n.valueBeforeDecodeView=r.subarray(i,i+n.blockLength),{offset:h,result:n}}function _D(r,e={}){if(!r.byteLength){let t=new Et({},Rt);return t.error="Input buffer has zero length",{offset:-1,result:t}}return aS(ve.BufferSourceConverter.toUint8Array(r).slice(),0,r.byteLength,Md(e))}function bD(r,e){return r?1:e}var bs=class extends Rt{constructor({value:e=[],isIndefiniteForm:t=!1,...s}={}){super(s),this.value=e,this.isIndefiniteForm=t}fromBER(e,t,s,i){let n=ve.BufferSourceConverter.toUint8Array(e),o=i??Md();if(!ii(this,n,t,s))return-1;if(this.valueBeforeDecodeView=n.subarray(t,t+s),this.valueBeforeDecodeView.length===0)return this.warnings.push("Zero buffer length"),t;let c=t;for(;bD(this.isIndefiniteForm,s)>0;){let l=g_(n,c,s,o);if(l.offset===-1)return this.error=l.result.error,this.warnings.concat(l.result.warnings),-1;if(c=l.offset,this.blockLength+=l.result.blockLength,s-=l.result.blockLength,this.value.push(l.result),this.isIndefiniteForm&&l.result.constructor.NAME===ad)break}return this.isIndefiniteForm&&(this.value[this.value.length-1].constructor.NAME===ad?this.value.pop():this.warnings.push("No EndOfContent block encoded")),c}toBER(e,t){let s=t||new pu;for(let i=0;i<this.value.length;i++)this.value[i].toBER(e,s);return t?Ps:s.final()}toJSON(){let e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(let t of this.value)e.value.push(t.toJSON());return e}};bs.NAME="ConstructedValueBlock";var yN,si=class extends Et{constructor(e={}){super(e,bs),this.idBlock.isConstructed=!0}fromBER(e,t,s,i){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;let n=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?s:this.lenBlock.length,i);return n===-1?(this.error=this.valueBlock.error,n):(this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.valueBlock.error.length||(this.blockLength+=this.valueBlock.blockLength),n)}onAsciiEncoding(){let e=[];for(let s of this.valueBlock.value)e.push(s.toString("ascii").split(`
7
+ `).map(i=>` ${i}`).join(`
8
+ `));let t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;return e.length?`${t} :
9
+ ${e.join(`
10
+ `)}`:`${t} :`}};yN=si;G.Constructed=yN;si.NAME="CONSTRUCTED";var Gv=class extends Rt{fromBER(e,t,s){return t}toBER(e){return Ps}};Gv.override="EndOfContentValueBlock";var vN,ud=class extends Et{constructor(e={}){super(e,Gv),this.idBlock.tagClass=1,this.idBlock.tagNumber=0}};vN=ud;G.EndOfContent=vN;ud.NAME=ad;var SN,ld=class extends Et{constructor(e={}){super(e,Rt),this.idBlock.tagClass=1,this.idBlock.tagNumber=5}fromBER(e,t,s){return this.lenBlock.length>0&&this.warnings.push("Non-zero length of value block for Null type"),this.idBlock.error.length||(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length||(this.blockLength+=this.lenBlock.blockLength),this.blockLength+=s,t+s>e.byteLength?(this.error="End of input reached before message was fully decoded (inconsistent offset and length values)",-1):t+s}toBER(e,t){let s=new ArrayBuffer(2);if(!e){let i=new Uint8Array(s);i[0]=5,i[1]=0}return t&&t.write(s),s}onAsciiEncoding(){return`${this.constructor.NAME}`}};SN=ld;G.Null=SN;ld.NAME="NULL";var Wv=class extends Is(Rt){get value(){for(let e of this.valueHexView)if(e>0)return!0;return!1}set value(e){this.valueHexView[0]=e?255:0}constructor({value:e,...t}={}){super(t),t.valueHex?this.valueHexView=ve.BufferSourceConverter.toUint8Array(t.valueHex):this.valueHexView=new Uint8Array(1),e&&(this.value=e)}fromBER(e,t,s){let i=ve.BufferSourceConverter.toUint8Array(e);return ii(this,i,t,s)?(this.valueHexView=i.subarray(t,t+s),s>1&&this.warnings.push("Boolean value encoded in more then 1 octet"),this.isHexOnly=!0,De.utilDecodeTC.call(this),this.blockLength=s,t+s):-1}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}};Wv.NAME="BooleanValueBlock";var AN,hd=class extends Et{getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}constructor(e={}){super(e,Wv),this.idBlock.tagClass=1,this.idBlock.tagNumber=1}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};AN=hd;G.Boolean=AN;hd.NAME="BOOLEAN";var zv=class extends Is(bs){constructor({isConstructed:e=!1,...t}={}){super(t),this.isConstructed=e}fromBER(e,t,s,i){let n=0;if(this.isConstructed){if(this.isHexOnly=!1,n=bs.prototype.fromBER.call(this,e,t,s,i),n===-1)return n;for(let o=0;o<this.value.length;o++){let c=this.value[o].constructor.NAME;if(c===ad){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only",-1}if(c!==lN)return this.error="OCTET STRING may consists of OCTET STRINGs only",-1}}else this.isHexOnly=!0,n=super.fromBER(e,t,s),this.blockLength=s;return n}toBER(e,t){return this.isConstructed?bs.prototype.toBER.call(this,e,t):e?new ArrayBuffer(this.valueHexView.byteLength):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}};zv.NAME="OctetStringValueBlock";var y_,fd=class extends Et{constructor({idBlock:e={},lenBlock:t={},...s}={}){var i,n;(i=s.isConstructed)!==null&&i!==void 0||(s.isConstructed=!!(!((n=s.value)===null||n===void 0)&&n.length)),super({idBlock:{isConstructed:s.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!s.isIndefiniteForm},...s},zv),this.idBlock.tagClass=1,this.idBlock.tagNumber=4}fromBER(e,t,s,i){if(this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,s===0)return this.idBlock.error.length===0&&(this.blockLength+=this.idBlock.blockLength),this.lenBlock.error.length===0&&(this.blockLength+=this.lenBlock.blockLength),t;if(!this.valueBlock.isConstructed){let o=(e instanceof ArrayBuffer?new Uint8Array(e):e).subarray(t,t+s);try{if(o.byteLength){let c=i??Md(),l=g_(o,0,o.byteLength,c);l.offset!==-1&&l.offset===s&&(this.valueBlock.value=[l.result])}}catch{}}return super.fromBER(e,t,s,i)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return si.prototype.onAsciiEncoding.call(this);let e=this.constructor.NAME,t=ve.Convert.ToHex(this.valueBlock.valueHexView);return`${e} : ${t}`}getValue(){if(!this.idBlock.isConstructed)return this.valueBlock.valueHexView.slice().buffer;let e=[];for(let t of this.valueBlock.value)t instanceof y_&&e.push(t.valueBlock.valueHexView);return ve.BufferSourceConverter.concat(e)}};y_=fd;G.OctetString=y_;fd.NAME=lN;var Yv=class extends Is(bs){constructor({unusedBits:e=0,isConstructed:t=!1,...s}={}){super(s),this.unusedBits=e,this.isConstructed=t,this.blockLength=this.valueHexView.byteLength}fromBER(e,t,s,i){if(!s)return t;let n=-1;if(this.isConstructed){if(n=bs.prototype.fromBER.call(this,e,t,s,i),n===-1)return n;for(let l of this.value){let h=l.constructor.NAME;if(h===ad){if(this.isIndefiniteForm)break;return this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only",-1}if(h!==hN)return this.error="BIT STRING may consists of BIT STRINGs only",-1;let d=l.valueBlock;if(this.unusedBits>0&&d.unusedBits>0)return this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only',-1;this.unusedBits=d.unusedBits}return n}let o=ve.BufferSourceConverter.toUint8Array(e);if(!ii(this,o,t,s))return-1;let c=o.subarray(t,t+s);if(this.unusedBits=c[0],this.unusedBits>7)return this.error="Unused bits for BitString must be in range 0-7",-1;if(!this.unusedBits){let l=c.subarray(1);try{if(l.byteLength){let h=i??Md(),d=g_(l,0,l.byteLength,h);d.offset!==-1&&d.offset===s-1&&(this.value=[d.result])}}catch{}}return this.valueHexView=c.subarray(1),this.blockLength=c.length,t+s}toBER(e,t){if(this.isConstructed)return bs.prototype.toBER.call(this,e,t);if(e)return new ArrayBuffer(this.valueHexView.byteLength+1);if(!this.valueHexView.byteLength){let i=new Uint8Array(1);return i[0]=0,i.buffer}let s=new Uint8Array(this.valueHexView.length+1);return s[0]=this.unusedBits,s.set(this.valueHexView,1),s.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}};Yv.NAME="BitStringValueBlock";var wN,dd=class extends Et{constructor({idBlock:e={},lenBlock:t={},...s}={}){var i,n;(i=s.isConstructed)!==null&&i!==void 0||(s.isConstructed=!!(!((n=s.value)===null||n===void 0)&&n.length)),super({idBlock:{isConstructed:s.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!s.isIndefiniteForm},...s},Yv),this.idBlock.tagClass=1,this.idBlock.tagNumber=3}fromBER(e,t,s,i){return this.valueBlock.isConstructed=this.idBlock.isConstructed,this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm,super.fromBER(e,t,s,i)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length)return si.prototype.onAsciiEncoding.call(this);{let e=[],t=this.valueBlock.valueHexView;for(let o of t)e.push(o.toString(2).padStart(8,"0"));let s=e.join(""),i=this.constructor.NAME,n=s.substring(0,s.length-this.valueBlock.unusedBits);return`${i} : ${n}`}}};wN=dd;G.BitString=wN;dd.NAME=hN;var _N;function CD(r,e){let t=new Uint8Array([0]),s=new Uint8Array(r),i=new Uint8Array(e),n=s.slice(0),o=n.length-1,c=i.slice(0),l=c.length-1,h=0,d=l<o?o:l,m=0;for(let p=d;p>=0;p--,m++)!0===m<c.length?h=n[o-m]+c[l-m]+t[0]:h=n[o-m]+t[0],t[0]=h/10,!0===m>=n.length?n=De.utilConcatView(new Uint8Array([h%10]),n):n[o-m]=h%10;return t[0]>0&&(n=De.utilConcatView(t,n)),n}function cN(r){if(r>=id.length)for(let e=id.length;e<=r;e++){let t=new Uint8Array([0]),s=id[e-1].slice(0);for(let i=s.length-1;i>=0;i--){let n=new Uint8Array([(s[i]<<1)+t[0]]);t[0]=n[0]/10,s[i]=n[0]%10}t[0]>0&&(s=De.utilConcatView(t,s)),id.push(s)}return id[r]}function PD(r,e){let t=0,s=new Uint8Array(r),i=new Uint8Array(e),n=s.slice(0),o=n.length-1,c=i.slice(0),l=c.length-1,h,d=0;for(let m=l;m>=0;m--,d++)h=n[o-d]-c[l-d]-t,!0===h<0?(t=1,n[o-d]=h+10):(t=0,n[o-d]=h);if(t>0)for(let m=o-l+1;m>=0;m--,d++)if(h=n[o-d]-t,h<0)t=1,n[o-d]=h+10;else{t=0,n[o-d]=h;break}return n.slice()}var pd=class extends Is(Rt){setValueHex(){this.valueHexView.length>=4?(this.warnings.push("Too big Integer for decoding, hex only"),this.isHexOnly=!0,this._valueDec=0):(this.isHexOnly=!1,this.valueHexView.length>0&&(this._valueDec=De.utilDecodeTC.call(this)))}constructor({value:e,...t}={}){super(t),this._valueDec=0,t.valueHex&&this.setValueHex(),e!==void 0&&(this.valueDec=e)}set valueDec(e){this._valueDec=e,this.isHexOnly=!1,this.valueHexView=new Uint8Array(De.utilEncodeTC(e))}get valueDec(){return this._valueDec}fromDER(e,t,s,i=0){let n=this.fromBER(e,t,s);if(n===-1)return n;let o=this.valueHexView;return o[0]===0&&(o[1]&128)!==0?this.valueHexView=o.subarray(1):i!==0&&o.length<i&&(i-o.length>1&&(i=o.length+1),this.valueHexView=o.subarray(i-o.length)),n}toDER(e=!1){let t=this.valueHexView;switch(!0){case(t[0]&128)!==0:{let s=new Uint8Array(this.valueHexView.length+1);s[0]=0,s.set(t,1),this.valueHexView=s}break;case(t[0]===0&&(t[1]&128)===0):this.valueHexView=this.valueHexView.subarray(1);break}return this.toBER(e)}fromBER(e,t,s){let i=super.fromBER(e,t,s);return i===-1||this.setValueHex(),i}toBER(e){return e?new ArrayBuffer(this.valueHexView.length):this.valueHexView.slice().buffer}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){let e=this.valueHexView.length*8-1,t=new Uint8Array(this.valueHexView.length*8/3),s=0,i,n=this.valueHexView,o="",c=!1;for(let l=n.byteLength-1;l>=0;l--){i=n[l];for(let h=0;h<8;h++)(i&1)===1&&(s===e?(t=PD(cN(s),t),o="-"):t=CD(t,cN(s))),s++,i>>=1}for(let l=0;l<t.length;l++)t[l]&&(c=!0),c&&(o+=aN.charAt(t[l]));return c===!1&&(o+=aN.charAt(0)),o}};_N=pd;pd.NAME="IntegerValueBlock";Object.defineProperty(_N.prototype,"valueHex",{set:function(r){this.valueHexView=new Uint8Array(r),this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});var nd,mu=class extends Et{constructor(e={}){super(e,pd),this.idBlock.tagClass=1,this.idBlock.tagNumber=2}toBigInt(){return Kv(),BigInt(this.valueBlock.toString())}static fromBigInt(e){Kv();let t=BigInt(e),s=new pu,i=t.toString(16).replace(/^-/,""),n=new Uint8Array(ve.Convert.FromHex(i));if(t<0){let c=new Uint8Array(n.length+(n[0]&128?1:0));c[0]|=128;let h=BigInt(`0x${ve.Convert.ToHex(c)}`)+t,d=ve.BufferSourceConverter.toUint8Array(ve.Convert.FromHex(h.toString(16)));d[0]|=128,s.write(d)}else n[0]&128&&s.write(new Uint8Array([0])),s.write(n);return new nd({valueHex:s.final()})}convertToDER(){let e=new nd({valueHex:this.valueBlock.valueHexView});return e.valueBlock.toDER(),e}convertFromDER(){return new nd({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}};nd=mu;G.Integer=nd;mu.NAME="INTEGER";var bN,md=class extends mu{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=10}};bN=md;G.Enumerated=bN;md.NAME="ENUMERATED";var gd=class extends Is(Rt){constructor({valueDec:e=-1,isFirstSid:t=!1,...s}={}){super(s),this.valueDec=e,this.isFirstSid=t}fromBER(e,t,s){if(!s)return t;let i=ve.BufferSourceConverter.toUint8Array(e);if(!ii(this,i,t,s))return-1;let n=i.subarray(t,t+s);this.valueHexView=new Uint8Array(s);for(let c=0;c<s&&(this.valueHexView[c]=n[c]&127,this.blockLength++,(n[c]&128)!==0);c++);let o=new Uint8Array(this.blockLength);for(let c=0;c<this.blockLength;c++)o[c]=this.valueHexView[c];return this.valueHexView=o,(n[this.blockLength-1]&128)!==0?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=De.utilFromBase(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}set valueBigInt(e){Kv();let t=BigInt(e).toString(2);for(;t.length%7;)t="0"+t;let s=new Uint8Array(t.length/7);for(let i=0;i<s.length;i++)s[i]=parseInt(t.slice(i*7,i*7+7),2)+(i+1<s.length?128:0);this.fromBER(s.buffer,0,s.length)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let i=this.valueHexView,n=new Uint8Array(this.blockLength);for(let o=0;o<this.blockLength-1;o++)n[o]=i[o]|128;return n[this.blockLength-1]=i[this.blockLength-1],n.buffer}let t=De.utilToBase(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",Ps;let s=new Uint8Array(t.byteLength);if(!e){let i=new Uint8Array(t),n=t.byteLength-1;for(let o=0;o<n;o++)s[o]=i[o]|128;s[n]=i[n]}return s}toString(){let e="";if(this.isHexOnly)e=ve.Convert.ToHex(this.valueHexView);else if(this.isFirstSid){let t=this.valueDec;this.valueDec<=39?e="0.":this.valueDec<=79?(e="1.",t-=40):(e="2.",t-=80),e+=t.toString()}else e=this.valueDec.toString();return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}};gd.NAME="sidBlock";var Xv=class extends Rt{constructor({value:e=nr,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,s){let i=t;for(;s>0;){let n=new gd;if(i=n.fromBER(e,i,s),i===-1)return this.blockLength=0,this.error=n.error,i;this.value.length===0&&(n.isFirstSid=!0),this.blockLength+=n.blockLength,s-=n.blockLength,this.value.push(n)}return i}toBER(e){let t=[];for(let s=0;s<this.value.length;s++){let i=this.value[s].toBER(e);if(i.byteLength===0)return this.error=this.value[s].error,Ps;t.push(i)}return m_(t)}fromString(e){this.value=[];let t=0,s=0,i="",n=!1;do if(s=e.indexOf(".",t),s===-1?i=e.substring(t):i=e.substring(t,s),t=s+1,n){let o=this.value[0],c=0;switch(o.valueDec){case 0:break;case 1:c=40;break;case 2:c=80;break;default:this.value=[];return}let l=parseInt(i,10);if(isNaN(l))return;o.valueDec=l+c,n=!1}else{let o=new gd;if(i>Number.MAX_SAFE_INTEGER){Kv();let c=BigInt(i);o.valueBigInt=c}else if(o.valueDec=parseInt(i,10),isNaN(o.valueDec))return;this.value.length||(o.isFirstSid=!0,n=!0),this.value.push(o)}while(s!==-1)}toString(){let e="",t=!1;for(let s=0;s<this.value.length;s++){t=this.value[s].isHexOnly;let i=this.value[s].toString();s!==0&&(e=`${e}.`),t?(i=`{${i}}`,this.value[s].isFirstSid?e=`2.{${i} - 80}`:e+=i):e+=i}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};Xv.NAME="ObjectIdentifierValueBlock";var CN,yd=class extends Et{getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}constructor(e={}){super(e,Xv),this.idBlock.tagClass=1,this.idBlock.tagNumber=6}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};CN=yd;G.ObjectIdentifier=CN;yd.NAME="OBJECT IDENTIFIER";var vd=class extends Is(ri){constructor({valueDec:e=0,...t}={}){super(t),this.valueDec=e}fromBER(e,t,s){if(s===0)return t;let i=ve.BufferSourceConverter.toUint8Array(e);if(!ii(this,i,t,s))return-1;let n=i.subarray(t,t+s);this.valueHexView=new Uint8Array(s);for(let c=0;c<s&&(this.valueHexView[c]=n[c]&127,this.blockLength++,(n[c]&128)!==0);c++);let o=new Uint8Array(this.blockLength);for(let c=0;c<this.blockLength;c++)o[c]=this.valueHexView[c];return this.valueHexView=o,(n[this.blockLength-1]&128)!==0?(this.error="End of input reached before message was fully decoded",-1):(this.valueHexView[0]===0&&this.warnings.push("Needlessly long format of SID encoding"),this.blockLength<=8?this.valueDec=De.utilFromBase(this.valueHexView,7):(this.isHexOnly=!0,this.warnings.push("Too big SID for decoding, hex only")),t+this.blockLength)}toBER(e){if(this.isHexOnly){if(e)return new ArrayBuffer(this.valueHexView.byteLength);let i=this.valueHexView,n=new Uint8Array(this.blockLength);for(let o=0;o<this.blockLength-1;o++)n[o]=i[o]|128;return n[this.blockLength-1]=i[this.blockLength-1],n.buffer}let t=De.utilToBase(this.valueDec,7);if(t.byteLength===0)return this.error="Error during encoding SID value",Ps;let s=new Uint8Array(t.byteLength);if(!e){let i=new Uint8Array(t),n=t.byteLength-1;for(let o=0;o<n;o++)s[o]=i[o]|128;s[n]=i[n]}return s.buffer}toString(){let e="";return this.isHexOnly?e=ve.Convert.ToHex(this.valueHexView):e=this.valueDec.toString(),e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}};vd.NAME="relativeSidBlock";var Qv=class extends Rt{constructor({value:e=nr,...t}={}){super(t),this.value=[],e&&this.fromString(e)}fromBER(e,t,s){let i=t;for(;s>0;){let n=new vd;if(i=n.fromBER(e,i,s),i===-1)return this.blockLength=0,this.error=n.error,i;this.blockLength+=n.blockLength,s-=n.blockLength,this.value.push(n)}return i}toBER(e,t){let s=[];for(let i=0;i<this.value.length;i++){let n=this.value[i].toBER(e);if(n.byteLength===0)return this.error=this.value[i].error,Ps;s.push(n)}return m_(s)}fromString(e){this.value=[];let t=0,s=0,i="";do{s=e.indexOf(".",t),s===-1?i=e.substring(t):i=e.substring(t,s),t=s+1;let n=new vd;if(n.valueDec=parseInt(i,10),isNaN(n.valueDec))return!0;this.value.push(n)}while(s!==-1);return!0}toString(){let e="",t=!1;for(let s=0;s<this.value.length;s++){t=this.value[s].isHexOnly;let i=this.value[s].toString();s!==0&&(e=`${e}.`),t&&(i=`{${i}}`),e+=i}return e}toJSON(){let e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++)e.sidArray.push(this.value[t].toJSON());return e}};Qv.NAME="RelativeObjectIdentifierValueBlock";var PN,Sd=class extends Et{getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}constructor(e={}){super(e,Qv),this.idBlock.tagClass=1,this.idBlock.tagNumber=13}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}};PN=Sd;G.RelativeObjectIdentifier=PN;Sd.NAME="RelativeObjectIdentifier";var IN,Ad=class extends si{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=16}};IN=Ad;G.Sequence=IN;Ad.NAME="SEQUENCE";var EN,wd=class extends si{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=17}};EN=wd;G.Set=EN;wd.NAME="SET";var Zv=class extends Is(Rt){constructor({...e}={}){super(e),this.isHexOnly=!0,this.value=nr}toJSON(){return{...super.toJSON(),value:this.value}}};Zv.NAME="StringValueBlock";var eS=class extends Zv{};eS.NAME="SimpleStringValueBlock";var er=class extends od{constructor({...e}={}){super(e,eS)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,ve.BufferSourceConverter.toUint8Array(e))}fromString(e){let t=e.length,s=this.valueBlock.valueHexView=new Uint8Array(t);for(let i=0;i<t;i++)s[i]=e.charCodeAt(i);this.valueBlock.value=e}};er.NAME="SIMPLE STRING";var tS=class extends er{fromBuffer(e){this.valueBlock.valueHexView=ve.BufferSourceConverter.toUint8Array(e);try{this.valueBlock.value=ve.Convert.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`),this.valueBlock.value=ve.Convert.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(ve.Convert.FromUtf8String(e)),this.valueBlock.value=e}};tS.NAME="Utf8StringValueBlock";var kN,Cs=class extends tS{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=12}};kN=Cs;G.Utf8String=kN;Cs.NAME="UTF8String";var rS=class extends er{fromBuffer(e){this.valueBlock.value=ve.Convert.ToUtf16String(e),this.valueBlock.valueHexView=ve.BufferSourceConverter.toUint8Array(e)}fromString(e){this.valueBlock.value=e,this.valueBlock.valueHexView=new Uint8Array(ve.Convert.FromUtf16String(e))}};rS.NAME="BmpStringValueBlock";var NN,_d=class extends rS{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=30}};NN=_d;G.BmpString=NN;_d.NAME="BMPString";var sS=class extends er{fromBuffer(e){let t=ArrayBuffer.isView(e)?e.slice().buffer:e.slice(0),s=new Uint8Array(t);for(let i=0;i<s.length;i+=4)s[i]=s[i+3],s[i+1]=s[i+2],s[i+2]=0,s[i+3]=0;this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(t))}fromString(e){let t=e.length,s=this.valueBlock.valueHexView=new Uint8Array(t*4);for(let i=0;i<t;i++){let n=De.utilToBase(e.charCodeAt(i),8),o=new Uint8Array(n);if(o.length>4)continue;let c=4-o.length;for(let l=o.length-1;l>=0;l--)s[i*4+l+c]=o[l]}this.valueBlock.value=e}};sS.NAME="UniversalStringValueBlock";var BN,bd=class extends sS{constructor({...e}={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=28}};BN=bd;G.UniversalString=BN;bd.NAME="UniversalString";var xN,Cd=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=18}};xN=Cd;G.NumericString=xN;Cd.NAME="NumericString";var ON,Pd=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=19}};ON=Pd;G.PrintableString=ON;Pd.NAME="PrintableString";var TN,Id=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=20}};TN=Id;G.TeletexString=TN;Id.NAME="TeletexString";var VN,Ed=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=21}};VN=Ed;G.VideotexString=VN;Ed.NAME="VideotexString";var RN,kd=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=22}};RN=kd;G.IA5String=RN;kd.NAME="IA5String";var DN,Nd=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=25}};DN=Nd;G.GraphicString=DN;Nd.NAME="GraphicString";var qN,gu=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=26}};qN=gu;G.VisibleString=qN;gu.NAME="VisibleString";var jN,Bd=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=27}};jN=Bd;G.GeneralString=jN;Bd.NAME="GeneralString";var MN,xd=class extends er{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=29}};MN=xd;G.CharacterString=MN;xd.NAME="CharacterString";var LN,yu=class extends gu{constructor({value:e,valueDate:t,...s}={}){if(super(s),this.year=0,this.month=0,this.day=0,this.hour=0,this.minute=0,this.second=0,e){this.fromString(e),this.valueBlock.valueHexView=new Uint8Array(e.length);for(let i=0;i<e.length;i++)this.valueBlock.valueHexView[i]=e.charCodeAt(i)}t&&(this.fromDate(t),this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())),this.idBlock.tagClass=1,this.idBlock.tagNumber=23}fromBuffer(e){this.fromString(String.fromCharCode.apply(null,ve.BufferSourceConverter.toUint8Array(e)))}toBuffer(){let e=this.toString(),t=new ArrayBuffer(e.length),s=new Uint8Array(t);for(let i=0;i<e.length;i++)s[i]=e.charCodeAt(i);return t}fromDate(e){this.year=e.getUTCFullYear(),this.month=e.getUTCMonth()+1,this.day=e.getUTCDate(),this.hour=e.getUTCHours(),this.minute=e.getUTCMinutes(),this.second=e.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(e){let s=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/ig.exec(e);if(s===null){this.error="Wrong input string for conversion";return}let i=parseInt(s[1],10);i>=50?this.year=1900+i:this.year=2e3+i,this.month=parseInt(s[2],10),this.day=parseInt(s[3],10),this.hour=parseInt(s[4],10),this.minute=parseInt(s[5],10),this.second=parseInt(s[6],10)}toString(e="iso"){if(e==="iso"){let t=new Array(7);return t[0]=De.padNumber(this.year<2e3?this.year-1900:this.year-2e3,2),t[1]=De.padNumber(this.month,2),t[2]=De.padNumber(this.day,2),t[3]=De.padNumber(this.hour,2),t[4]=De.padNumber(this.minute,2),t[5]=De.padNumber(this.second,2),t[6]="Z",t.join("")}return super.toString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}};LN=yu;G.UTCTime=LN;yu.NAME="UTCTime";var UN,Od=class extends yu{constructor(e={}){var t;super(e),(t=this.millisecond)!==null&&t!==void 0||(this.millisecond=0),this.idBlock.tagClass=1,this.idBlock.tagNumber=24}fromDate(e){super.fromDate(e),this.millisecond=e.getUTCMilliseconds()}toDate(){let e=Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond);return new Date(e)}fromString(e){let t=!1,s="",i="",n=0,o,c=0,l=0;if(e[e.length-1]==="Z")s=e.substring(0,e.length-1),t=!0;else{let m=new Number(e[e.length-1]);if(isNaN(m.valueOf()))throw new Error("Wrong input string for conversion");s=e}if(t){if(s.indexOf("+")!==-1)throw new Error("Wrong input string for conversion");if(s.indexOf("-")!==-1)throw new Error("Wrong input string for conversion")}else{let m=1,p=s.indexOf("+"),A="";if(p===-1&&(p=s.indexOf("-"),m=-1),p!==-1){if(A=s.substring(p+1),s=s.substring(0,p),A.length!==2&&A.length!==4)throw new Error("Wrong input string for conversion");let w=parseInt(A.substring(0,2),10);if(isNaN(w.valueOf()))throw new Error("Wrong input string for conversion");if(c=m*w,A.length===4){if(w=parseInt(A.substring(2,4),10),isNaN(w.valueOf()))throw new Error("Wrong input string for conversion");l=m*w}}}let h=s.indexOf(".");if(h===-1&&(h=s.indexOf(",")),h!==-1){let m=new Number(`0${s.substring(h)}`);if(isNaN(m.valueOf()))throw new Error("Wrong input string for conversion");n=m.valueOf(),i=s.substring(0,h)}else i=s;switch(!0){case i.length===8:if(o=/(\d{4})(\d{2})(\d{2})/ig,h!==-1)throw new Error("Wrong input string for conversion");break;case i.length===10:if(o=/(\d{4})(\d{2})(\d{2})(\d{2})/ig,h!==-1){let m=60*n;this.minute=Math.floor(m),m=60*(m-this.minute),this.second=Math.floor(m),m=1e3*(m-this.second),this.millisecond=Math.floor(m)}break;case i.length===12:if(o=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/ig,h!==-1){let m=60*n;this.second=Math.floor(m),m=1e3*(m-this.second),this.millisecond=Math.floor(m)}break;case i.length===14:if(o=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ig,h!==-1){let m=1e3*n;this.millisecond=Math.floor(m)}break;default:throw new Error("Wrong input string for conversion")}let d=o.exec(i);if(d===null)throw new Error("Wrong input string for conversion");for(let m=1;m<d.length;m++)switch(m){case 1:this.year=parseInt(d[m],10);break;case 2:this.month=parseInt(d[m],10);break;case 3:this.day=parseInt(d[m],10);break;case 4:this.hour=parseInt(d[m],10)+c;break;case 5:this.minute=parseInt(d[m],10)+l;break;case 6:this.second=parseInt(d[m],10);break;default:throw new Error("Wrong input string for conversion")}if(t===!1){let m=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=m.getUTCFullYear(),this.month=m.getUTCMonth(),this.day=m.getUTCDay(),this.hour=m.getUTCHours(),this.minute=m.getUTCMinutes(),this.second=m.getUTCSeconds(),this.millisecond=m.getUTCMilliseconds()}}toString(e="iso"){if(e==="iso"){let t=[];return t.push(De.padNumber(this.year,4)),t.push(De.padNumber(this.month,2)),t.push(De.padNumber(this.day,2)),t.push(De.padNumber(this.hour,2)),t.push(De.padNumber(this.minute,2)),t.push(De.padNumber(this.second,2)),this.millisecond!==0&&(t.push("."),t.push(De.padNumber(this.millisecond,3))),t.push("Z"),t.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}};UN=Od;G.GeneralizedTime=UN;Od.NAME="GeneralizedTime";var HN,Td=class extends Cs{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=31}};HN=Td;G.DATE=HN;Td.NAME="DATE";var KN,Vd=class extends Cs{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=32}};KN=Vd;G.TimeOfDay=KN;Vd.NAME="TimeOfDay";var $N,Rd=class extends Cs{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=33}};$N=Rd;G.DateTime=$N;Rd.NAME="DateTime";var FN,Dd=class extends Cs{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=34}};FN=Dd;G.Duration=FN;Dd.NAME="Duration";var JN,qd=class extends Cs{constructor(e={}){super(e),this.idBlock.tagClass=1,this.idBlock.tagNumber=14}};JN=qd;G.TIME=JN;qd.NAME="TIME";var ba=class{constructor({name:e=nr,optional:t=!1}={}){this.name=e,this.optional=t}},iS=class extends ba{constructor({value:e=[],...t}={}){super(t),this.value=e}},jd=class extends ba{constructor({value:e=new ba,local:t=!1,...s}={}){super(s),this.value=e,this.local=t}},p_=class{get data(){return this.dataView.slice().buffer}set data(e){this.dataView=ve.BufferSourceConverter.toUint8Array(e)}constructor({data:e=nS}={}){this.dataView=ve.BufferSourceConverter.toUint8Array(e)}fromBER(e,t,s){let i=t+s;return this.dataView=ve.BufferSourceConverter.toUint8Array(e).subarray(t,i),i}toBER(e){return this.dataView.slice().buffer}};function du(r,e,t){if(t instanceof iS){for(let n of t.value)if(du(r,e,n).verified)return{verified:!0,result:r};{let n={verified:!1,result:{error:"Wrong values for Choice type"}};return t.hasOwnProperty(d_)&&(n.name=t.name),n}}if(t instanceof ba)return t.hasOwnProperty(d_)&&(r[t.name]=e),{verified:!0,result:r};if(!(r instanceof Object))return{verified:!1,result:{error:"Wrong root object"}};if(!(e instanceof Object))return{verified:!1,result:{error:"Wrong ASN.1 data"}};if(!(t instanceof Object))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(!(cD in t))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(!(fD in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(!(dD in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};let s=t.idBlock.toBER(!1);if(s.byteLength===0)return{verified:!1,result:{error:"Error encoding idBlock for ASN.1 schema"}};if(t.idBlock.fromBER(s,0,s.byteLength)===-1)return{verified:!1,result:{error:"Error decoding idBlock for ASN.1 schema"}};if(t.idBlock.hasOwnProperty(uD)===!1)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.tagClass!==e.idBlock.tagClass)return{verified:!1,result:r};if(t.idBlock.hasOwnProperty(lD)===!1)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.tagNumber!==e.idBlock.tagNumber)return{verified:!1,result:r};if(t.idBlock.hasOwnProperty(hD)===!1)return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.isConstructed!==e.idBlock.isConstructed)return{verified:!1,result:r};if(!(oD in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};if(t.idBlock.isHexOnly!==e.idBlock.isHexOnly)return{verified:!1,result:r};if(t.idBlock.isHexOnly){if(!(oN in t.idBlock))return{verified:!1,result:{error:"Wrong ASN.1 schema"}};let n=t.idBlock.valueHexView,o=e.idBlock.valueHexView;if(n.length!==o.length)return{verified:!1,result:r};for(let c=0;c<n.length;c++)if(n[c]!==o[1])return{verified:!1,result:r}}if(t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&(r[t.name]=e)),t instanceof G.Constructed){let n=0,o={verified:!1,result:{error:"Unknown error"}},c=t.valueBlock.value.length;if(c>0&&t.valueBlock.value[0]instanceof jd&&(c=e.valueBlock.value.length),c===0)return{verified:!0,result:r};if(e.valueBlock.value.length===0&&t.valueBlock.value.length!==0){let l=!0;for(let h=0;h<t.valueBlock.value.length;h++)l=l&&(t.valueBlock.value[h].optional||!1);return l?{verified:!0,result:r}:(t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&delete r[t.name]),r.error="Inconsistent object length",{verified:!1,result:r})}for(let l=0;l<c;l++)if(l-n>=e.valueBlock.value.length){if(t.valueBlock.value[l].optional===!1){let h={verified:!1,result:r};return r.error="Inconsistent length between ASN.1 data and schema",t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&(delete r[t.name],h.name=t.name)),h}}else if(t.valueBlock.value[0]instanceof jd){if(o=du(r,e.valueBlock.value[l],t.valueBlock.value[0].value),o.verified===!1)if(t.valueBlock.value[0].optional)n++;else return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&delete r[t.name]),o;if(d_ in t.valueBlock.value[0]&&t.valueBlock.value[0].name.length>0){let h={};pD in t.valueBlock.value[0]&&t.valueBlock.value[0].local?h=e:h=r,typeof h[t.valueBlock.value[0].name]>"u"&&(h[t.valueBlock.value[0].name]=[]),h[t.valueBlock.value[0].name].push(e.valueBlock.value[l])}}else if(o=du(r,e.valueBlock.value[l-n],t.valueBlock.value[l]),o.verified===!1)if(t.valueBlock.value[l].optional)n++;else return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&delete r[t.name]),o;if(o.verified===!1){let l={verified:!1,result:r};return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&(delete r[t.name],l.name=t.name)),l}return{verified:!0,result:r}}if(t.primitiveSchema&&oN in e.valueBlock){let n=aS(e.valueBlock.valueHexView);if(n.offset===-1){let o={verified:!1,result:n.result};return t.name&&(t.name=t.name.replace(/^\s+|\s+$/g,nr),t.name&&(delete r[t.name],o.name=t.name)),o}return du(r,n.result,t.primitiveSchema)}return{verified:!0,result:r}}function ID(r,e){if(!(e instanceof Object))return{verified:!1,result:{error:"Wrong ASN.1 schema type"}};let t=aS(ve.BufferSourceConverter.toUint8Array(r));return t.offset===-1?{verified:!1,result:t.result}:du(t.result,t.result,e)}ue.Any=ba;ue.BaseBlock=Et;ue.BaseStringBlock=od;ue.BitString=dd;ue.BmpString=_d;ue.Boolean=hd;ue.CharacterString=xd;ue.Choice=iS;ue.Constructed=si;ue.DATE=Td;ue.DEFAULT_MAX_CONTENT_LENGTH=gN;ue.DEFAULT_MAX_DEPTH=pN;ue.DEFAULT_MAX_NODES=mN;ue.DateTime=Rd;ue.Duration=Dd;ue.EndOfContent=ud;ue.Enumerated=md;ue.GeneralString=Bd;ue.GeneralizedTime=Od;ue.GraphicString=Nd;ue.HexBlock=Is;ue.IA5String=kd;ue.Integer=mu;ue.Null=ld;ue.NumericString=Cd;ue.ObjectIdentifier=yd;ue.OctetString=fd;ue.Primitive=cd;ue.PrintableString=Pd;ue.RawData=p_;ue.RelativeObjectIdentifier=Sd;ue.Repeated=jd;ue.Sequence=Ad;ue.Set=wd;ue.TIME=qd;ue.TeletexString=Id;ue.TimeOfDay=Vd;ue.UTCTime=yu;ue.UniversalString=bd;ue.Utf8String=Cs;ue.ValueBlock=Rt;ue.VideotexString=Ed;ue.ViewWriter=pu;ue.VisibleString=gu;ue.compareSchema=du;ue.fromBER=_D;ue.verifySchema=ID});var cS=v(oS=>{"use strict";Object.defineProperty(oS,"__esModule",{value:!0});oS.ByteStream=void 0;var v_=class r{constructor(e={}){if("view"in e)this.fromUint8Array(e.view);else if("buffer"in e)this.fromArrayBuffer(e.buffer);else if("string"in e)this.fromString(e.string);else if("hexstring"in e)this.fromHexString(e.hexstring);else if("length"in e&&e.length>0){if(this.length=e.length,e.stub)for(let t=0;t<this._view.length;t++)this._view[t]=e.stub}else this.length=0}set buffer(e){this._buffer=e,this._view=new Uint8Array(this._buffer)}get buffer(){return this._buffer}set view(e){this._buffer=new ArrayBuffer(e.length),this._view=new Uint8Array(this._buffer),this._view.set(e)}get view(){return this._view}get length(){return this.view.byteLength}set length(e){this._buffer=new ArrayBuffer(e),this._view=new Uint8Array(this._buffer)}clear(){this._buffer=new ArrayBuffer(0),this._view=new Uint8Array(this._buffer)}fromArrayBuffer(e){this._buffer=e,this._view=new Uint8Array(this._buffer)}fromUint8Array(e){this.fromArrayBuffer(new Uint8Array(e).buffer)}fromString(e){let t=e.length;this.length=t;for(let s=0;s<t;s++)this.view[s]=e.charCodeAt(s)}toString(e=0,t=this.view.length-e){let s="";(e>=this.view.length||e<0)&&(e=0),(t>=this.view.length||t<0)&&(t=this.view.length-e);for(let i=e;i<e+t;i++)s+=String.fromCharCode(this.view[i]);return s}fromHexString(e){let t=e.length;this.buffer=new ArrayBuffer(t>>1),this.view=new Uint8Array(this.buffer);let s=new Map;s.set("0",0),s.set("1",1),s.set("2",2),s.set("3",3),s.set("4",4),s.set("5",5),s.set("6",6),s.set("7",7),s.set("8",8),s.set("9",9),s.set("A",10),s.set("a",10),s.set("B",11),s.set("b",11),s.set("C",12),s.set("c",12),s.set("D",13),s.set("d",13),s.set("E",14),s.set("e",14),s.set("F",15),s.set("f",15);let i=0,n=0;for(let o=0;o<t;o++)o%2?(n|=s.get(e.charAt(o)),this.view[i]=n,i++):n=s.get(e.charAt(o))<<4}toHexString(e=0,t=this.view.length-e){let s="";(e>=this.view.length||e<0)&&(e=0),(t>=this.view.length||t<0)&&(t=this.view.length-e);for(let i=e;i<e+t;i++){let n=this.view[i].toString(16).toUpperCase();s=s+(n.length==1?"0":"")+n}return s}copy(e=0,t=this.length-e){if(!e&&!this.length)return new r;if(e<0||e>this.length-1)throw new Error(`Wrong start position: ${e}`);return new r({buffer:this._buffer.slice(e,e+t)})}slice(e=0,t=this.length){if(!e&&!this.length)return new r;if(e<0||e>this.length-1)throw new Error(`Wrong start position: ${e}`);return new r({buffer:this._buffer.slice(e,t)})}realloc(e){let t=new ArrayBuffer(e),s=new Uint8Array(t);e>this._view.length?s.set(this._view):s.set(new Uint8Array(this._buffer,0,e)),this._buffer=t,this._view=new Uint8Array(this._buffer)}append(e){let t=this.length,s=e.length,i=e._view.subarray();this.realloc(t+s),this._view.set(i,t)}insert(e,t=0,s=this.length-t){return t>this.length-1?!1:(s>this.length-t&&(s=this.length-t),s>e.length&&(s=e.length),s==e.length?this._view.set(e._view,t):this._view.set(e._view.subarray(0,s),t),!0)}isEqual(e){if(this.length!=e.length)return!1;for(let t=0;t<e.length;t++)if(this.view[t]!=e.view[t])return!1;return!0}isEqualView(e){if(e.length!=this.view.length)return!1;for(let t=0;t<e.length;t++)if(this.view[t]!=e[t])return!1;return!0}findPattern(e,t,s,i){let{start:n,length:o,backward:c}=this.prepareFindParameters(t,s,i),l=e.length;if(l>o)return-1;let h=[];for(let d=0;d<l;d++)h.push(e.view[d]);for(let d=0;d<=o-l;d++){let m=!0,p=c?n-l-d:n+d;for(let A=0;A<l;A++)if(this.view[A+p]!=h[A]){m=!1;break}if(m)return c?n-l-d:n+l+d}return-1}findFirstIn(e,t,s,i){let{start:n,length:o,backward:c}=this.prepareFindParameters(t,s,i),l={id:-1,position:c?0:n+o,length:0};for(let h=0;h<e.length;h++){let d=this.findPattern(e[h],n,o,c);if(d!=-1){let m=!1,p=e[h].length;c?d-p>=l.position-l.length&&(m=!0):d-p<=l.position-l.length&&(m=!0),m&&(l.position=d,l.id=h,l.length=p)}}return l}findAllIn(e,t,s){let{start:i,length:n}=this.prepareFindParameters(t,s),o=[],c={id:-1,position:i};do{let l=c.position;if(c=this.findFirstIn(e,c.position,n),c.id==-1)break;n-=c.position-l,o.push({id:c.id,position:c.position})}while(!0);return o}findAllPatternIn(e,t,s){let{start:i,length:n}=this.prepareFindParameters(t,s),o=[],c=e.length;if(c>n)return-1;let l=Array.from(e.view);for(let h=0;h<=n-c;h++){let d=!0,m=i+h;for(let p=0;p<c;p++)if(this.view[p+m]!=l[p]){d=!1;break}d&&(o.push(i+c+h),h+=c-1)}return o}findFirstNotIn(e,t,s,i){let{start:n,length:o,backward:c}=this.prepareFindParameters(t,s,i),l={left:{id:-1,position:n},right:{id:-1,position:0},value:new r},h=o;for(;h>0;){if(l.right=this.findFirstIn(e,c?n-o+h:n+o-h,h,c),l.right.id==-1){o=h,c?n-=o:n=l.left.position,l.value=new r({buffer:this._buffer.slice(n,n+o)});break}if(l.right.position!=(c?l.left.position-e[l.right.id].length:l.left.position+e[l.right.id].length)){c?(n=l.right.position+e[l.right.id].length,o=l.left.position-l.right.position-e[l.right.id].length):(n=l.left.position,o=l.right.position-l.left.position-e[l.right.id].length),l.value=new r({buffer:this._buffer.slice(n,n+o)});break}l.left=l.right,h-=e[l.right.id].length}if(c){let d=l.right;l.right=l.left,l.left=d}return l}findAllNotIn(e,t,s){let{start:i,length:n}=this.prepareFindParameters(t,s),o=[],c={left:{id:-1,position:i},right:{id:-1,position:i},value:new r};do{let l=c.right.position;c=this.findFirstNotIn(e,c.right.position,n),n-=c.right.position-l,o.push({left:{id:c.left.id,position:c.left.position},right:{id:c.right.id,position:c.right.position},value:c.value})}while(c.right.id!=-1);return o}findFirstSequence(e,t,s,i){let{start:n,length:o,backward:c}=this.prepareFindParameters(t,s,i),l=this.skipNotPatterns(e,n,o,c);if(l==-1)return{position:-1,value:new r};let h=this.skipPatterns(e,l,o-(c?n-l:l-n),c);c?(n=h,o=l-h):(n=l,o=h-l);let d=new r({buffer:this._buffer.slice(n,n+o)});return{position:h,value:d}}findAllSequences(e,t,s){let{start:i,length:n}=this.prepareFindParameters(t,s),o=[],c={position:i,value:new r};do{let l=c.position;c=this.findFirstSequence(e,c.position,n),c.position!=-1&&(n-=c.position-l,o.push({position:c.position,value:c.value}))}while(c.position!=-1);return o}findPairedPatterns(e,t,s,i){let n=[];if(e.isEqual(t))return n;let{start:o,length:c}=this.prepareFindParameters(s,i),l=0,h=this.findAllPatternIn(e,o,c);if(!Array.isArray(h)||h.length==0)return n;let d=this.findAllPatternIn(t,o,c);if(!Array.isArray(d)||d.length==0)return n;for(;l<h.length&&d.length!=0;){if(h[0]==d[0]){n.push({left:h[0],right:d[0]}),h.splice(0,1),d.splice(0,1);continue}if(h[l]>d[0])break;for(;h[l]<d[0]&&(l++,!(l>=h.length)););n.push({left:h[l-1],right:d[0]}),h.splice(l-1,1),d.splice(0,1),l=0}return n.sort((m,p)=>m.left-p.left),n}findPairedArrays(e,t,s,i){let{start:n,length:o}=this.prepareFindParameters(s,i),c=[],l=0,h=this.findAllIn(e,n,o);if(h.length==0)return c;let d=this.findAllIn(t,n,o);if(d.length==0)return c;for(;l<h.length&&d.length!=0;){if(h[0].position==d[0].position){c.push({left:h[0],right:d[0]}),h.splice(0,1),d.splice(0,1);continue}if(h[l].position>d[0].position)break;for(;h[l].position<d[0].position&&(l++,!(l>=h.length)););c.push({left:h[l-1],right:d[0]}),h.splice(l-1,1),d.splice(0,1),l=0}return c.sort((m,p)=>m.left.position-p.left.position),c}replacePattern(e,t,s,i,n=null){let o=[],c,l={status:-1,searchPatternPositions:[],replacePatternPositions:[]},{start:h,length:d}=this.prepareFindParameters(s,i);if(n==null){if(o=this.findAllIn([e],h,d),o.length==0)return l}else o=n;l.searchPatternPositions.push(...Array.from(o,w=>w.position));let m=e.length-t.length,p=new ArrayBuffer(this.view.length-o.length*m),A=new Uint8Array(p);for(A.set(new Uint8Array(this.buffer,0,h)),c=0;c<o.length;c++){let w=c==0?h:o[c-1].position;A.set(new Uint8Array(this.buffer,w,o[c].position-e.length-w),w-c*m),A.set(t.view,o[c].position-e.length-c*m),l.replacePatternPositions.push(o[c].position-e.length-c*m)}return c--,A.set(new Uint8Array(this.buffer,o[c].position,this.length-o[c].position),o[c].position-e.length+t.length-c*m),this.buffer=p,this.view=new Uint8Array(this.buffer),l.status=1,l}skipPatterns(e,t,s,i){let{start:n,length:o,backward:c}=this.prepareFindParameters(t,s,i),l=n;for(let h=0;h<e.length;h++){let d=e[h].length,m=c?l-d:l,p=!0;for(let A=0;A<d;A++)if(this.view[A+m]!=e[h].view[A]){p=!1;break}if(p){if(h=-1,c){if(l-=d,l<=0)return l}else if(l+=d,l>=n+o)return l}}return l}skipNotPatterns(e,t,s,i){let{start:n,length:o,backward:c}=this.prepareFindParameters(t,s,i),l=-1;for(let h=0;h<o;h++){for(let d=0;d<e.length;d++){let m=e[d].length,p=c?n-h-m:n+h,A=!0;for(let w=0;w<m;w++)if(this.view[w+p]!=e[d].view[w]){A=!1;break}if(A){l=c?n-h:n+h;break}}if(l!=-1)break}return l}prepareFindParameters(e=null,t=null,s=!1){return e===null&&(e=s?this.length:0),e>this.length&&(e=this.length),s?(t===null&&(t=e),t>e&&(t=e)):(t===null&&(t=this.length-e),t>this.length-e&&(t=this.length-e)),{start:e,length:t,backward:s}}};oS.ByteStream=v_});var GN=v(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});lS.SeqStream=void 0;var Es=cS(),ED=16777216,uS=class r{constructor(e={}){this._stream=new Es.ByteStream,this._length=0,this._start=0,this.backward=!1,this.appendBlock=0,this.prevLength=0,this.prevStart=0,"view"in e?this.stream=new Es.ByteStream({view:e.view}):"buffer"in e?this.stream=new Es.ByteStream({buffer:e.buffer}):"string"in e?this.stream=new Es.ByteStream({string:e.string}):"hexstring"in e?this.stream=new Es.ByteStream({hexstring:e.hexstring}):"stream"in e?this.stream=e.stream.slice():this.stream=new Es.ByteStream,"backward"in e&&e.backward&&(this.backward=e.backward,this._start=this.stream.length),"length"in e&&e.length>0&&(this._length=e.length),"start"in e&&e.start&&e.start>0&&(this._start=e.start),"appendBlock"in e&&e.appendBlock&&e.appendBlock>0&&(this.appendBlock=e.appendBlock)}set stream(e){this._stream=e,this.prevLength=this._length,this._length=e.length,this.prevStart=this._start,this._start=0}get stream(){return this._stream}set length(e){this.prevLength=this._length,this._length=e}get length(){return this.appendBlock?this.start:this._length}set start(e){e>this.stream.length||(this.prevStart=this._start,this.prevLength=this._length,this._length-=this.backward?this._start-e:e-this._start,this._start=e)}get start(){return this._start}get buffer(){return this._stream.buffer.slice(0,this._length)}resetPosition(){this._start=this.prevStart,this._length=this.prevLength}findPattern(e,t=null){(t==null||t>this.length)&&(t=this.length);let s=this.stream.findPattern(e,this.start,this.length,this.backward);if(s==-1)return s;if(this.backward){if(s<this.start-e.length-t)return-1}else if(s>this.start+e.length+t)return-1;return this.start=s,s}findFirstIn(e,t=null){(t==null||t>this.length)&&(t=this.length);let s=this.stream.findFirstIn(e,this.start,this.length,this.backward);if(s.id==-1)return s;if(this.backward){if(s.position<this.start-e[s.id].length-t)return{id:-1,position:this.backward?0:this.start+this.length}}else if(s.position>this.start+e[s.id].length+t)return{id:-1,position:this.backward?0:this.start+this.length};return this.start=s.position,s}findAllIn(e){let t=this.backward?this.start-this.length:this.start;return this.stream.findAllIn(e,t,this.length)}findFirstNotIn(e,t=null){(t==null||t>this._length)&&(t=this._length);let s=this._stream.findFirstNotIn(e,this._start,this._length,this.backward);if(s.left.id==-1&&s.right.id==-1)return s;if(this.backward){if(s.right.id!=-1&&s.right.position<this._start-e[s.right.id].length-t)return{left:{id:-1,position:this._start},right:{id:-1,position:0},value:new Es.ByteStream}}else if(s.left.id!=-1&&s.left.position>this._start+e[s.left.id].length+t)return{left:{id:-1,position:this._start},right:{id:-1,position:0},value:new Es.ByteStream};return this.backward?s.left.id==-1?this.start=0:this.start=s.left.position:s.right.id==-1?this.start=this._start+this._length:this.start=s.right.position,s}findAllNotIn(e){let t=this.backward?this._start-this._length:this._start;return this._stream.findAllNotIn(e,t,this._length)}findFirstSequence(e,t=null,s=null){(t==null||t>this._length)&&(t=this._length),(s==null||s>t)&&(s=t);let i=this._stream.findFirstSequence(e,this._start,t,this.backward);if(i.value.length==0)return i;if(this.backward){if(i.position<this._start-i.value.length-s)return{position:-1,value:new Es.ByteStream}}else if(i.position>this._start+i.value.length+s)return{position:-1,value:new Es.ByteStream};return this.start=i.position,i}findAllSequences(e){let t=this.backward?this.start-this.length:this.start;return this.stream.findAllSequences(e,t,this.length)}findPairedPatterns(e,t,s=null){(s==null||s>this.length)&&(s=this.length);let i=this.backward?this.start-this.length:this.start,n=this.stream.findPairedPatterns(e,t,i,this.length);if(n.length){if(this.backward){if(n[0].right<this.start-t.length-s)return[]}else if(n[0].left>this.start+e.length+s)return[]}return n}findPairedArrays(e,t,s=null){(s==null||s>this.length)&&(s=this.length);let i=this.backward?this.start-this.length:this.start,n=this.stream.findPairedArrays(e,t,i,this.length);if(n.length){if(this.backward){if(n[0].right.position<this.start-t[n[0].right.id].length-s)return[]}else if(n[0].left.position>this.start+e[n[0].left.id].length+s)return[]}return n}replacePattern(e,t){let s=this.backward?this.start-this.length:this.start;return this.stream.replacePattern(e,t,s,this.length)}skipPatterns(e){let t=this.stream.skipPatterns(e,this.start,this.length,this.backward);return this.start=t,t}skipNotPatterns(e){let t=this.stream.skipNotPatterns(e,this.start,this.length,this.backward);return t==-1?-1:(this.start=t,t)}append(e){this.beforeAppend(e.length),this._stream.view.set(e.view,this._start),this._length+=e.length*2,this.start=this._start+e.length,this.prevLength-=e.length*2}appendView(e){this.beforeAppend(e.length),this._stream.view.set(e,this._start),this._length+=e.length*2,this.start=this._start+e.length,this.prevLength-=e.length*2}appendChar(e){this.beforeAppend(1),this._stream.view[this._start]=e,this._length+=2,this.start=this._start+1,this.prevLength-=2}appendUint16(e){this.beforeAppend(2);let t=new Uint16Array([e]),s=new Uint8Array(t.buffer);this.stream.view[this._start]=s[1],this._stream.view[this._start+1]=s[0],this._length+=4,this.start=this._start+2,this.prevLength-=4}appendUint24(e){this.beforeAppend(3);let t=new Uint32Array([e]),s=new Uint8Array(t.buffer);this._stream.view[this._start]=s[2],this._stream.view[this._start+1]=s[1],this._stream.view[this._start+2]=s[0],this._length+=6,this.start=this._start+3,this.prevLength-=6}appendUint32(e){this.beforeAppend(4);let t=new Uint32Array([e]),s=new Uint8Array(t.buffer);this._stream.view[this._start]=s[3],this._stream.view[this._start+1]=s[2],this._stream.view[this._start+2]=s[1],this._stream.view[this._start+3]=s[0],this._length+=8,this.start=this._start+4,this.prevLength-=8}appendInt16(e){this.beforeAppend(2);let t=new Int16Array([e]),s=new Uint8Array(t.buffer);this._stream.view[this._start]=s[1],this._stream.view[this._start+1]=s[0],this._length+=4,this.start=this._start+2,this.prevLength-=4}appendInt32(e){this.beforeAppend(4);let t=new Int32Array([e]),s=new Uint8Array(t.buffer);this._stream.view[this._start]=s[3],this._stream.view[this._start+1]=s[2],this._stream.view[this._start+2]=s[1],this._stream.view[this._start+3]=s[0],this._length+=8,this.start=this._start+4,this.prevLength-=8}getBlock(e,t=!0){if(this._length<=0)return new Uint8Array(0);this._length<e&&(e=this._length);let s;if(this.backward){let i=this._stream.view.subarray(this._length-e,this._length);s=new Uint8Array(e);for(let n=0;n<e;n++)s[e-1-n]=i[n]}else s=this._stream.view.subarray(this._start,this._start+e);return t&&(this.start+=this.backward?-1*e:e),s}getUint16(e=!0){let t=this.getBlock(2,e);return t.length<2?0:t[0]<<8|t[1]}getInt16(e=!0){let t=this.getUint16(e),s=32768;return t&s?-(s-(t^s)):t}getUint24(e=!0){let t=this.getBlock(4,e);return t.length<3?0:t[0]<<16|t[1]<<8|t[2]}getUint32(e=!0){let t=this.getBlock(4,e);return t.length<4?0:t[0]*ED+(t[1]<<16)+(t[2]<<8)+t[3]}getInt32(e=!0){let t=this.getUint32(e),s=2147483648;return t&s?-(s-(t^s)):t}beforeAppend(e){this._start+e>this._stream.length&&(e>this.appendBlock&&(this.appendBlock=e+r.APPEND_BLOCK),this._stream.realloc(this._stream.length+this.appendBlock))}};lS.SeqStream=uS;uS.APPEND_BLOCK=1e3});var WN=v(hS=>{"use strict";Object.defineProperty(hS,"__esModule",{value:!0});hS.parseByteMap=void 0;function kD(r,e,t,s=null,i=null){if(s===null&&(s=0),s>r.length-1)return[];i===null&&(i=r.length-s),i>r.length-s&&(i=r.length-s);let n;s==0&&i==r.length?n=r.view:n=new Uint8Array(r.buffer,s,i);let o=new Array(t),c=0,l=0,h=e.length;for(;l<i;){let d=0;o[c]={};for(let m=0;m<h;m++){if(e[m].maxlength==0){"defaultValue"in e[m]&&(o[c][e[m].name]=e[m].defaultValue);continue}let p=new Uint8Array(e[m].maxlength);for(let w=0;w<e[m].maxlength;w++)p[w]=n[l++];let A=e[m].func(p);if(A.status==-1)return o.length==1?[]:o.slice(0,o.length-1);e[m].type!="check"&&(o[c][e[m].name]=A.value),l-=e[m].maxlength-A.length,d+=A.length}o[c++].structureLength=d}return o}hS.parseByteMap=kD});var zN=v(fS=>{"use strict";Object.defineProperty(fS,"__esModule",{value:!0});fS.bitsToStringArray=void 0;fS.bitsToStringArray=["00000000","00000001","00000010","00000011","00000100","00000101","00000110","00000111","00001000","00001001","00001010","00001011","00001100","00001101","00001110","00001111","00010000","00010001","00010010","00010011","00010100","00010101","00010110","00010111","00011000","00011001","00011010","00011011","00011100","00011101","00011110","00011111","00100000","00100001","00100010","00100011","00100100","00100101","00100110","00100111","00101000","00101001","00101010","00101011","00101100","00101101","00101110","00101111","00110000","00110001","00110010","00110011","00110100","00110101","00110110","00110111","00111000","00111001","00111010","00111011","00111100","00111101","00111110","00111111","01000000","01000001","01000010","01000011","01000100","01000101","01000110","01000111","01001000","01001001","01001010","01001011","01001100","01001101","01001110","01001111","01010000","01010001","01010010","01010011","01010100","01010101","01010110","01010111","01011000","01011001","01011010","01011011","01011100","01011101","01011110","01011111","01100000","01100001","01100010","01100011","01100100","01100101","01100110","01100111","01101000","01101001","01101010","01101011","01101100","01101101","01101110","01101111","01110000","01110001","01110010","01110011","01110100","01110101","01110110","01110111","01111000","01111001","01111010","01111011","01111100","01111101","01111110","01111111","10000000","10000001","10000010","10000011","10000100","10000101","10000110","10000111","10001000","10001001","10001010","10001011","10001100","10001101","10001110","10001111","10010000","10010001","10010010","10010011","10010100","10010101","10010110","10010111","10011000","10011001","10011010","10011011","10011100","10011101","10011110","10011111","10100000","10100001","10100010","10100011","10100100","10100101","10100110","10100111","10101000","10101001","10101010","10101011","10101100","10101101","10101110","10101111","10110000","10110001","10110010","10110011","10110100","10110101","10110110","10110111","10111000","10111001","10111010","10111011","10111100","10111101","10111110","10111111","11000000","11000001","11000010","11000011","11000100","11000101","11000110","11000111","11001000","11001001","11001010","11001011","11001100","11001101","11001110","11001111","11010000","11010001","11010010","11010011","11010100","11010101","11010110","11010111","11011000","11011001","11011010","11011011","11011100","11011101","11011110","11011111","11100000","11100001","11100010","11100011","11100100","11100101","11100110","11100111","11101000","11101001","11101010","11101011","11101100","11101101","11101110","11101111","11110000","11110001","11110010","11110011","11110100","11110101","11110110","11110111","11111000","11111001","11111010","11111011","11111100","11111101","11111110","11111111"]});var A_=v(dS=>{"use strict";Object.defineProperty(dS,"__esModule",{value:!0});dS.BitStream=void 0;var ND=zN(),qe=cS(),S_=class r{constructor(e){this.buffer=new ArrayBuffer(0),this.view=new Uint8Array(this.buffer),this.bitsCount=0,e&&("byteStream"in e&&this.fromByteStream(e.byteStream),"view"in e&&this.fromUint8Array(e.view),"buffer"in e&&this.fromArrayBuffer(e.buffer),"string"in e&&this.fromString(e.string),"uint32"in e&&this.fromUint32(e.uint32),"bitsCount"in e&&e.bitsCount&&(this.bitsCount=e.bitsCount))}clear(){this.buffer=new ArrayBuffer(0),this.view=new Uint8Array(this.buffer),this.bitsCount=0}fromByteStream(e){this.fromUint8Array(e.view)}fromArrayBuffer(e){this.buffer=e,this.view=new Uint8Array(e),this.bitsCount=this.view.length<<3}fromUint8Array(e){this.fromArrayBuffer(new Uint8Array(e).buffer)}fromString(e){let t=e.length;this.buffer=new ArrayBuffer((t>>3)+(t%8?1:0)),this.view=new Uint8Array(this.buffer),this.bitsCount=(t>>3)+1<<3;let s=0;for(let i=0;i<t;i++)e[i]=="1"&&(this.view[s]|=1<<7-i%8),i&&(i+1)%8==0&&s++;t%8&&this.shiftRight(8-t%8),this.bitsCount=t}fromUint32(e){this.buffer=new ArrayBuffer(4),this.view=new Uint8Array(this.buffer);let t=new Uint32Array([e]),s=new Uint8Array(t.buffer);for(let i=3;i>=0;i--)this.view[i]=s[3-i];this.bitsCount=32}toString(e,t){e==null&&(e=0),(e>=this.view.length||e<0)&&(e=0),t==null&&(t=this.view.length-e),(t>=this.view.length||t<0)&&(t=this.view.length-e);let s=[];for(let i=e;i<e+t;i++)s.push(ND.bitsToStringArray[this.view[i]]);return s.join("").substring((this.view.length<<3)-this.bitsCount)}shiftRight(e,t=!0){if(this.view.length==0)return;if(e<0||e>8)throw new Error('The "shift" parameter must be in range 0-8');if(e>this.bitsCount)throw new Error('The "shift" parameter can not be bigger than "this.bitsCount"');let s=255>>8-e;this.view[this.view.length-1]>>=e;for(let i=this.view.length-2;i>=0;i--)this.view[i+1]|=(this.view[i]&s)<<8-e,this.view[i]>>=e;this.bitsCount-=e,this.bitsCount==0&&this.clear(),t&&this.shrink()}shiftLeft(e){if(this.view.length==0)return;if(e<0||e>8)throw new Error('The "shift" parameter must be in range 0-8');if(e>this.bitsCount)throw new Error('The "shift" parameter can not be bigger than "this.bitsCount"');let t=this.bitsCount&7;if(t>e)this.view[0]&=255>>t+e;else{let s=this.view.slice(1);s[0]&=255>>e-t,this.buffer=s.buffer,this.view=s}this.bitsCount-=e,this.bitsCount==0&&this.clear()}slice(e=0,t=0){let s=0;this.bitsCount%8&&(s=8-this.bitsCount%8),e+=s,t+=s;let i=(this.view.length<<3)-1;if(e<0||e>i)return new r;if(t||(t=i),t<0||t>i)return new r;if(t-e+1>this.bitsCount)return new r;let n=e>>3,o=e&7,c=t>>3,l=t&7,h=c-n==0?1:c-n+1,d=new r({buffer:this.buffer.slice(n,n+h),bitsCount:h<<3});return d.view[0]&=255>>o,d.view[h]&=255<<7-l,7-l&&d.shiftRight(7-l,!1),d.bitsCount=t-e+1,d.shrink(),d}copy(e=0,t=0){let s=(this.view.length<<3)-1;return e<0||e>s?new r:(t||(t=(this.view.length<<3)-e-1),t>this.bitsCount?new r:this.slice(e,e+t-1))}shrink(){let e=(this.bitsCount>>3)+(this.bitsCount%8?1:0);if(e<this.view.length){let t=this.view.slice(this.view.length-e,this.view.length-e+e);this.view=t,this.buffer=t.buffer}}reverseBytes(){for(let e=0;e<this.view.length;e++)this.view[e]=(this.view[e]*2050&139536|this.view[e]*32800&558144)*65793>>16;if(this.bitsCount%8){let e=(this.bitsCount>>3)+(this.bitsCount%8?1:0);this.view[this.view.length-e]>>=8-(this.bitsCount&7)}}reverseValue(){let e=this.toString(),t=e.length,s=new Array(t);for(let i=0;i<t;i++)s[t-1-i]=e[i];this.fromString(s.join(""))}getNumberValue(){let e=this.view.length-1;if(e>3)return-1;if(e==-1)return 0;let t=new Uint32Array(1),s=new Uint8Array(t.buffer);for(let i=e;i>=0;i--)s[e-i]=this.view[i];return t[0]}findPattern(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new qe.ByteStream({string:e.toString()});return n.findPattern(o,t,s,i)}findFirstIn(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new Array(e.length);for(let c=0;c<e.length;c++)o[c]=new qe.ByteStream({string:e[c].toString()});return n.findFirstIn(o,t,s,i)}findAllIn(e,t,s){let i=new qe.ByteStream({string:this.toString()}),n=new Array(e.length);for(let o=0;o<e.length;o++)n[o]=new qe.ByteStream({string:e[o].toString()});return i.findAllIn(n,t,s)}findAllPatternIn(e,t,s){let i=new qe.ByteStream({string:this.toString()}),n=new qe.ByteStream({string:e.toString()});return i.findAllPatternIn(n,t,s)}findFirstNotIn(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new Array(e.length);for(let c=0;c<e.length;c++)o[c]=new qe.ByteStream({string:e[c].toString()});return n.findFirstNotIn(o,t,s,i)}findAllNotIn(e,t,s){let i=new qe.ByteStream({string:this.toString()}),n=new Array(e.length);for(let o=0;o<e.length;o++)n[o]=new qe.ByteStream({string:e[o].toString()});return i.findAllNotIn(n,t,s)}findFirstSequence(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new Array(e.length);for(let c=0;c<e.length;c++)o[c]=new qe.ByteStream({string:e[c].toString()});return n.findFirstSequence(o,t,s,i)}findAllSequences(e,t,s){let i=new qe.ByteStream({string:this.toString()}),n=new Array(e.length);for(let o=0;o<e.length;o++)n[o]=new qe.ByteStream({string:e[o].toString()});return i.findAllSequences(n,t,s)}findPairedPatterns(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new qe.ByteStream({string:e.toString()}),c=new qe.ByteStream({string:t.toString()});return n.findPairedPatterns(o,c,s,i)}findPairedArrays(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new Array(e.length);for(let l=0;l<e.length;l++)o[l]=new qe.ByteStream({string:e[l].toString()});let c=new Array(t.length);for(let l=0;l<t.length;l++)c[l]=new qe.ByteStream({string:t[l].toString()});return n.findPairedArrays(o,c,s,i)}replacePattern(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new qe.ByteStream({string:e.toString()}),c=new qe.ByteStream({string:t.toString()});return n.replacePattern(o,c,s,i)?(this.fromString(n.toString()),!0):!1}skipPatterns(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new Array(e.length);for(let c=0;c<e.length;c++)o[c]=new qe.ByteStream({string:e[c].toString()});return n.skipPatterns(o,t,s,i)}skipNotPatterns(e,t,s,i){let n=new qe.ByteStream({string:this.toString()}),o=new Array(e.length);for(let c=0;c<e.length;c++)o[c]=new qe.ByteStream({string:e[c].toString()});return n.skipNotPatterns(o,t,s,i)}append(e){this.fromString([this.toString(),e.toString()].join(""))}};dS.BitStream=S_});var XN=v(pS=>{"use strict";Object.defineProperty(pS,"__esModule",{value:!0});pS.SeqBitStream=void 0;var YN=A_(),w_=class{constructor(e={}){var t;this._length=0,this._start=0,this.prevLength=0,this.prevStart=0,this.stream=((t=e.stream)===null||t===void 0?void 0:t.slice())||new YN.BitStream,this.appendBlock=e.appendBlock||0,e.start&&e.start>0&&(this.start=e.start),e.length&&e.length>0&&(this.length=e.length),this.backward=e.backward||!1}set start(e){e>this.stream.bitsCount||(this._length-=this.backward?this._start-e:e-this._start,this._start=e,this.prevStart=this._start,this.prevLength=this._length)}get start(){return this._start}set length(e){e>this.stream.bitsCount||(this.prevLength=this._length,this._length=e)}get length(){return this._length}set stream(e){this._stream=e,this.prevLength=this._length,this._length=e.bitsCount,this.prevStart=this._start,this._start=this.backward?this.length:0}get stream(){return this._stream}getBits(e=null){if(e===null)e=0;else if(e===0)return new YN.BitStream;this.start+e>this.stream.bitsCount&&(e=this.stream.bitsCount-this.start);let t;return this.backward?(t=this.stream.copy(this.start-e,e),this.start-=t.bitsCount):(t=this.stream.copy(this.start,e),this.start+=t.bitsCount),t}getBitsString(e){return this.getBits(e).toString()}getBitsReversedValue(e){let t=this.getBitsString(e),s=t.length,i,n=8-s%8,o=new Array(s),c=new Uint32Array(1),l=new Uint8Array(c.buffer,0,4),h;if(s>32)return-1;for(e==32?i=3:i=s-1>>3,h=0;h<s;h++)o[s-1-h]=t[h];for(h=n;h<n+s;h++)o[h-n]=="1"&&(l[i]|=1<<7-h%8),h&&(h+1)%8==0&&i--;return c[0]}toString(){return this.stream.copy(this.start,this.length).toString()}};pS.SeqBitStream=w_});var QN=v(Xr=>{"use strict";var BD=Xr&&Xr.__createBinding||(Object.create?(function(r,e,t,s){s===void 0&&(s=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,s,i)}):(function(r,e,t,s){s===void 0&&(s=t),r[s]=e[t]})),Ld=Xr&&Xr.__exportStar||function(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&BD(e,r,t)};Object.defineProperty(Xr,"__esModule",{value:!0});Ld(cS(),Xr);Ld(GN(),Xr);Ld(WN(),Xr);Ld(A_(),Xr);Ld(XN(),Xr)});var b_=v(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.output=Ht.exists=Ht.hash=Ht.bytes=Ht.bool=Ht.number=Ht.isBytes=void 0;function mS(r){if(!Number.isSafeInteger(r)||r<0)throw new Error(`positive integer expected, not ${r}`)}Ht.number=mS;function ZN(r){if(typeof r!="boolean")throw new Error(`boolean expected, not ${r}`)}Ht.bool=ZN;function eB(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}Ht.isBytes=eB;function __(r,...e){if(!eB(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${r.length}`)}Ht.bytes=__;function tB(r){if(typeof r!="function"||typeof r.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");mS(r.outputLen),mS(r.blockLen)}Ht.hash=tB;function rB(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}Ht.exists=rB;function sB(r,e){__(r);let t=e.outputLen;if(r.length<t)throw new Error(`digestInto() expects output buffer of length at least ${t}`)}Ht.output=sB;var xD={number:mS,bool:ZN,bytes:__,hash:tB,exists:rB,output:sB};Ht.default=xD});var iB=v(yS=>{"use strict";Object.defineProperty(yS,"__esModule",{value:!0});yS.crypto=void 0;var gS=require("node:crypto");yS.crypto=gS&&typeof gS=="object"&&"webcrypto"in gS?gS.webcrypto:void 0});var Ud=v(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.randomBytes=ne.wrapXOFConstructorWithOpts=ne.wrapConstructorWithOpts=ne.wrapConstructor=ne.checkOpts=ne.Hash=ne.concatBytes=ne.toBytes=ne.utf8ToBytes=ne.asyncLoop=ne.nextTick=ne.hexToBytes=ne.bytesToHex=ne.byteSwap32=ne.byteSwapIfBE=ne.byteSwap=ne.isLE=ne.rotl=ne.rotr=ne.createView=ne.u32=ne.u8=ne.isBytes=void 0;var C_=iB(),I_=b_();function OD(r){return r instanceof Uint8Array||r!=null&&typeof r=="object"&&r.constructor.name==="Uint8Array"}ne.isBytes=OD;var TD=r=>new Uint8Array(r.buffer,r.byteOffset,r.byteLength);ne.u8=TD;var VD=r=>new Uint32Array(r.buffer,r.byteOffset,Math.floor(r.byteLength/4));ne.u32=VD;var RD=r=>new DataView(r.buffer,r.byteOffset,r.byteLength);ne.createView=RD;var DD=(r,e)=>r<<32-e|r>>>e;ne.rotr=DD;var qD=(r,e)=>r<<e|r>>>32-e>>>0;ne.rotl=qD;ne.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;var jD=r=>r<<24&4278190080|r<<8&16711680|r>>>8&65280|r>>>24&255;ne.byteSwap=jD;ne.byteSwapIfBE=ne.isLE?r=>r:r=>(0,ne.byteSwap)(r);function MD(r){for(let e=0;e<r.length;e++)r[e]=(0,ne.byteSwap)(r[e])}ne.byteSwap32=MD;var LD=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function UD(r){(0,I_.bytes)(r);let e="";for(let t=0;t<r.length;t++)e+=LD[r[t]];return e}ne.bytesToHex=UD;var ai={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function nB(r){if(r>=ai._0&&r<=ai._9)return r-ai._0;if(r>=ai._A&&r<=ai._F)return r-(ai._A-10);if(r>=ai._a&&r<=ai._f)return r-(ai._a-10)}function HD(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);let e=r.length,t=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let s=new Uint8Array(t);for(let i=0,n=0;i<t;i++,n+=2){let o=nB(r.charCodeAt(n)),c=nB(r.charCodeAt(n+1));if(o===void 0||c===void 0){let l=r[n]+r[n+1];throw new Error('hex string expected, got non-hex character "'+l+'" at index '+n)}s[i]=o*16+c}return s}ne.hexToBytes=HD;var KD=async()=>{};ne.nextTick=KD;async function $D(r,e,t){let s=Date.now();for(let i=0;i<r;i++){t(i);let n=Date.now()-s;n>=0&&n<e||(await(0,ne.nextTick)(),s+=n)}}ne.asyncLoop=$D;function aB(r){if(typeof r!="string")throw new Error(`utf8ToBytes expected string, got ${typeof r}`);return new Uint8Array(new TextEncoder().encode(r))}ne.utf8ToBytes=aB;function vS(r){return typeof r=="string"&&(r=aB(r)),(0,I_.bytes)(r),r}ne.toBytes=vS;function FD(...r){let e=0;for(let s=0;s<r.length;s++){let i=r[s];(0,I_.bytes)(i),e+=i.length}let t=new Uint8Array(e);for(let s=0,i=0;s<r.length;s++){let n=r[s];t.set(n,i),i+=n.length}return t}ne.concatBytes=FD;var P_=class{clone(){return this._cloneInto()}};ne.Hash=P_;var JD={}.toString;function GD(r,e){if(e!==void 0&&JD.call(e)!=="[object Object]")throw new Error("Options should be object or undefined");return Object.assign(r,e)}ne.checkOpts=GD;function WD(r){let e=s=>r().update(vS(s)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}ne.wrapConstructor=WD;function zD(r){let e=(s,i)=>r(i).update(vS(s)).digest(),t=r({});return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=s=>r(s),e}ne.wrapConstructorWithOpts=zD;function YD(r){let e=(s,i)=>r(i).update(vS(s)).digest(),t=r({});return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=s=>r(s),e}ne.wrapXOFConstructorWithOpts=YD;function XD(r=32){if(C_.crypto&&typeof C_.crypto.getRandomValues=="function")return C_.crypto.getRandomValues(new Uint8Array(r));throw new Error("crypto.getRandomValues must be defined")}ne.randomBytes=XD});var SS=v(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.HashMD=zi.Maj=zi.Chi=void 0;var E_=b_(),Hd=Ud();function QD(r,e,t,s){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,s);let i=BigInt(32),n=BigInt(4294967295),o=Number(t>>i&n),c=Number(t&n),l=s?4:0,h=s?0:4;r.setUint32(e+l,o,s),r.setUint32(e+h,c,s)}var ZD=(r,e,t)=>r&e^~r&t;zi.Chi=ZD;var eq=(r,e,t)=>r&e^r&t^e&t;zi.Maj=eq;var k_=class extends Hd.Hash{constructor(e,t,s,i){super(),this.blockLen=e,this.outputLen=t,this.padOffset=s,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,Hd.createView)(this.buffer)}update(e){(0,E_.exists)(this);let{view:t,buffer:s,blockLen:i}=this;e=(0,Hd.toBytes)(e);let n=e.length;for(let o=0;o<n;){let c=Math.min(i-this.pos,n-o);if(c===i){let l=(0,Hd.createView)(e);for(;i<=n-o;o+=i)this.process(l,o);continue}s.set(e.subarray(o,o+c),this.pos),this.pos+=c,o+=c,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){(0,E_.exists)(this),(0,E_.output)(e,this),this.finished=!0;let{buffer:t,view:s,blockLen:i,isLE:n}=this,{pos:o}=this;t[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>i-o&&(this.process(s,0),o=0);for(let m=o;m<i;m++)t[m]=0;QD(s,i-8,BigInt(this.length*8),n),this.process(s,0);let c=(0,Hd.createView)(e),l=this.outputLen;if(l%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let h=l/4,d=this.get();if(h>d.length)throw new Error("_sha2: outputLen bigger than state");for(let m=0;m<h;m++)c.setUint32(4*m,d[m],n)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let s=e.slice(0,t);return this.destroy(),s}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:s,length:i,finished:n,destroyed:o,pos:c}=this;return e.length=i,e.pos=c,e.finished=n,e.destroyed=o,i%t&&e.buffer.set(s),e}};zi.HashMD=k_});var oB=v(wS=>{"use strict";Object.defineProperty(wS,"__esModule",{value:!0});wS.sha1=void 0;var N_=SS(),AS=Ud(),Kd=new Uint32Array([1732584193,4023233417,2562383102,271733878,3285377520]),Yi=new Uint32Array(80),B_=class extends N_.HashMD{constructor(){super(64,20,8,!1),this.A=Kd[0]|0,this.B=Kd[1]|0,this.C=Kd[2]|0,this.D=Kd[3]|0,this.E=Kd[4]|0}get(){let{A:e,B:t,C:s,D:i,E:n}=this;return[e,t,s,i,n]}set(e,t,s,i,n){this.A=e|0,this.B=t|0,this.C=s|0,this.D=i|0,this.E=n|0}process(e,t){for(let l=0;l<16;l++,t+=4)Yi[l]=e.getUint32(t,!1);for(let l=16;l<80;l++)Yi[l]=(0,AS.rotl)(Yi[l-3]^Yi[l-8]^Yi[l-14]^Yi[l-16],1);let{A:s,B:i,C:n,D:o,E:c}=this;for(let l=0;l<80;l++){let h,d;l<20?(h=(0,N_.Chi)(i,n,o),d=1518500249):l<40?(h=i^n^o,d=1859775393):l<60?(h=(0,N_.Maj)(i,n,o),d=2400959708):(h=i^n^o,d=3395469782);let m=(0,AS.rotl)(s,5)+h+c+d+Yi[l]|0;c=o,o=n,n=(0,AS.rotl)(i,30),i=s,s=m}s=s+this.A|0,i=i+this.B|0,n=n+this.C|0,o=o+this.D|0,c=c+this.E|0,this.set(s,i,n,o,c)}roundClean(){Yi.fill(0)}destroy(){this.set(0,0,0,0,0),this.buffer.fill(0)}};wS.sha1=(0,AS.wrapConstructor)(()=>new B_)});var cB=v(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.sha224=vu.sha256=void 0;var x_=SS(),Or=Ud(),tq=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Xi=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Qi=new Uint32Array(64),_S=class extends x_.HashMD{constructor(){super(64,32,8,!1),this.A=Xi[0]|0,this.B=Xi[1]|0,this.C=Xi[2]|0,this.D=Xi[3]|0,this.E=Xi[4]|0,this.F=Xi[5]|0,this.G=Xi[6]|0,this.H=Xi[7]|0}get(){let{A:e,B:t,C:s,D:i,E:n,F:o,G:c,H:l}=this;return[e,t,s,i,n,o,c,l]}set(e,t,s,i,n,o,c,l){this.A=e|0,this.B=t|0,this.C=s|0,this.D=i|0,this.E=n|0,this.F=o|0,this.G=c|0,this.H=l|0}process(e,t){for(let m=0;m<16;m++,t+=4)Qi[m]=e.getUint32(t,!1);for(let m=16;m<64;m++){let p=Qi[m-15],A=Qi[m-2],w=(0,Or.rotr)(p,7)^(0,Or.rotr)(p,18)^p>>>3,C=(0,Or.rotr)(A,17)^(0,Or.rotr)(A,19)^A>>>10;Qi[m]=C+Qi[m-7]+w+Qi[m-16]|0}let{A:s,B:i,C:n,D:o,E:c,F:l,G:h,H:d}=this;for(let m=0;m<64;m++){let p=(0,Or.rotr)(c,6)^(0,Or.rotr)(c,11)^(0,Or.rotr)(c,25),A=d+p+(0,x_.Chi)(c,l,h)+tq[m]+Qi[m]|0,C=((0,Or.rotr)(s,2)^(0,Or.rotr)(s,13)^(0,Or.rotr)(s,22))+(0,x_.Maj)(s,i,n)|0;d=h,h=l,l=c,c=o+A|0,o=n,n=i,i=s,s=A+C|0}s=s+this.A|0,i=i+this.B|0,n=n+this.C|0,o=o+this.D|0,c=c+this.E|0,l=l+this.F|0,h=h+this.G|0,d=d+this.H|0,this.set(s,i,n,o,c,l,h,d)}roundClean(){Qi.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}},O_=class extends _S{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}};vu.sha256=(0,Or.wrapConstructor)(()=>new _S);vu.sha224=(0,Or.wrapConstructor)(()=>new O_)});var BB=v(he=>{"use strict";Object.defineProperty(he,"__esModule",{value:!0});he.add5L=he.add5H=he.add4H=he.add4L=he.add3H=he.add3L=he.add=he.rotlBL=he.rotlBH=he.rotlSL=he.rotlSH=he.rotr32L=he.rotr32H=he.rotrBL=he.rotrBH=he.rotrSL=he.rotrSH=he.shrSL=he.shrSH=he.toBig=he.split=he.fromBig=void 0;var bS=BigInt(2**32-1),T_=BigInt(32);function V_(r,e=!1){return e?{h:Number(r&bS),l:Number(r>>T_&bS)}:{h:Number(r>>T_&bS)|0,l:Number(r&bS)|0}}he.fromBig=V_;function uB(r,e=!1){let t=new Uint32Array(r.length),s=new Uint32Array(r.length);for(let i=0;i<r.length;i++){let{h:n,l:o}=V_(r[i],e);[t[i],s[i]]=[n,o]}return[t,s]}he.split=uB;var lB=(r,e)=>BigInt(r>>>0)<<T_|BigInt(e>>>0);he.toBig=lB;var hB=(r,e,t)=>r>>>t;he.shrSH=hB;var fB=(r,e,t)=>r<<32-t|e>>>t;he.shrSL=fB;var dB=(r,e,t)=>r>>>t|e<<32-t;he.rotrSH=dB;var pB=(r,e,t)=>r<<32-t|e>>>t;he.rotrSL=pB;var mB=(r,e,t)=>r<<64-t|e>>>t-32;he.rotrBH=mB;var gB=(r,e,t)=>r>>>t-32|e<<64-t;he.rotrBL=gB;var yB=(r,e)=>e;he.rotr32H=yB;var vB=(r,e)=>r;he.rotr32L=vB;var SB=(r,e,t)=>r<<t|e>>>32-t;he.rotlSH=SB;var AB=(r,e,t)=>e<<t|r>>>32-t;he.rotlSL=AB;var wB=(r,e,t)=>e<<t-32|r>>>64-t;he.rotlBH=wB;var _B=(r,e,t)=>r<<t-32|e>>>64-t;he.rotlBL=_B;function bB(r,e,t,s){let i=(e>>>0)+(s>>>0);return{h:r+t+(i/2**32|0)|0,l:i|0}}he.add=bB;var CB=(r,e,t)=>(r>>>0)+(e>>>0)+(t>>>0);he.add3L=CB;var PB=(r,e,t,s)=>e+t+s+(r/2**32|0)|0;he.add3H=PB;var IB=(r,e,t,s)=>(r>>>0)+(e>>>0)+(t>>>0)+(s>>>0);he.add4L=IB;var EB=(r,e,t,s,i)=>e+t+s+i+(r/2**32|0)|0;he.add4H=EB;var kB=(r,e,t,s,i)=>(r>>>0)+(e>>>0)+(t>>>0)+(s>>>0)+(i>>>0);he.add5L=kB;var NB=(r,e,t,s,i,n)=>e+t+s+i+n+(r/2**32|0)|0;he.add5H=NB;var rq={fromBig:V_,split:uB,toBig:lB,shrSH:hB,shrSL:fB,rotrSH:dB,rotrSL:pB,rotrBH:mB,rotrBL:gB,rotr32H:yB,rotr32L:vB,rotlSH:SB,rotlSL:AB,rotlBH:wB,rotlBL:_B,add:bB,add3L:CB,add3H:PB,add4L:IB,add4H:EB,add5H:NB,add5L:kB};he.default=rq});var xB=v(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.sha384=Tr.sha512_256=Tr.sha512_224=Tr.sha512=Tr.SHA512=void 0;var sq=SS(),me=BB(),CS=Ud(),[iq,nq]=me.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(r=>BigInt(r))),Zi=new Uint32Array(80),en=new Uint32Array(80),Ca=class extends sq.HashMD{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){let{Ah:e,Al:t,Bh:s,Bl:i,Ch:n,Cl:o,Dh:c,Dl:l,Eh:h,El:d,Fh:m,Fl:p,Gh:A,Gl:w,Hh:C,Hl:S}=this;return[e,t,s,i,n,o,c,l,h,d,m,p,A,w,C,S]}set(e,t,s,i,n,o,c,l,h,d,m,p,A,w,C,S){this.Ah=e|0,this.Al=t|0,this.Bh=s|0,this.Bl=i|0,this.Ch=n|0,this.Cl=o|0,this.Dh=c|0,this.Dl=l|0,this.Eh=h|0,this.El=d|0,this.Fh=m|0,this.Fl=p|0,this.Gh=A|0,this.Gl=w|0,this.Hh=C|0,this.Hl=S|0}process(e,t){for(let j=0;j<16;j++,t+=4)Zi[j]=e.getUint32(t),en[j]=e.getUint32(t+=4);for(let j=16;j<80;j++){let M=Zi[j-15]|0,$=en[j-15]|0,te=me.default.rotrSH(M,$,1)^me.default.rotrSH(M,$,8)^me.default.shrSH(M,$,7),Ce=me.default.rotrSL(M,$,1)^me.default.rotrSL(M,$,8)^me.default.shrSL(M,$,7),oe=Zi[j-2]|0,be=en[j-2]|0,st=me.default.rotrSH(oe,be,19)^me.default.rotrBH(oe,be,61)^me.default.shrSH(oe,be,6),Pe=me.default.rotrSL(oe,be,19)^me.default.rotrBL(oe,be,61)^me.default.shrSL(oe,be,6),Be=me.default.add4L(Ce,Pe,en[j-7],en[j-16]),Gr=me.default.add4H(Be,te,st,Zi[j-7],Zi[j-16]);Zi[j]=Gr|0,en[j]=Be|0}let{Ah:s,Al:i,Bh:n,Bl:o,Ch:c,Cl:l,Dh:h,Dl:d,Eh:m,El:p,Fh:A,Fl:w,Gh:C,Gl:S,Hh:q,Hl:L}=this;for(let j=0;j<80;j++){let M=me.default.rotrSH(m,p,14)^me.default.rotrSH(m,p,18)^me.default.rotrBH(m,p,41),$=me.default.rotrSL(m,p,14)^me.default.rotrSL(m,p,18)^me.default.rotrBL(m,p,41),te=m&A^~m&C,Ce=p&w^~p&S,oe=me.default.add5L(L,$,Ce,nq[j],en[j]),be=me.default.add5H(oe,q,M,te,iq[j],Zi[j]),st=oe|0,Pe=me.default.rotrSH(s,i,28)^me.default.rotrBH(s,i,34)^me.default.rotrBH(s,i,39),Be=me.default.rotrSL(s,i,28)^me.default.rotrBL(s,i,34)^me.default.rotrBL(s,i,39),Gr=s&n^s&c^n&c,Pt=i&o^i&l^o&l;q=C|0,L=S|0,C=A|0,S=w|0,A=m|0,w=p|0,{h:m,l:p}=me.default.add(h|0,d|0,be|0,st|0),h=c|0,d=l|0,c=n|0,l=o|0,n=s|0,o=i|0;let Le=me.default.add3L(st,Be,Pt);s=me.default.add3H(Le,be,Pe,Gr),i=Le|0}({h:s,l:i}=me.default.add(this.Ah|0,this.Al|0,s|0,i|0)),{h:n,l:o}=me.default.add(this.Bh|0,this.Bl|0,n|0,o|0),{h:c,l}=me.default.add(this.Ch|0,this.Cl|0,c|0,l|0),{h,l:d}=me.default.add(this.Dh|0,this.Dl|0,h|0,d|0),{h:m,l:p}=me.default.add(this.Eh|0,this.El|0,m|0,p|0),{h:A,l:w}=me.default.add(this.Fh|0,this.Fl|0,A|0,w|0),{h:C,l:S}=me.default.add(this.Gh|0,this.Gl|0,C|0,S|0),{h:q,l:L}=me.default.add(this.Hh|0,this.Hl|0,q|0,L|0),this.set(s,i,n,o,c,l,h,d,m,p,A,w,C,S,q,L)}roundClean(){Zi.fill(0),en.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}};Tr.SHA512=Ca;var R_=class extends Ca{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}},D_=class extends Ca{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}},q_=class extends Ca{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}};Tr.sha512=(0,CS.wrapConstructor)(()=>new Ca);Tr.sha512_224=(0,CS.wrapConstructor)(()=>new R_);Tr.sha512_256=(0,CS.wrapConstructor)(()=>new D_);Tr.sha384=(0,CS.wrapConstructor)(()=>new q_)});var TB=v(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.sha384=ar.sha512_256=ar.sha512_224=ar.sha512=ar.sha224=ar.sha256=void 0;var OB=cB();Object.defineProperty(ar,"sha256",{enumerable:!0,get:function(){return OB.sha256}});Object.defineProperty(ar,"sha224",{enumerable:!0,get:function(){return OB.sha224}});var PS=xB();Object.defineProperty(ar,"sha512",{enumerable:!0,get:function(){return PS.sha512}});Object.defineProperty(ar,"sha512_224",{enumerable:!0,get:function(){return PS.sha512_224}});Object.defineProperty(ar,"sha512_256",{enumerable:!0,get:function(){return PS.sha512_256}});Object.defineProperty(ar,"sha384",{enumerable:!0,get:function(){return PS.sha384}})});var Cx=v(g=>{"use strict";var aq=ni(),zl=_s(),oq=f_(),cq=QN(),uq=oB(),j_=TB();function GA(r){var e=Object.create(null);return r&&Object.keys(r).forEach(function(t){if(t!=="default"){var s=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,s.get?s:{enumerable:!0,get:function(){return r[t]}})}}),e.default=r,Object.freeze(e)}var a=GA(aq),ie=GA(zl),u=GA(oq),Hn=GA(cq),ct=new ArrayBuffer(0),f="",xe=class r extends TypeError{constructor(){super(...arguments),this.name=r.NAME}static isType(e,t){if(typeof t=="string"){if(t==="Array"&&Array.isArray(e))return!0;if(t==="ArrayBuffer"&&e instanceof ArrayBuffer)return!0;if(t==="ArrayBufferView"&&ArrayBuffer.isView(e))return!0;if(typeof e===t)return!0}else if(e instanceof t)return!0;return!1}static assert(e,t,...s){for(let n of s)if(this.isType(e,n))return;let i=s.map(n=>n instanceof Function&&"name"in n?n.name:`${n}`);throw new r(`Parameter '${t}' is not of type ${i.length>1?`(${i.join(" or ")})`:i[0]}`)}};xe.NAME="ArgumentError";var we=class r extends TypeError{static assert(...e){let t=null,s,i;typeof e[0]=="string"?(t=e[0],s=e[1],i=e.slice(2)):(s=e[0],i=e.slice(1)),xe.assert(s,"parameters","object");for(let n of i){let o=s[n];if(o==null)throw new r(n,t)}}static assertEmpty(e,t,s){if(e==null)throw new r(t,s)}constructor(e,t=null,s){super(),this.name=r.NAME,this.field=e,t&&(this.target=t),s?this.message=s:this.message=`Absent mandatory parameter '${e}' ${t?` in '${t}'`:f}`}};we.NAME="ParameterError";var I=class r extends Error{static assertSchema(e,t){if(!e.verified)throw new Error(`Object's schema was not verified against input data for ${t}`)}static assert(e,t){if(e.offset===-1)throw new r(`Error during parsing of ASN.1 data. Data is not correct for '${t}'.`)}constructor(e){super(e),this.name="AsnError"}},B=class{static blockName(){return this.CLASS_NAME}static fromBER(e){let t=a.fromBER(e);I.assert(t,this.name);try{return new this({schema:t.result})}catch{throw new I(`Cannot create '${this.CLASS_NAME}' from ASN.1 object`)}}static defaultValues(e){throw new Error(`Invalid member name for ${this.CLASS_NAME} class: ${e}`)}static schema(e={}){throw new Error(`Method '${this.CLASS_NAME}.schema' should be overridden`)}get className(){return this.constructor.CLASS_NAME}toString(e="hex"){let t;try{t=this.toSchema()}catch{t=this.toSchema(!0)}return ie.Convert.ToString(t.toBER(),e)}};B.CLASS_NAME="PkiObject";function bi(r){let e=!1,t=f,s=r.trim();for(let i=0;i<s.length;i++)s.charCodeAt(i)===32?e===!1&&(e=!0):(e&&(t+=" ",e=!1),t+=s[i]);return t.toLowerCase()}var $d="type",M_="value",Yl=class r extends B{constructor(e={}){super(),this.type=u.getParametersValue(e,$d,r.defaultValues($d)),this.value=u.getParametersValue(e,M_,r.defaultValues(M_)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case $d:return f;case M_:return{};default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.type||f}),new a.Any({name:t.value||f})]})}fromSchema(e){u.clearProps(e,[$d,"typeValue"]);let t=a.compareSchema(e,e,r.schema({names:{type:$d,value:"typeValue"}}));I.assertSchema(t,this.className),this.type=t.result.type.valueBlock.toString(),this.value=t.result.typeValue}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.type}),this.value]})}toJSON(){let e={type:this.type};return Object.keys(this.value).length!==0?e.value=this.value.toJSON():e.value=this.value,e}isEqual(e){let t=[a.Utf8String.blockName(),a.BmpString.blockName(),a.UniversalString.blockName(),a.NumericString.blockName(),a.PrintableString.blockName(),a.TeletexString.blockName(),a.VideotexString.blockName(),a.IA5String.blockName(),a.GraphicString.blockName(),a.VisibleString.blockName(),a.GeneralString.blockName(),a.CharacterString.blockName()];if(e instanceof ArrayBuffer)return ie.BufferSourceConverter.isEqual(this.value.valueBeforeDecodeView,e);if(e.constructor.blockName()===r.blockName()){if(this.type!==e.type)return!1;let s=[!1,!1],i=this.value.constructor.blockName();for(let o of t)i===o&&(s[0]=!0),e.value.constructor.blockName()===o&&(s[1]=!0);if(s[0]!==s[1])return!1;if(s[0]&&s[1]){let o=bi(this.value.valueBlock.value),c=bi(e.value.valueBlock.value);if(o.localeCompare(c)!==0)return!1}else if(!ie.BufferSourceConverter.isEqual(this.value.valueBeforeDecodeView,e.value.valueBeforeDecodeView))return!1;return!0}return!1}};Yl.CLASS_NAME="AttributeTypeAndValue";var rn="typesAndValues",sp="valueBeforeDecode",pb="RDN",je=class r extends B{constructor(e={}){super(),this.typesAndValues=u.getParametersValue(e,rn,r.defaultValues(rn)),this.valueBeforeDecode=u.getParametersValue(e,sp,r.defaultValues(sp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case rn:return[];case sp:return ct;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case rn:return t.length===0;case sp:return t.byteLength===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.repeatedSequence||f,value:new a.Set({value:[new a.Repeated({name:t.repeatedSet||f,value:Yl.schema(t.typeAndValue||{})})]})})]})}fromSchema(e){u.clearProps(e,[pb,rn]);let t=a.compareSchema(e,e,r.schema({names:{blockName:pb,repeatedSet:rn}}));I.assertSchema(t,this.className),rn in t.result&&(this.typesAndValues=Array.from(t.result.typesAndValues,s=>new Yl({schema:s}))),this.valueBeforeDecode=t.result.RDN.valueBeforeDecodeView.slice().buffer}toSchema(){if(this.valueBeforeDecode.byteLength===0)return new a.Sequence({value:[new a.Set({value:Array.from(this.typesAndValues,t=>t.toSchema())})]});let e=a.fromBER(this.valueBeforeDecode);if(I.assert(e,"RelativeDistinguishedNames"),!(e.result instanceof a.Sequence))throw new Error("ASN.1 result should be SEQUENCE");return e.result}toJSON(){return{typesAndValues:Array.from(this.typesAndValues,e=>e.toJSON())}}isEqual(e){if(e instanceof r){if(this.typesAndValues.length!==e.typesAndValues.length)return!1;for(let[t,s]of this.typesAndValues.entries())if(s.isEqual(e.typesAndValues[t])===!1)return!1;return!0}return e instanceof ArrayBuffer?u.isEqualBuffer(this.valueBeforeDecode,e):!1}};je.CLASS_NAME="RelativeDistinguishedNames";var Jl="type",Gl="value";function lq(r={},e=!1){let t=u.getParametersValue(r,"names",{});return new a.Sequence({optional:e,value:[new a.Constructed({optional:!0,idBlock:{tagClass:2,tagNumber:1},name:t.country_name||f,value:[new a.Choice({value:[new a.NumericString,new a.PrintableString]})]}),new a.Constructed({optional:!0,idBlock:{tagClass:2,tagNumber:2},name:t.administration_domain_name||f,value:[new a.Choice({value:[new a.NumericString,new a.PrintableString]})]}),new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:0},name:t.network_address||f,isHexOnly:!0}),new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:1},name:t.terminal_identifier||f,isHexOnly:!0}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:2},name:t.private_domain_name||f,value:[new a.Choice({value:[new a.NumericString,new a.PrintableString]})]}),new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:3},name:t.organization_name||f,isHexOnly:!0}),new a.Primitive({optional:!0,name:t.numeric_user_identifier||f,idBlock:{tagClass:3,tagNumber:4},isHexOnly:!0}),new a.Constructed({optional:!0,name:t.personal_name||f,idBlock:{tagClass:3,tagNumber:5},value:[new a.Primitive({idBlock:{tagClass:3,tagNumber:0},isHexOnly:!0}),new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:1},isHexOnly:!0}),new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:2},isHexOnly:!0}),new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:3},isHexOnly:!0})]}),new a.Constructed({optional:!0,name:t.organizational_unit_names||f,idBlock:{tagClass:3,tagNumber:6},value:[new a.Repeated({value:new a.PrintableString})]})]})}function hq(r=!1){return new a.Sequence({optional:r,value:[new a.PrintableString,new a.PrintableString]})}function fq(r=!1){return new a.Set({optional:r,value:[new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:0},isHexOnly:!0}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Any]})]})}var Oe=class r extends B{constructor(e={}){super(),this.type=u.getParametersValue(e,Jl,r.defaultValues(Jl)),this.value=u.getParametersValue(e,Gl,r.defaultValues(Gl)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Jl:return 9;case Gl:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Jl:return t===r.defaultValues(e);case Gl:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Choice({value:[new a.Constructed({idBlock:{tagClass:3,tagNumber:0},name:t.blockName||f,value:[new a.ObjectIdentifier,new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any]})]}),new a.Primitive({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:1}}),new a.Primitive({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:2}}),new a.Constructed({idBlock:{tagClass:3,tagNumber:3},name:t.blockName||f,value:[lq(t.builtInStandardAttributes||{},!1),hq(!0),fq(!0)]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:4},name:t.blockName||f,value:[je.schema(t.directoryName||{})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:5},name:t.blockName||f,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Choice({value:[new a.TeletexString,new a.PrintableString,new a.UniversalString,new a.Utf8String,new a.BmpString]})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[new a.Choice({value:[new a.TeletexString,new a.PrintableString,new a.UniversalString,new a.Utf8String,new a.BmpString]})]})]}),new a.Primitive({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:6}}),new a.Primitive({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:7}}),new a.Primitive({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:8}})]})}fromSchema(e){u.clearProps(e,["blockName","otherName","rfc822Name","dNSName","x400Address","directoryName","ediPartyName","uniformResourceIdentifier","iPAddress","registeredID"]);let t=a.compareSchema(e,e,r.schema({names:{blockName:"blockName",otherName:"otherName",rfc822Name:"rfc822Name",dNSName:"dNSName",x400Address:"x400Address",directoryName:{names:{blockName:"directoryName"}},ediPartyName:"ediPartyName",uniformResourceIdentifier:"uniformResourceIdentifier",iPAddress:"iPAddress",registeredID:"registeredID"}}));switch(I.assertSchema(t,this.className),this.type=t.result.blockName.idBlock.tagNumber,this.type){case 0:this.value=t.result.blockName;break;case 1:case 2:case 6:{let s=t.result.blockName;s.idBlock.tagClass=1,s.idBlock.tagNumber=22;let i=s.toBER(!1),n=a.fromBER(i);I.assert(n,"GeneralName value"),this.value=n.result.valueBlock.value}break;case 3:this.value=t.result.blockName;break;case 4:this.value=new je({schema:t.result.directoryName});break;case 5:this.value=t.result.ediPartyName;break;case 7:this.value=new a.OctetString({valueHex:t.result.blockName.valueBlock.valueHex});break;case 8:{let s=t.result.blockName;s.idBlock.tagClass=1,s.idBlock.tagNumber=6;let i=s.toBER(!1),n=a.fromBER(i);I.assert(n,"GeneralName registeredID"),this.value=n.result.valueBlock.toString()}break}}toSchema(){switch(this.type){case 0:case 3:case 5:return new a.Constructed({idBlock:{tagClass:3,tagNumber:this.type},value:[this.value]});case 1:case 2:case 6:{let e=new a.IA5String({value:this.value});return e.idBlock.tagClass=3,e.idBlock.tagNumber=this.type,e}case 4:return new a.Constructed({idBlock:{tagClass:3,tagNumber:4},value:[this.value.toSchema()]});case 7:{let e=this.value;return e.idBlock.tagClass=3,e.idBlock.tagNumber=this.type,e}case 8:{let e=new a.ObjectIdentifier({value:this.value});return e.idBlock.tagClass=3,e.idBlock.tagNumber=this.type,e}default:return r.schema()}}toJSON(){let e={type:this.type,value:f};if(typeof this.value=="string")e.value=this.value;else try{e.value=this.value.toJSON()}catch{}return e}};Oe.CLASS_NAME="GeneralName";var ip="accessMethod",np="accessLocation",dq=[ip,np],Xl=class r extends B{constructor(e={}){super(),this.accessMethod=u.getParametersValue(e,ip,r.defaultValues(ip)),this.accessLocation=u.getParametersValue(e,np,r.defaultValues(np)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ip:return f;case np:return new Oe;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.accessMethod||f}),Oe.schema(t.accessLocation||{})]})}fromSchema(e){u.clearProps(e,dq);let t=a.compareSchema(e,e,r.schema({names:{accessMethod:ip,accessLocation:{names:{blockName:np}}}}));I.assertSchema(t,this.className),this.accessMethod=t.result.accessMethod.valueBlock.toString(),this.accessLocation=new Oe({schema:t.result.accessLocation})}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.accessMethod}),this.accessLocation.toSchema()]})}toJSON(){return{accessMethod:this.accessMethod,accessLocation:this.accessLocation.toJSON()}}};Xl.CLASS_NAME="AccessDescription";var Ai="seconds",wi="millis",_i="micros",Ns=class r extends B{constructor(e={}){super(),Ai in e&&(this.seconds=u.getParametersValue(e,Ai,r.defaultValues(Ai))),wi in e&&(this.millis=u.getParametersValue(e,wi,r.defaultValues(wi))),_i in e&&(this.micros=u.getParametersValue(e,_i,r.defaultValues(_i))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ai:case wi:case _i:return 0;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Ai:case wi:case _i:return t===r.defaultValues(e);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,optional:!0,value:[new a.Integer({optional:!0,name:t.seconds||f}),new a.Primitive({name:t.millis||f,optional:!0,idBlock:{tagClass:3,tagNumber:0}}),new a.Primitive({name:t.micros||f,optional:!0,idBlock:{tagClass:3,tagNumber:1}})]})}fromSchema(e){u.clearProps(e,[Ai,wi,_i]);let t=a.compareSchema(e,e,r.schema({names:{seconds:Ai,millis:wi,micros:_i}}));if(I.assertSchema(t,this.className),"seconds"in t.result&&(this.seconds=t.result.seconds.valueBlock.valueDec),"millis"in t.result){let s=new a.Integer({valueHex:t.result.millis.valueBlock.valueHex});this.millis=s.valueBlock.valueDec}if("micros"in t.result){let s=new a.Integer({valueHex:t.result.micros.valueBlock.valueHex});this.micros=s.valueBlock.valueDec}}toSchema(){let e=[];if(this.seconds!==void 0&&e.push(new a.Integer({value:this.seconds})),this.millis!==void 0){let t=new a.Integer({value:this.millis});e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:0},valueHex:t.valueBlock.valueHexView}))}if(this.micros!==void 0){let t=new a.Integer({value:this.micros});e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:1},valueHex:t.valueBlock.valueHexView}))}return new a.Sequence({value:e})}toJSON(){let e={};return this.seconds!==void 0&&(e.seconds=this.seconds),this.millis!==void 0&&(e.millis=this.millis),this.micros!==void 0&&(e.micros=this.micros),e}};Ns.CLASS_NAME="Accuracy";var IS="algorithmId",Fd="algorithmParams",XB="algorithm",mb="params",pq=[XB,mb],b=class r extends B{constructor(e={}){super(),this.algorithmId=u.getParametersValue(e,IS,r.defaultValues(IS)),Fd in e&&(this.algorithmParams=u.getParametersValue(e,Fd,r.defaultValues(Fd))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case IS:return f;case Fd:return new a.Any;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case IS:return t===f;case Fd:return t instanceof a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,optional:t.optional||!1,value:[new a.ObjectIdentifier({name:t.algorithmIdentifier||f}),new a.Any({name:t.algorithmParams||f,optional:!0})]})}fromSchema(e){u.clearProps(e,pq);let t=a.compareSchema(e,e,r.schema({names:{algorithmIdentifier:XB,algorithmParams:mb}}));I.assertSchema(t,this.className),this.algorithmId=t.result.algorithm.valueBlock.toString(),mb in t.result&&(this.algorithmParams=t.result.params)}toSchema(){let e=[];return e.push(new a.ObjectIdentifier({value:this.algorithmId})),this.algorithmParams&&!(this.algorithmParams instanceof a.Any)&&e.push(this.algorithmParams),new a.Sequence({value:e})}toJSON(){let e={algorithmId:this.algorithmId};return this.algorithmParams&&!(this.algorithmParams instanceof a.Any)&&(e.algorithmParams=this.algorithmParams.toJSON()),e}isEqual(e){return!(e instanceof r)||this.algorithmId!==e.algorithmId?!1:this.algorithmParams?e.algorithmParams?JSON.stringify(this.algorithmParams)===JSON.stringify(e.algorithmParams):!1:!e.algorithmParams}};b.CLASS_NAME="AlgorithmIdentifier";var Iu="altNames",mq=[Iu],Ql=class r extends B{constructor(e={}){super(),this.altNames=u.getParametersValue(e,Iu,r.defaultValues(Iu)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Iu?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.altNames||f,value:Oe.schema()})]})}fromSchema(e){u.clearProps(e,mq);let t=a.compareSchema(e,e,r.schema({names:{altNames:Iu}}));I.assertSchema(t,this.className),Iu in t.result&&(this.altNames=Array.from(t.result.altNames,s=>new Oe({schema:s})))}toSchema(){return new a.Sequence({value:Array.from(this.altNames,e=>e.toSchema())})}toJSON(){return{altNames:Array.from(this.altNames,e=>e.toJSON())}}};Ql.CLASS_NAME="AltName";var Eu="type",ku="values",gq=[Eu,ku],Qe=class r extends B{constructor(e={}){super(),this.type=u.getParametersValue(e,Eu,r.defaultValues(Eu)),this.values=u.getParametersValue(e,ku,r.defaultValues(ku)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Eu:return f;case ku:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Eu:return t===f;case ku:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.type||f}),new a.Set({name:t.setName||f,value:[new a.Repeated({name:t.values||f,value:new a.Any})]})]})}fromSchema(e){u.clearProps(e,gq);let t=a.compareSchema(e,e,r.schema({names:{type:Eu,values:ku}}));I.assertSchema(t,this.className),this.type=t.result.type.valueBlock.toString(),this.values=t.result.values}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.type}),new a.Set({value:this.values})]})}toJSON(){return{type:this.type,values:Array.from(this.values,e=>e.toJSON())}}};Qe.CLASS_NAME="Attribute";var ap="notBeforeTime",op="notAfterTime",yq=[ap,op],Vs=class r extends B{constructor(e={}){super(),this.notBeforeTime=u.getParametersValue(e,ap,r.defaultValues(ap)),this.notAfterTime=u.getParametersValue(e,op,r.defaultValues(op)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ap:case op:return new Date(0,0,0);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.GeneralizedTime({name:t.notBeforeTime||f}),new a.GeneralizedTime({name:t.notAfterTime||f})]})}fromSchema(e){u.clearProps(e,yq);let t=a.compareSchema(e,e,r.schema({names:{notBeforeTime:ap,notAfterTime:op}}));I.assertSchema(t,this.className),this.notBeforeTime=t.result.notBeforeTime.toDate(),this.notAfterTime=t.result.notAfterTime.toDate()}toSchema(){return new a.Sequence({value:[new a.GeneralizedTime({valueDate:this.notBeforeTime}),new a.GeneralizedTime({valueDate:this.notAfterTime})]})}toJSON(){return{notBeforeTime:this.notBeforeTime,notAfterTime:this.notAfterTime}}};Vs.CLASS_NAME="AttCertValidityPeriod";var Jd="names",VB="generalNames",At=class r extends B{constructor(e={}){super(),this.names=u.getParametersValue(e,Jd,r.defaultValues(Jd)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e==="names"?[]:super.defaultValues(e)}static schema(e={},t=!1){let s=u.getParametersValue(e,Jd,{});return new a.Sequence({optional:t,name:s.blockName||f,value:[new a.Repeated({name:s.generalNames||f,value:Oe.schema()})]})}fromSchema(e){u.clearProps(e,[Jd,VB]);let t=a.compareSchema(e,e,r.schema({names:{blockName:Jd,generalNames:VB}}));I.assertSchema(t,this.className),this.names=Array.from(t.result.generalNames,s=>new Oe({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.names,e=>e.toSchema())})}toJSON(){return{names:Array.from(this.names,e=>e.toJSON())}}};At.CLASS_NAME="GeneralNames";var QB="2.5.29.9",ZB="2.5.29.14",ex="2.5.29.15",tx="2.5.29.16",$b="2.5.29.17",Fb="2.5.29.18",WA="2.5.29.19",rx="2.5.29.20",sx="2.5.29.27",ix="2.5.29.21",nx="2.5.29.24",Jb="2.5.29.28",Gb="2.5.29.29",Wb="2.5.29.30",zb="2.5.29.31",zA="2.5.29.46",Yb="2.5.29.32",wr="2.5.29.32.0",ax="1.3.6.1.4.1.311.21.10",Xb="2.5.29.33",YA="2.5.29.35",Qb="2.5.29.36",ox="2.5.29.37",cx="2.5.29.54",XA="1.3.6.1.5.5.7.1.1",ux="1.3.6.1.5.5.7.1.11",Zb="1.3.6.1.4.1.11129.2.4.2",vq="1.3.6.1.4.1.311.20.2",Sq="1.3.6.1.4.1.311.21.2",lx="1.3.6.1.4.1.311.21.7",hx="1.3.6.1.4.1.311.21.1",fx="1.3.6.1.5.5.7.1.3",QA="1.2.840.113549.1.7.1",eC="1.2.840.113549.1.7.2",tC="1.2.840.113549.1.7.3",rC="1.2.840.113549.1.7.6",dx="1.2.840.113549.1.9.16.1.4",gb="1.2.840.113549.1.9.22.1",px="1.2.840.113549.1.9.22.2",yb="1.2.840.113549.1.9.22.3",vb="1.2.840.113549.1.9.23.1",mx="1.3.6.1.5.5.7",ZA=`${mx}.48`,Ym=`${ZA}.1.1`,Aq=`${ZA}.2`,wq=`${ZA}.1`,_q="1.3.14.3.2.26",bq="2.16.840.1.101.3.4.2.1",Cq="2.16.840.1.101.3.4.2.2",Pq="2.16.840.1.101.3.4.2.3",ka="keyIdentifier",Na="authorityCertIssuer",Ba="authorityCertSerialNumber",Iq=[ka,Na,Ba],Zl=class r extends B{constructor(e={}){super(),ka in e&&(this.keyIdentifier=u.getParametersValue(e,ka,r.defaultValues(ka))),Na in e&&(this.authorityCertIssuer=u.getParametersValue(e,Na,r.defaultValues(Na))),Ba in e&&(this.authorityCertSerialNumber=u.getParametersValue(e,Ba,r.defaultValues(Ba))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ka:return new a.OctetString;case Na:return[];case Ba:return new a.Integer;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Primitive({name:t.keyIdentifier||f,optional:!0,idBlock:{tagClass:3,tagNumber:0}}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Repeated({name:t.authorityCertIssuer||f,value:Oe.schema()})]}),new a.Primitive({name:t.authorityCertSerialNumber||f,optional:!0,idBlock:{tagClass:3,tagNumber:2}})]})}fromSchema(e){u.clearProps(e,Iq);let t=a.compareSchema(e,e,r.schema({names:{keyIdentifier:ka,authorityCertIssuer:Na,authorityCertSerialNumber:Ba}}));I.assertSchema(t,this.className),ka in t.result&&(this.keyIdentifier=new a.OctetString({valueHex:t.result.keyIdentifier.valueBlock.valueHex})),Na in t.result&&(this.authorityCertIssuer=Array.from(t.result.authorityCertIssuer,s=>new Oe({schema:s}))),Ba in t.result&&(this.authorityCertSerialNumber=new a.Integer({valueHex:t.result.authorityCertSerialNumber.valueBlock.valueHex}))}toSchema(){let e=[];return this.keyIdentifier&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:0},valueHex:this.keyIdentifier.valueBlock.valueHexView})),this.authorityCertIssuer&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:Array.from(this.authorityCertIssuer,t=>t.toSchema())})),this.authorityCertSerialNumber&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:2},valueHex:this.authorityCertSerialNumber.valueBlock.valueHexView})),new a.Sequence({value:e})}toJSON(){let e={};return this.keyIdentifier&&(e.keyIdentifier=this.keyIdentifier.toJSON()),this.authorityCertIssuer&&(e.authorityCertIssuer=Array.from(this.authorityCertIssuer,t=>t.toJSON())),this.authorityCertSerialNumber&&(e.authorityCertSerialNumber=this.authorityCertSerialNumber.toJSON()),e}};Zl.CLASS_NAME="AuthorityKeyIdentifier";var Pa="pathLenConstraint",Ia="cA",eh=class r extends B{constructor(e={}){super(),this.cA=u.getParametersValue(e,Ia,!1),Pa in e&&(this.pathLenConstraint=u.getParametersValue(e,Pa,0)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Ia?!1:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Boolean({optional:!0,name:t.cA||f}),new a.Integer({optional:!0,name:t.pathLenConstraint||f})]})}fromSchema(e){u.clearProps(e,[Ia,Pa]);let t=a.compareSchema(e,e,r.schema({names:{cA:Ia,pathLenConstraint:Pa}}));I.assertSchema(t,this.className),Ia in t.result&&(this.cA=t.result.cA.valueBlock.value),Pa in t.result&&(t.result.pathLenConstraint.valueBlock.isHexOnly?this.pathLenConstraint=t.result.pathLenConstraint:this.pathLenConstraint=t.result.pathLenConstraint.valueBlock.valueDec)}toSchema(){let e=[];return this.cA!==r.defaultValues(Ia)&&e.push(new a.Boolean({value:this.cA})),Pa in this&&(this.pathLenConstraint instanceof a.Integer?e.push(this.pathLenConstraint):e.push(new a.Integer({value:this.pathLenConstraint}))),new a.Sequence({value:e})}toJSON(){let e={};return this.cA!==r.defaultValues(Ia)&&(e.cA=this.cA),Pa in this&&(this.pathLenConstraint instanceof a.Integer?e.pathLenConstraint=this.pathLenConstraint.toJSON():e.pathLenConstraint=this.pathLenConstraint),e}};eh.CLASS_NAME="BasicConstraints";var L_="certificateIndex",U_="keyIndex",Qm=class r extends B{constructor(e={}){super(),this.certificateIndex=u.getParametersValue(e,L_,r.defaultValues(L_)),this.keyIndex=u.getParametersValue(e,U_,r.defaultValues(U_)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case L_:case U_:return 0;default:return super.defaultValues(e)}}static schema(){return new a.Integer}fromSchema(e){if(e.constructor.blockName()!==a.Integer.blockName())throw new Error("Object's schema was not verified against input data for CAVersion");let t=e.valueBlock.valueHex.slice(0),s=new Uint8Array(t);switch(!0){case t.byteLength<4:{let m=new ArrayBuffer(4);new Uint8Array(m).set(s,4-t.byteLength),t=m.slice(0)}break;case t.byteLength>4:{let m=new ArrayBuffer(4);new Uint8Array(m).set(s.slice(0,4)),t=m.slice(0)}break}let i=t.slice(0,2),n=new Uint8Array(i),o=n[0];n[0]=n[1],n[1]=o;let c=new Uint16Array(i);this.keyIndex=c[0];let l=t.slice(2),h=new Uint8Array(l);o=h[0],h[0]=h[1],h[1]=o;let d=new Uint16Array(l);this.certificateIndex=d[0]}toSchema(){let e=new ArrayBuffer(2),t=new Uint16Array(e);t[0]=this.certificateIndex;let s=new Uint8Array(e),i=s[0];s[0]=s[1],s[1]=i;let n=new ArrayBuffer(2),o=new Uint16Array(n);o[0]=this.keyIndex;let c=new Uint8Array(n);return i=c[0],c[0]=c[1],c[1]=i,new a.Integer({valueHex:u.utilConcatBuf(n,e)})}toJSON(){return{certificateIndex:this.certificateIndex,keyIndex:this.keyIndex}}};Qm.CLASS_NAME="CAVersion";var cp="policyQualifierId",up="qualifier",Eq=[cp,up],th=class r extends B{constructor(e={}){super(),this.policyQualifierId=u.getParametersValue(e,cp,r.defaultValues(cp)),this.qualifier=u.getParametersValue(e,up,r.defaultValues(up)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case cp:return f;case up:return new a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.policyQualifierId||f}),new a.Any({name:t.qualifier||f})]})}fromSchema(e){u.clearProps(e,Eq);let t=a.compareSchema(e,e,r.schema({names:{policyQualifierId:cp,qualifier:up}}));I.assertSchema(t,this.className),this.policyQualifierId=t.result.policyQualifierId.valueBlock.toString(),this.qualifier=t.result.qualifier}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.policyQualifierId}),this.qualifier]})}toJSON(){return{policyQualifierId:this.policyQualifierId,qualifier:this.qualifier.toJSON()}}};th.CLASS_NAME="PolicyQualifierInfo";var Wl="policyIdentifier",Mn="policyQualifiers",kq=[Wl,Mn],rh=class r extends B{constructor(e={}){super(),this.policyIdentifier=u.getParametersValue(e,Wl,r.defaultValues(Wl)),Mn in e&&(this.policyQualifiers=u.getParametersValue(e,Mn,r.defaultValues(Mn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Wl:return f;case Mn:return[];default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.policyIdentifier||f}),new a.Sequence({optional:!0,value:[new a.Repeated({name:t.policyQualifiers||f,value:th.schema()})]})]})}fromSchema(e){u.clearProps(e,kq);let t=a.compareSchema(e,e,r.schema({names:{policyIdentifier:Wl,policyQualifiers:Mn}}));I.assertSchema(t,this.className),this.policyIdentifier=t.result.policyIdentifier.valueBlock.toString(),Mn in t.result&&(this.policyQualifiers=Array.from(t.result.policyQualifiers,s=>new th({schema:s})))}toSchema(){let e=[];return e.push(new a.ObjectIdentifier({value:this.policyIdentifier})),this.policyQualifiers&&e.push(new a.Sequence({value:Array.from(this.policyQualifiers,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={policyIdentifier:this.policyIdentifier};return this.policyQualifiers&&(e.policyQualifiers=Array.from(this.policyQualifiers,t=>t.toJSON())),e}};rh.CLASS_NAME="PolicyInformation";var lp="certificatePolicies",Nq=[lp],sh=class r extends B{constructor(e={}){super(),this.certificatePolicies=u.getParametersValue(e,lp,r.defaultValues(lp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===lp?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.certificatePolicies||f,value:rh.schema()})]})}fromSchema(e){u.clearProps(e,Nq);let t=a.compareSchema(e,e,r.schema({names:{certificatePolicies:lp}}));I.assertSchema(t,this.className),this.certificatePolicies=Array.from(t.result.certificatePolicies,s=>new rh({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.certificatePolicies,e=>e.toSchema())})}toJSON(){return{certificatePolicies:Array.from(this.certificatePolicies,e=>e.toJSON())}}};sh.CLASS_NAME="CertificatePolicies";var hp="templateID",ci="templateMajorVersion",ui="templateMinorVersion",Bq=[hp,ci,ui],EA=class r extends B{constructor(e={}){super(),this.templateID=u.getParametersValue(e,hp,r.defaultValues(hp)),ci in e&&(this.templateMajorVersion=u.getParametersValue(e,ci,r.defaultValues(ci))),ui in e&&(this.templateMinorVersion=u.getParametersValue(e,ui,r.defaultValues(ui))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case hp:return f;case ci:case ui:return 0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.templateID||f}),new a.Integer({name:t.templateMajorVersion||f,optional:!0}),new a.Integer({name:t.templateMinorVersion||f,optional:!0})]})}fromSchema(e){u.clearProps(e,Bq);let t=a.compareSchema(e,e,r.schema({names:{templateID:hp,templateMajorVersion:ci,templateMinorVersion:ui}}));I.assertSchema(t,this.className),this.templateID=t.result.templateID.valueBlock.toString(),ci in t.result&&(this.templateMajorVersion=t.result.templateMajorVersion.valueBlock.valueDec),ui in t.result&&(this.templateMinorVersion=t.result.templateMinorVersion.valueBlock.valueDec)}toSchema(){let e=[];return e.push(new a.ObjectIdentifier({value:this.templateID})),ci in this&&e.push(new a.Integer({value:this.templateMajorVersion})),ui in this&&e.push(new a.Integer({value:this.templateMinorVersion})),new a.Sequence({value:e})}toJSON(){let e={templateID:this.templateID};return ci in this&&(e.templateMajorVersion=this.templateMajorVersion),ui in this&&(e.templateMinorVersion=this.templateMinorVersion),e}},xa="distributionPoint",gx="distributionPointNames",Oa="reasons",Ta="cRLIssuer",yx="cRLIssuerNames",xq=[xa,gx,Oa,Ta,yx],ih=class r extends B{constructor(e={}){super(),xa in e&&(this.distributionPoint=u.getParametersValue(e,xa,r.defaultValues(xa))),Oa in e&&(this.reasons=u.getParametersValue(e,Oa,r.defaultValues(Oa))),Ta in e&&(this.cRLIssuer=u.getParametersValue(e,Ta,r.defaultValues(Ta))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case xa:return[];case Oa:return new a.BitString;case Ta:return[];default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Choice({value:[new a.Constructed({name:t.distributionPoint||f,optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({name:t.distributionPointNames||f,value:Oe.schema()})]}),new a.Constructed({name:t.distributionPoint||f,optional:!0,idBlock:{tagClass:3,tagNumber:1},value:je.schema().valueBlock.value})]})]}),new a.Primitive({name:t.reasons||f,optional:!0,idBlock:{tagClass:3,tagNumber:1}}),new a.Constructed({name:t.cRLIssuer||f,optional:!0,idBlock:{tagClass:3,tagNumber:2},value:[new a.Repeated({name:t.cRLIssuerNames||f,value:Oe.schema()})]})]})}fromSchema(e){u.clearProps(e,xq);let t=a.compareSchema(e,e,r.schema({names:{distributionPoint:xa,distributionPointNames:gx,reasons:Oa,cRLIssuer:Ta,cRLIssuerNames:yx}}));I.assertSchema(t,this.className),xa in t.result&&(t.result.distributionPoint.idBlock.tagNumber===0&&(this.distributionPoint=Array.from(t.result.distributionPointNames,s=>new Oe({schema:s}))),t.result.distributionPoint.idBlock.tagNumber===1&&(this.distributionPoint=new je({schema:new a.Sequence({value:t.result.distributionPoint.valueBlock.value})}))),Oa in t.result&&(this.reasons=new a.BitString({valueHex:t.result.reasons.valueBlock.valueHex})),Ta in t.result&&(this.cRLIssuer=Array.from(t.result.cRLIssuerNames,s=>new Oe({schema:s})))}toSchema(){let e=[];if(this.distributionPoint){let t;this.distributionPoint instanceof Array?t=new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:Array.from(this.distributionPoint,s=>s.toSchema())}):t=new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[this.distributionPoint.toSchema()]}),e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[t]}))}return this.reasons&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:1},valueHex:this.reasons.valueBlock.valueHexView})),this.cRLIssuer&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:Array.from(this.cRLIssuer,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={};return this.distributionPoint&&(this.distributionPoint instanceof Array?e.distributionPoint=Array.from(this.distributionPoint,t=>t.toJSON()):e.distributionPoint=this.distributionPoint.toJSON()),this.reasons&&(e.reasons=this.reasons.toJSON()),this.cRLIssuer&&(e.cRLIssuer=Array.from(this.cRLIssuer,t=>t.toJSON())),e}};ih.CLASS_NAME="DistributionPoint";var fp="distributionPoints",Oq=[fp],nh=class r extends B{constructor(e={}){super(),this.distributionPoints=u.getParametersValue(e,fp,r.defaultValues(fp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===fp?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.distributionPoints||f,value:ih.schema()})]})}fromSchema(e){u.clearProps(e,Oq);let t=a.compareSchema(e,e,r.schema({names:{distributionPoints:fp}}));I.assertSchema(t,this.className),this.distributionPoints=Array.from(t.result.distributionPoints,s=>new ih({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.distributionPoints,e=>e.toSchema())})}toJSON(){return{distributionPoints:Array.from(this.distributionPoints,e=>e.toJSON())}}};nh.CLASS_NAME="CRLDistributionPoints";var dp="keyPurposes",Tq=[dp],Zm=class r extends B{constructor(e={}){super(),this.keyPurposes=u.getParametersValue(e,dp,r.defaultValues(dp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===dp?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.keyPurposes||f,value:new a.ObjectIdentifier})]})}fromSchema(e){u.clearProps(e,Tq);let t=a.compareSchema(e,e,r.schema({names:{keyPurposes:dp}}));I.assertSchema(t,this.className),this.keyPurposes=Array.from(t.result.keyPurposes,s=>s.valueBlock.toString())}toSchema(){return new a.Sequence({value:Array.from(this.keyPurposes,e=>new a.ObjectIdentifier({value:e}))})}toJSON(){return{keyPurposes:Array.from(this.keyPurposes)}}};Zm.CLASS_NAME="ExtKeyUsage";var Gd="accessDescriptions",ah=class r extends B{constructor(e={}){super(),this.accessDescriptions=u.getParametersValue(e,Gd,r.defaultValues(Gd)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Gd?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.accessDescriptions||f,value:Xl.schema()})]})}fromSchema(e){u.clearProps(e,[Gd]);let t=a.compareSchema(e,e,r.schema({names:{accessDescriptions:Gd}}));I.assertSchema(t,this.className),this.accessDescriptions=Array.from(t.result.accessDescriptions,s=>new Xl({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.accessDescriptions,e=>e.toSchema())})}toJSON(){return{accessDescriptions:Array.from(this.accessDescriptions,e=>e.toJSON())}}};ah.CLASS_NAME="InfoAccess";var Va="distributionPoint",vx="distributionPointNames",sn="onlyContainsUserCerts",nn="onlyContainsCACerts",an="onlySomeReasons",on="indirectCRL",cn="onlyContainsAttributeCerts",Vq=[Va,vx,sn,nn,an,on,cn],eg=class r extends B{constructor(e={}){super(),Va in e&&(this.distributionPoint=u.getParametersValue(e,Va,r.defaultValues(Va))),this.onlyContainsUserCerts=u.getParametersValue(e,sn,r.defaultValues(sn)),this.onlyContainsCACerts=u.getParametersValue(e,nn,r.defaultValues(nn)),an in e&&(this.onlySomeReasons=u.getParametersValue(e,an,r.defaultValues(an))),this.indirectCRL=u.getParametersValue(e,on,r.defaultValues(on)),this.onlyContainsAttributeCerts=u.getParametersValue(e,cn,r.defaultValues(cn)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Va:return[];case sn:return!1;case nn:return!1;case an:return 0;case on:return!1;case cn:return!1;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Choice({value:[new a.Constructed({name:t.distributionPoint||f,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({name:t.distributionPointNames||f,value:Oe.schema()})]}),new a.Constructed({name:t.distributionPoint||f,idBlock:{tagClass:3,tagNumber:1},value:je.schema().valueBlock.value})]})]}),new a.Primitive({name:t.onlyContainsUserCerts||f,optional:!0,idBlock:{tagClass:3,tagNumber:1}}),new a.Primitive({name:t.onlyContainsCACerts||f,optional:!0,idBlock:{tagClass:3,tagNumber:2}}),new a.Primitive({name:t.onlySomeReasons||f,optional:!0,idBlock:{tagClass:3,tagNumber:3}}),new a.Primitive({name:t.indirectCRL||f,optional:!0,idBlock:{tagClass:3,tagNumber:4}}),new a.Primitive({name:t.onlyContainsAttributeCerts||f,optional:!0,idBlock:{tagClass:3,tagNumber:5}})]})}fromSchema(e){u.clearProps(e,Vq);let t=a.compareSchema(e,e,r.schema({names:{distributionPoint:Va,distributionPointNames:vx,onlyContainsUserCerts:sn,onlyContainsCACerts:nn,onlySomeReasons:an,indirectCRL:on,onlyContainsAttributeCerts:cn}}));if(I.assertSchema(t,this.className),Va in t.result)switch(!0){case t.result.distributionPoint.idBlock.tagNumber===0:this.distributionPoint=Array.from(t.result.distributionPointNames,s=>new Oe({schema:s}));break;case t.result.distributionPoint.idBlock.tagNumber===1:this.distributionPoint=new je({schema:new a.Sequence({value:t.result.distributionPoint.valueBlock.value})});break;default:throw new Error("Unknown tagNumber for distributionPoint: {$asn1.result.distributionPoint.idBlock.tagNumber}")}if(sn in t.result){let s=new Uint8Array(t.result.onlyContainsUserCerts.valueBlock.valueHex);this.onlyContainsUserCerts=s[0]!==0}if(nn in t.result){let s=new Uint8Array(t.result.onlyContainsCACerts.valueBlock.valueHex);this.onlyContainsCACerts=s[0]!==0}if(an in t.result){let s=new Uint8Array(t.result.onlySomeReasons.valueBlock.valueHex);this.onlySomeReasons=s[0]}if(on in t.result){let s=new Uint8Array(t.result.indirectCRL.valueBlock.valueHex);this.indirectCRL=s[0]!==0}if(cn in t.result){let s=new Uint8Array(t.result.onlyContainsAttributeCerts.valueBlock.valueHex);this.onlyContainsAttributeCerts=s[0]!==0}}toSchema(){let e=[];if(this.distributionPoint){let t;this.distributionPoint instanceof Array?t=new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:Array.from(this.distributionPoint,s=>s.toSchema())}):(t=this.distributionPoint.toSchema(),t.idBlock.tagClass=3,t.idBlock.tagNumber=1),e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[t]}))}if(this.onlyContainsUserCerts!==r.defaultValues(sn)&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:1},valueHex:new Uint8Array([255]).buffer})),this.onlyContainsCACerts!==r.defaultValues(nn)&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:2},valueHex:new Uint8Array([255]).buffer})),this.onlySomeReasons!==void 0){let t=new ArrayBuffer(1),s=new Uint8Array(t);s[0]=this.onlySomeReasons,e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:3},valueHex:t}))}return this.indirectCRL!==r.defaultValues(on)&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:4},valueHex:new Uint8Array([255]).buffer})),this.onlyContainsAttributeCerts!==r.defaultValues(cn)&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:5},valueHex:new Uint8Array([255]).buffer})),new a.Sequence({value:e})}toJSON(){let e={};return this.distributionPoint&&(this.distributionPoint instanceof Array?e.distributionPoint=Array.from(this.distributionPoint,t=>t.toJSON()):e.distributionPoint=this.distributionPoint.toJSON()),this.onlyContainsUserCerts!==r.defaultValues(sn)&&(e.onlyContainsUserCerts=this.onlyContainsUserCerts),this.onlyContainsCACerts!==r.defaultValues(nn)&&(e.onlyContainsCACerts=this.onlyContainsCACerts),an in this&&(e.onlySomeReasons=this.onlySomeReasons),this.indirectCRL!==r.defaultValues(on)&&(e.indirectCRL=this.indirectCRL),this.onlyContainsAttributeCerts!==r.defaultValues(cn)&&(e.onlyContainsAttributeCerts=this.onlyContainsAttributeCerts),e}};eg.CLASS_NAME="IssuingDistributionPoint";var pp="base",Nu="minimum",un="maximum",Rq=[pp,Nu,un],Kn=class r extends B{constructor(e={}){super(),this.base=u.getParametersValue(e,pp,r.defaultValues(pp)),this.minimum=u.getParametersValue(e,Nu,r.defaultValues(Nu)),un in e&&(this.maximum=u.getParametersValue(e,un,r.defaultValues(un))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case pp:return new Oe;case Nu:return 0;case un:return 0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[Oe.schema(t.base||{}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({name:t.minimum||f})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Integer({name:t.maximum||f})]})]})}fromSchema(e){u.clearProps(e,Rq);let t=a.compareSchema(e,e,r.schema({names:{base:{names:{blockName:pp}},minimum:Nu,maximum:un}}));I.assertSchema(t,this.className),this.base=new Oe({schema:t.result.base}),Nu in t.result&&(t.result.minimum.valueBlock.isHexOnly?this.minimum=t.result.minimum:this.minimum=t.result.minimum.valueBlock.valueDec),un in t.result&&(t.result.maximum.valueBlock.isHexOnly?this.maximum=t.result.maximum:this.maximum=t.result.maximum.valueBlock.valueDec)}toSchema(){let e=[];if(e.push(this.base.toSchema()),this.minimum!==0){let t=0;this.minimum instanceof a.Integer?t=this.minimum:t=new a.Integer({value:this.minimum}),e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[t]}))}if(un in this){let t=0;this.maximum instanceof a.Integer?t=this.maximum:t=new a.Integer({value:this.maximum}),e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[t]}))}return new a.Sequence({value:e})}toJSON(){let e={base:this.base.toJSON()};return this.minimum!==0&&(typeof this.minimum=="number"?e.minimum=this.minimum:e.minimum=this.minimum.toJSON()),this.maximum!==void 0&&(typeof this.maximum=="number"?e.maximum=this.maximum:e.maximum=this.maximum.toJSON()),e}};Kn.CLASS_NAME="GeneralSubtree";var Ra="permittedSubtrees",Da="excludedSubtrees",Dq=[Ra,Da],tg=class r extends B{constructor(e={}){super(),Ra in e&&(this.permittedSubtrees=u.getParametersValue(e,Ra,r.defaultValues(Ra))),Da in e&&(this.excludedSubtrees=u.getParametersValue(e,Da,r.defaultValues(Da))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ra:case Da:return[];default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({name:t.permittedSubtrees||f,value:Kn.schema()})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Repeated({name:t.excludedSubtrees||f,value:Kn.schema()})]})]})}fromSchema(e){u.clearProps(e,Dq);let t=a.compareSchema(e,e,r.schema({names:{permittedSubtrees:Ra,excludedSubtrees:Da}}));I.assertSchema(t,this.className),Ra in t.result&&(this.permittedSubtrees=Array.from(t.result.permittedSubtrees,s=>new Kn({schema:s}))),Da in t.result&&(this.excludedSubtrees=Array.from(t.result.excludedSubtrees,s=>new Kn({schema:s})))}toSchema(){let e=[];return this.permittedSubtrees&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:Array.from(this.permittedSubtrees,t=>t.toSchema())})),this.excludedSubtrees&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:Array.from(this.excludedSubtrees,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={};return this.permittedSubtrees&&(e.permittedSubtrees=Array.from(this.permittedSubtrees,t=>t.toJSON())),this.excludedSubtrees&&(e.excludedSubtrees=Array.from(this.excludedSubtrees,t=>t.toJSON())),e}};tg.CLASS_NAME="NameConstraints";var li="requireExplicitPolicy",hi="inhibitPolicyMapping",qq=[li,hi],rg=class r extends B{constructor(e={}){super(),li in e&&(this.requireExplicitPolicy=u.getParametersValue(e,li,r.defaultValues(li))),hi in e&&(this.inhibitPolicyMapping=u.getParametersValue(e,hi,r.defaultValues(hi))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case li:return 0;case hi:return 0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Primitive({name:t.requireExplicitPolicy||f,optional:!0,idBlock:{tagClass:3,tagNumber:0}}),new a.Primitive({name:t.inhibitPolicyMapping||f,optional:!0,idBlock:{tagClass:3,tagNumber:1}})]})}fromSchema(e){u.clearProps(e,qq);let t=a.compareSchema(e,e,r.schema({names:{requireExplicitPolicy:li,inhibitPolicyMapping:hi}}));if(I.assertSchema(t,this.className),li in t.result){let s=t.result.requireExplicitPolicy;s.idBlock.tagClass=1,s.idBlock.tagNumber=2;let i=s.toBER(!1),n=a.fromBER(i);I.assert(n,"Integer"),this.requireExplicitPolicy=n.result.valueBlock.valueDec}if(hi in t.result){let s=t.result.inhibitPolicyMapping;s.idBlock.tagClass=1,s.idBlock.tagNumber=2;let i=s.toBER(!1),n=a.fromBER(i);I.assert(n,"Integer"),this.inhibitPolicyMapping=n.result.valueBlock.valueDec}}toSchema(){let e=[];if(li in this){let t=new a.Integer({value:this.requireExplicitPolicy});t.idBlock.tagClass=3,t.idBlock.tagNumber=0,e.push(t)}if(hi in this){let t=new a.Integer({value:this.inhibitPolicyMapping});t.idBlock.tagClass=3,t.idBlock.tagNumber=1,e.push(t)}return new a.Sequence({value:e})}toJSON(){let e={};return li in this&&(e.requireExplicitPolicy=this.requireExplicitPolicy),hi in this&&(e.inhibitPolicyMapping=this.inhibitPolicyMapping),e}};rg.CLASS_NAME="PolicyConstraints";var mp="issuerDomainPolicy",gp="subjectDomainPolicy",jq=[mp,gp],oh=class r extends B{constructor(e={}){super(),this.issuerDomainPolicy=u.getParametersValue(e,mp,r.defaultValues(mp)),this.subjectDomainPolicy=u.getParametersValue(e,gp,r.defaultValues(gp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case mp:return f;case gp:return f;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.issuerDomainPolicy||f}),new a.ObjectIdentifier({name:t.subjectDomainPolicy||f})]})}fromSchema(e){u.clearProps(e,jq);let t=a.compareSchema(e,e,r.schema({names:{issuerDomainPolicy:mp,subjectDomainPolicy:gp}}));I.assertSchema(t,this.className),this.issuerDomainPolicy=t.result.issuerDomainPolicy.valueBlock.toString(),this.subjectDomainPolicy=t.result.subjectDomainPolicy.valueBlock.toString()}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.issuerDomainPolicy}),new a.ObjectIdentifier({value:this.subjectDomainPolicy})]})}toJSON(){return{issuerDomainPolicy:this.issuerDomainPolicy,subjectDomainPolicy:this.subjectDomainPolicy}}};oh.CLASS_NAME="PolicyMapping";var yp="mappings",Mq=[yp],sg=class r extends B{constructor(e={}){super(),this.mappings=u.getParametersValue(e,yp,r.defaultValues(yp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===yp?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.mappings||f,value:oh.schema()})]})}fromSchema(e){u.clearProps(e,Mq);let t=a.compareSchema(e,e,r.schema({names:{mappings:yp}}));I.assertSchema(t,this.className),this.mappings=Array.from(t.result.mappings,s=>new oh({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.mappings,e=>e.toSchema())})}toJSON(){return{mappings:Array.from(this.mappings,e=>e.toJSON())}}};sg.CLASS_NAME="PolicyMappings";var ln="notBefore",hn="notAfter",Lq=[ln,hn],ig=class r extends B{constructor(e={}){super(),ln in e&&(this.notBefore=u.getParametersValue(e,ln,r.defaultValues(ln))),hn in e&&(this.notAfter=u.getParametersValue(e,hn,r.defaultValues(hn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ln:return new Date;case hn:return new Date;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Primitive({name:t.notBefore||f,optional:!0,idBlock:{tagClass:3,tagNumber:0}}),new a.Primitive({name:t.notAfter||f,optional:!0,idBlock:{tagClass:3,tagNumber:1}})]})}fromSchema(e){u.clearProps(e,Lq);let t=a.compareSchema(e,e,r.schema({names:{notBefore:ln,notAfter:hn}}));if(I.assertSchema(t,this.className),ln in t.result){let s=new a.GeneralizedTime;s.fromBuffer(t.result.notBefore.valueBlock.valueHex),this.notBefore=s.toDate()}if(hn in t.result){let s=new a.GeneralizedTime({valueHex:t.result.notAfter.valueBlock.valueHex});s.fromBuffer(t.result.notAfter.valueBlock.valueHex),this.notAfter=s.toDate()}}toSchema(){let e=[];return ln in this&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:0},valueHex:new a.GeneralizedTime({valueDate:this.notBefore}).valueBlock.valueHexView})),hn in this&&e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:1},valueHex:new a.GeneralizedTime({valueDate:this.notAfter}).valueBlock.valueHexView})),new a.Sequence({value:e})}toJSON(){let e={};return this.notBefore&&(e.notBefore=this.notBefore),this.notAfter&&(e.notAfter=this.notAfter),e}};ig.CLASS_NAME="PrivateKeyUsagePeriod";var Bu="id",fi="type",xu="values",Uq=[Bu,fi],Hq=[xu],ch=class r extends B{constructor(e={}){super(),this.id=u.getParametersValue(e,Bu,r.defaultValues(Bu)),fi in e&&(this.type=u.getParametersValue(e,fi,r.defaultValues(fi))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Bu:return f;case fi:return new a.Null;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Bu:return t===f;case fi:return t instanceof a.Null;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.id||f}),new a.Any({name:t.type||f,optional:!0})]})}fromSchema(e){u.clearProps(e,Uq);let t=a.compareSchema(e,e,r.schema({names:{id:Bu,type:fi}}));I.assertSchema(t,this.className),this.id=t.result.id.valueBlock.toString(),fi in t.result&&(this.type=t.result.type)}toSchema(){let e=[new a.ObjectIdentifier({value:this.id})];return fi in this&&e.push(this.type),new a.Sequence({value:e})}toJSON(){let e={id:this.id};return this.type&&(e.type=this.type.toJSON()),e}};ch.CLASS_NAME="QCStatement";var ng=class r extends B{constructor(e={}){super(),this.values=u.getParametersValue(e,xu,r.defaultValues(xu)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===xu?[]:super.defaultValues(e)}static compareWithDefault(e,t){return e===xu?t.length===0:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.values||f,value:ch.schema(t.value||{})})]})}fromSchema(e){u.clearProps(e,Hq);let t=a.compareSchema(e,e,r.schema({names:{values:xu}}));I.assertSchema(t,this.className),this.values=Array.from(t.result.values,s=>new ch({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.values,e=>e.toSchema())})}toJSON(){return{values:Array.from(this.values,e=>e.toJSON())}}};ng.CLASS_NAME="QCStatements";var qa,ss=class{static register(e,t,s){this.namedCurves[e.toLowerCase()]=this.namedCurves[t]={name:e,id:t,size:s}}static find(e){return this.namedCurves[e.toLowerCase()]||null}};qa=ss;ss.namedCurves={};qa.register("P-256","1.2.840.10045.3.1.7",32),qa.register("P-384","1.3.132.0.34",48),qa.register("P-521","1.3.132.0.35",66),qa.register("brainpoolP256r1","1.3.36.3.3.2.8.1.1.7",32),qa.register("brainpoolP384r1","1.3.36.3.3.2.8.1.1.11",48),qa.register("brainpoolP512r1","1.3.36.3.3.2.8.1.1.13",64);var ES="x",kS="y",NS="namedCurve",Dr=class r extends B{constructor(e={}){super(),this.x=u.getParametersValue(e,ES,r.defaultValues(ES)),this.y=u.getParametersValue(e,kS,r.defaultValues(kS)),this.namedCurve=u.getParametersValue(e,NS,r.defaultValues(NS)),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ES:case kS:return ct;case NS:return f;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case ES:case kS:return t instanceof ArrayBuffer&&u.isEqualBuffer(t,r.defaultValues(e));case NS:return typeof t=="string"&&t===r.defaultValues(e);default:return super.defaultValues(e)}}static schema(){return new a.RawData}fromSchema(e){let t=zl.BufferSourceConverter.toUint8Array(e);if(t[0]!==4)throw new Error("Object's schema was not verified against input data for ECPublicKey");let s=ss.find(this.namedCurve);if(!s)throw new Error(`Incorrect curve OID: ${this.namedCurve}`);let i=s.size;if(t.byteLength!==i*2+1)throw new Error("Object's schema was not verified against input data for ECPublicKey");this.namedCurve=s.name,this.x=t.slice(1,i+1).buffer,this.y=t.slice(1+i,i*2+1).buffer}toSchema(){return new a.RawData({data:u.utilConcatBuf(new Uint8Array([4]).buffer,this.x,this.y)})}toJSON(){let e=ss.find(this.namedCurve);return{crv:e?e.name:this.namedCurve,x:u.toBase64(u.arrayBufferToString(this.x),!0,!0,!1),y:u.toBase64(u.arrayBufferToString(this.y),!0,!0,!1)}}fromJSON(e){we.assert("json",e,"crv","x","y");let t=0,s=ss.find(e.crv);s&&(this.namedCurve=s.id,t=s.size);let i=u.stringToArrayBuffer(u.fromBase64(e.x,!0));if(i.byteLength<t){this.x=new ArrayBuffer(t);let o=new Uint8Array(this.x),c=new Uint8Array(i);o.set(c,1)}else this.x=i.slice(0,t);let n=u.stringToArrayBuffer(u.fromBase64(e.y,!0));if(n.byteLength<t){this.y=new ArrayBuffer(t);let o=new Uint8Array(this.y),c=new Uint8Array(n);o.set(c,1)}else this.y=n.slice(0,t)}};Dr.CLASS_NAME="ECPublicKey";var vp="modulus",Sp="publicExponent",Kq=[vp,Sp],uh=class r extends B{constructor(e={}){super(),this.modulus=u.getParametersValue(e,vp,r.defaultValues(vp)),this.publicExponent=u.getParametersValue(e,Sp,r.defaultValues(Sp)),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case vp:return new a.Integer;case Sp:return new a.Integer;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.modulus||f}),new a.Integer({name:t.publicExponent||f})]})}fromSchema(e){u.clearProps(e,Kq);let t=a.compareSchema(e,e,r.schema({names:{modulus:vp,publicExponent:Sp}}));I.assertSchema(t,this.className),this.modulus=t.result.modulus.convertFromDER(256),this.publicExponent=t.result.publicExponent}toSchema(){return new a.Sequence({value:[this.modulus.convertToDER(),this.publicExponent]})}toJSON(){return{n:ie.Convert.ToBase64Url(this.modulus.valueBlock.valueHexView),e:ie.Convert.ToBase64Url(this.publicExponent.valueBlock.valueHexView)}}fromJSON(e){we.assert("json",e,"n","e");let t=u.stringToArrayBuffer(u.fromBase64(e.n,!0));this.modulus=new a.Integer({valueHex:t.slice(0,Math.pow(2,u.nearestPowerOf2(t.byteLength)))}),this.publicExponent=new a.Integer({valueHex:u.stringToArrayBuffer(u.fromBase64(e.e,!0)).slice(0,3)})}};uh.CLASS_NAME="RSAPublicKey";var Ap="algorithm",wp="subjectPublicKey",$q=[Ap,wp],cr=class r extends B{get parsedKey(){if(this._parsedKey===void 0){switch(this.algorithm.algorithmId){case"1.2.840.10045.2.1":if("algorithmParams"in this.algorithm&&this.algorithm.algorithmParams.constructor.blockName()===a.ObjectIdentifier.blockName())try{this._parsedKey=new Dr({namedCurve:this.algorithm.algorithmParams.valueBlock.toString(),schema:this.subjectPublicKey.valueBlock.valueHexView})}catch{}break;case"1.2.840.113549.1.1.1":case"1.2.840.113549.1.1.10":{let e=a.fromBER(this.subjectPublicKey.valueBlock.valueHexView);if(e.offset!==-1)try{this._parsedKey=new uh({schema:e.result})}catch{}}break}this._parsedKey||(this._parsedKey=null)}return this._parsedKey||void 0}set parsedKey(e){this._parsedKey=e}constructor(e={}){super(),this.algorithm=u.getParametersValue(e,Ap,r.defaultValues(Ap)),this.subjectPublicKey=u.getParametersValue(e,wp,r.defaultValues(wp));let t=u.getParametersValue(e,"parsedKey",null);t&&(this.parsedKey=t),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ap:return new b;case wp:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.algorithm||{}),new a.BitString({name:t.subjectPublicKey||f})]})}fromSchema(e){u.clearProps(e,$q);let t=a.compareSchema(e,e,r.schema({names:{algorithm:{names:{blockName:Ap}},subjectPublicKey:wp}}));I.assertSchema(t,this.className),this.algorithm=new b({schema:t.result.algorithm}),this.subjectPublicKey=t.result.subjectPublicKey}toSchema(){return new a.Sequence({value:[this.algorithm.toSchema(),this.subjectPublicKey]})}toJSON(){if(!this.parsedKey)return{algorithm:this.algorithm.toJSON(),subjectPublicKey:this.subjectPublicKey.toJSON()};let e={};switch(this.algorithm.algorithmId){case"1.2.840.10045.2.1":e.kty="EC";break;case"1.2.840.113549.1.1.1":case"1.2.840.113549.1.1.10":e.kty="RSA";break}let t=this.parsedKey.toJSON();return Object.assign(e,t),e}fromJSON(e){if("kty"in e){switch(e.kty.toUpperCase()){case"EC":this.parsedKey=new Dr({json:e}),this.algorithm=new b({algorithmId:"1.2.840.10045.2.1",algorithmParams:new a.ObjectIdentifier({value:this.parsedKey.namedCurve})});break;case"RSA":this.parsedKey=new uh({json:e}),this.algorithm=new b({algorithmId:"1.2.840.113549.1.1.1",algorithmParams:new a.Null});break;default:throw new Error(`Invalid value for "kty" parameter: ${e.kty}`)}this.subjectPublicKey=new a.BitString({valueHex:this.parsedKey.toSchema().toBER(!1)})}}async importKey(e,t=ae(!0)){try{if(!e)throw new Error("Need to provide publicKey input parameter");let s=await t.exportKey("spki",e),i=a.fromBER(s);try{this.fromSchema(i.result)}catch{throw new Error("Error during initializing object from schema")}}catch(s){let i=s instanceof Error?s.message:`${s}`;throw new Error(`Error during exporting public key: ${i}`)}}};cr.CLASS_NAME="PublicKeyInfo";var Ou="version",Tu="privateKey",Qr="namedCurve",fn="publicKey",Fq=[Ou,Tu,Qr,fn],lh=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Ou,r.defaultValues(Ou)),this.privateKey=u.getParametersValue(e,Tu,r.defaultValues(Tu)),Qr in e&&(this.namedCurve=u.getParametersValue(e,Qr,r.defaultValues(Qr))),fn in e&&(this.publicKey=u.getParametersValue(e,fn,r.defaultValues(fn))),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ou:return 1;case Tu:return new a.OctetString;case Qr:return f;case fn:return new Dr;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Ou:return t===r.defaultValues(e);case Tu:return t.isEqual(r.defaultValues(e));case Qr:return t===f;case fn:return Dr.compareWithDefault(Qr,t.namedCurve)&&Dr.compareWithDefault("x",t.x)&&Dr.compareWithDefault("y",t.y);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),new a.OctetString({name:t.privateKey||f}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.ObjectIdentifier({name:t.namedCurve||f})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.BitString({name:t.publicKey||f})]})]})}fromSchema(e){u.clearProps(e,Fq);let t=a.compareSchema(e,e,r.schema({names:{version:Ou,privateKey:Tu,namedCurve:Qr,publicKey:fn}}));if(I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.privateKey=t.result.privateKey,Qr in t.result&&(this.namedCurve=t.result.namedCurve.valueBlock.toString()),fn in t.result){let s={schema:t.result.publicKey.valueBlock.valueHex};Qr in this&&(s.namedCurve=this.namedCurve),this.publicKey=new Dr(s)}}toSchema(){let e=[new a.Integer({value:this.version}),this.privateKey];return this.namedCurve&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.ObjectIdentifier({value:this.namedCurve})]})),this.publicKey&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[new a.BitString({valueHex:this.publicKey.toSchema().toBER(!1)})]})),new a.Sequence({value:e})}toJSON(){if(!this.namedCurve||r.compareWithDefault(Qr,this.namedCurve))throw new Error('Not enough information for making JSON: absent "namedCurve" value');let e=ss.find(this.namedCurve),t={crv:e?e.name:this.namedCurve,d:ie.Convert.ToBase64Url(this.privateKey.valueBlock.valueHexView)};if(this.publicKey){let s=this.publicKey.toJSON();t.x=s.x,t.y=s.y}return t}fromJSON(e){we.assert("json",e,"crv","d");let t=0,s=ss.find(e.crv);s&&(this.namedCurve=s.id,t=s.size);let i=ie.Convert.FromBase64Url(e.d);if(i.byteLength<t){let n=new ArrayBuffer(t),o=new Uint8Array(n),c=new Uint8Array(i);o.set(c,1),this.privateKey=new a.OctetString({valueHex:n})}else this.privateKey=new a.OctetString({valueHex:i.slice(0,t)});e.x&&e.y&&(this.publicKey=new Dr({json:e}))}};lh.CLASS_NAME="ECPrivateKey";var _p="prime",bp="exponent",Cp="coefficient",Jq=[_p,bp,Cp],ko=class r extends B{constructor(e={}){super(),this.prime=u.getParametersValue(e,_p,r.defaultValues(_p)),this.exponent=u.getParametersValue(e,bp,r.defaultValues(bp)),this.coefficient=u.getParametersValue(e,Cp,r.defaultValues(Cp)),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case _p:return new a.Integer;case bp:return new a.Integer;case Cp:return new a.Integer;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.prime||f}),new a.Integer({name:t.exponent||f}),new a.Integer({name:t.coefficient||f})]})}fromSchema(e){u.clearProps(e,Jq);let t=a.compareSchema(e,e,r.schema({names:{prime:_p,exponent:bp,coefficient:Cp}}));I.assertSchema(t,this.className),this.prime=t.result.prime.convertFromDER(),this.exponent=t.result.exponent.convertFromDER(),this.coefficient=t.result.coefficient.convertFromDER()}toSchema(){return new a.Sequence({value:[this.prime.convertToDER(),this.exponent.convertToDER(),this.coefficient.convertToDER()]})}toJSON(){return{r:ie.Convert.ToBase64Url(this.prime.valueBlock.valueHexView),d:ie.Convert.ToBase64Url(this.exponent.valueBlock.valueHexView),t:ie.Convert.ToBase64Url(this.coefficient.valueBlock.valueHexView)}}fromJSON(e){we.assert("json",e,"r","d","r"),this.prime=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.r)}),this.exponent=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.d)}),this.coefficient=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.t)})}};ko.CLASS_NAME="OtherPrimeInfo";var Pp="version",Ip="modulus",Ep="publicExponent",kp="privateExponent",Np="prime1",Bp="prime2",xp="exponent1",Op="exponent2",Tp="coefficient",ja="otherPrimeInfos",Gq=[Pp,Ip,Ep,kp,Np,Bp,xp,Op,Tp,ja],hh=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Pp,r.defaultValues(Pp)),this.modulus=u.getParametersValue(e,Ip,r.defaultValues(Ip)),this.publicExponent=u.getParametersValue(e,Ep,r.defaultValues(Ep)),this.privateExponent=u.getParametersValue(e,kp,r.defaultValues(kp)),this.prime1=u.getParametersValue(e,Np,r.defaultValues(Np)),this.prime2=u.getParametersValue(e,Bp,r.defaultValues(Bp)),this.exponent1=u.getParametersValue(e,xp,r.defaultValues(xp)),this.exponent2=u.getParametersValue(e,Op,r.defaultValues(Op)),this.coefficient=u.getParametersValue(e,Tp,r.defaultValues(Tp)),ja in e&&(this.otherPrimeInfos=u.getParametersValue(e,ja,r.defaultValues(ja))),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Pp:return 0;case Ip:return new a.Integer;case Ep:return new a.Integer;case kp:return new a.Integer;case Np:return new a.Integer;case Bp:return new a.Integer;case xp:return new a.Integer;case Op:return new a.Integer;case Tp:return new a.Integer;case ja:return[];default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),new a.Integer({name:t.modulus||f}),new a.Integer({name:t.publicExponent||f}),new a.Integer({name:t.privateExponent||f}),new a.Integer({name:t.prime1||f}),new a.Integer({name:t.prime2||f}),new a.Integer({name:t.exponent1||f}),new a.Integer({name:t.exponent2||f}),new a.Integer({name:t.coefficient||f}),new a.Sequence({optional:!0,value:[new a.Repeated({name:t.otherPrimeInfosName||f,value:ko.schema(t.otherPrimeInfo||{})})]})]})}fromSchema(e){u.clearProps(e,Gq);let t=a.compareSchema(e,e,r.schema({names:{version:Pp,modulus:Ip,publicExponent:Ep,privateExponent:kp,prime1:Np,prime2:Bp,exponent1:xp,exponent2:Op,coefficient:Tp,otherPrimeInfo:{names:{blockName:ja}}}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.modulus=t.result.modulus.convertFromDER(256),this.publicExponent=t.result.publicExponent,this.privateExponent=t.result.privateExponent.convertFromDER(256),this.prime1=t.result.prime1.convertFromDER(128),this.prime2=t.result.prime2.convertFromDER(128),this.exponent1=t.result.exponent1.convertFromDER(128),this.exponent2=t.result.exponent2.convertFromDER(128),this.coefficient=t.result.coefficient.convertFromDER(128),ja in t.result&&(this.otherPrimeInfos=Array.from(t.result.otherPrimeInfos,s=>new ko({schema:s})))}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),e.push(this.modulus.convertToDER()),e.push(this.publicExponent),e.push(this.privateExponent.convertToDER()),e.push(this.prime1.convertToDER()),e.push(this.prime2.convertToDER()),e.push(this.exponent1.convertToDER()),e.push(this.exponent2.convertToDER()),e.push(this.coefficient.convertToDER()),this.otherPrimeInfos&&e.push(new a.Sequence({value:Array.from(this.otherPrimeInfos,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={n:ie.Convert.ToBase64Url(this.modulus.valueBlock.valueHexView),e:ie.Convert.ToBase64Url(this.publicExponent.valueBlock.valueHexView),d:ie.Convert.ToBase64Url(this.privateExponent.valueBlock.valueHexView),p:ie.Convert.ToBase64Url(this.prime1.valueBlock.valueHexView),q:ie.Convert.ToBase64Url(this.prime2.valueBlock.valueHexView),dp:ie.Convert.ToBase64Url(this.exponent1.valueBlock.valueHexView),dq:ie.Convert.ToBase64Url(this.exponent2.valueBlock.valueHexView),qi:ie.Convert.ToBase64Url(this.coefficient.valueBlock.valueHexView)};return this.otherPrimeInfos&&(e.oth=Array.from(this.otherPrimeInfos,t=>t.toJSON())),e}fromJSON(e){we.assert("json",e,"n","e","d","p","q","dp","dq","qi"),this.modulus=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.n)}),this.publicExponent=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.e)}),this.privateExponent=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.d)}),this.prime1=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.p)}),this.prime2=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.q)}),this.exponent1=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.dp)}),this.exponent2=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.dq)}),this.coefficient=new a.Integer({valueHex:ie.Convert.FromBase64Url(e.qi)}),e.oth&&(this.otherPrimeInfos=Array.from(e.oth,t=>new ko({json:t})))}};hh.CLASS_NAME="RSAPrivateKey";var Vp="version",Rp="privateKeyAlgorithm",Dp="privateKey",Ma="attributes",BS="parsedKey",Wq=[Vp,Rp,Dp,Ma],Ni=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Vp,r.defaultValues(Vp)),this.privateKeyAlgorithm=u.getParametersValue(e,Rp,r.defaultValues(Rp)),this.privateKey=u.getParametersValue(e,Dp,r.defaultValues(Dp)),Ma in e&&(this.attributes=u.getParametersValue(e,Ma,r.defaultValues(Ma))),BS in e&&(this.parsedKey=u.getParametersValue(e,BS,r.defaultValues(BS))),e.json&&this.fromJSON(e.json),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Vp:return 0;case Rp:return new b;case Dp:return new a.OctetString;case Ma:return[];case BS:return{};default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),b.schema(t.privateKeyAlgorithm||{}),new a.OctetString({name:t.privateKey||f}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({name:t.attributes||f,value:Qe.schema()})]})]})}fromSchema(e){u.clearProps(e,Wq);let t=a.compareSchema(e,e,r.schema({names:{version:Vp,privateKeyAlgorithm:{names:{blockName:Rp}},privateKey:Dp,attributes:Ma}}));switch(I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.privateKeyAlgorithm=new b({schema:t.result.privateKeyAlgorithm}),this.privateKey=t.result.privateKey,Ma in t.result&&(this.attributes=Array.from(t.result.attributes,s=>new Qe({schema:s}))),this.privateKeyAlgorithm.algorithmId){case"1.2.840.113549.1.1.1":{let s=a.fromBER(this.privateKey.valueBlock.valueHexView);s.offset!==-1&&(this.parsedKey=new hh({schema:s.result}))}break;case"1.2.840.10045.2.1":if("algorithmParams"in this.privateKeyAlgorithm&&this.privateKeyAlgorithm.algorithmParams instanceof a.ObjectIdentifier){let s=a.fromBER(this.privateKey.valueBlock.valueHexView);s.offset!==-1&&(this.parsedKey=new lh({namedCurve:this.privateKeyAlgorithm.algorithmParams.valueBlock.toString(),schema:s.result}))}break}}toSchema(){let e=[new a.Integer({value:this.version}),this.privateKeyAlgorithm.toSchema(),this.privateKey];return this.attributes&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:Array.from(this.attributes,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){if(!this.parsedKey){let s={version:this.version,privateKeyAlgorithm:this.privateKeyAlgorithm.toJSON(),privateKey:this.privateKey.toJSON()};return this.attributes&&(s.attributes=Array.from(this.attributes,i=>i.toJSON())),s}let e={};switch(this.privateKeyAlgorithm.algorithmId){case"1.2.840.10045.2.1":e.kty="EC";break;case"1.2.840.113549.1.1.1":e.kty="RSA";break}let t=this.parsedKey.toJSON();return Object.assign(e,t),e}fromJSON(e){if("kty"in e){switch(e.kty.toUpperCase()){case"EC":this.parsedKey=new lh({json:e}),this.privateKeyAlgorithm=new b({algorithmId:"1.2.840.10045.2.1",algorithmParams:new a.ObjectIdentifier({value:this.parsedKey.namedCurve})});break;case"RSA":this.parsedKey=new hh({json:e}),this.privateKeyAlgorithm=new b({algorithmId:"1.2.840.113549.1.1.1",algorithmParams:new a.Null});break;default:throw new Error(`Invalid value for "kty" parameter: ${e.kty}`)}this.privateKey=new a.OctetString({valueHex:this.parsedKey.toSchema().toBER(!1)})}}};Ni.CLASS_NAME="PrivateKeyInfo";var Vu="contentType",Ru="contentEncryptionAlgorithm",La="encryptedContent",zq=[Vu,Ru,La],RB=1024,Nt=class r extends B{constructor(e={}){if(super(),this.contentType=u.getParametersValue(e,Vu,r.defaultValues(Vu)),this.contentEncryptionAlgorithm=u.getParametersValue(e,Ru,r.defaultValues(Ru)),La in e&&e.encryptedContent&&(this.encryptedContent=e.encryptedContent,this.encryptedContent.idBlock.tagClass===1&&this.encryptedContent.idBlock.tagNumber===4&&this.encryptedContent.idBlock.isConstructed===!1&&!e.disableSplit)){let t=new a.OctetString({idBlock:{isConstructed:!0},isConstructed:!0}),s=0,i=this.encryptedContent.valueBlock.valueHexView.slice().buffer,n=i.byteLength;for(;n>0;){let o=new Uint8Array(i,s,s+RB>i.byteLength?i.byteLength-s:RB),c=new ArrayBuffer(o.length),l=new Uint8Array(c);for(let h=0;h<l.length;h++)l[h]=o[h];t.valueBlock.value.push(new a.OctetString({valueHex:c})),n-=o.length,s+=o.length}this.encryptedContent=t}e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Vu:return f;case Ru:return new b;case La:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Vu:return t===f;case Ru:return t.algorithmId===f&&!("algorithmParams"in t);case La:return t.isEqual(r.defaultValues(La));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.contentType||f}),b.schema(t.contentEncryptionAlgorithm||{}),new a.Choice({value:[new a.Constructed({name:t.encryptedContent||f,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({value:new a.OctetString})]}),new a.Primitive({name:t.encryptedContent||f,idBlock:{tagClass:3,tagNumber:0}})]})]})}fromSchema(e){u.clearProps(e,zq);let t=a.compareSchema(e,e,r.schema({names:{contentType:Vu,contentEncryptionAlgorithm:{names:{blockName:Ru}},encryptedContent:La}}));I.assertSchema(t,this.className),this.contentType=t.result.contentType.valueBlock.toString(),this.contentEncryptionAlgorithm=new b({schema:t.result.contentEncryptionAlgorithm}),La in t.result&&(this.encryptedContent=t.result.encryptedContent,this.encryptedContent.idBlock.tagClass=1,this.encryptedContent.idBlock.tagNumber=4)}toSchema(){let e={isIndefiniteForm:!1},t=[];if(t.push(new a.ObjectIdentifier({value:this.contentType})),t.push(this.contentEncryptionAlgorithm.toSchema()),this.encryptedContent){e.isIndefiniteForm=this.encryptedContent.idBlock.isConstructed;let s=this.encryptedContent;s.idBlock.tagClass=3,s.idBlock.tagNumber=0,s.lenBlock.isIndefiniteForm=this.encryptedContent.idBlock.isConstructed,t.push(s)}return new a.Sequence({lenBlock:e,value:t})}toJSON(){let e={contentType:this.contentType,contentEncryptionAlgorithm:this.contentEncryptionAlgorithm.toJSON()};return this.encryptedContent&&(e.encryptedContent=this.encryptedContent.toJSON()),e}getEncryptedContent(){if(!this.encryptedContent)throw new Error("Parameter 'encryptedContent' is undefined");return a.OctetString.prototype.getValue.call(this.encryptedContent)}};Nt.CLASS_NAME="EncryptedContentInfo";var dn="hashAlgorithm",pn="maskGenAlgorithm",mn="saltLength",gn="trailerField",Yq=[dn,pn,mn,gn],No=class r extends B{constructor(e={}){super(),this.hashAlgorithm=u.getParametersValue(e,dn,r.defaultValues(dn)),this.maskGenAlgorithm=u.getParametersValue(e,pn,r.defaultValues(pn)),this.saltLength=u.getParametersValue(e,mn,r.defaultValues(mn)),this.trailerField=u.getParametersValue(e,gn,r.defaultValues(gn)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case dn:return new b({algorithmId:"1.3.14.3.2.26",algorithmParams:new a.Null});case pn:return new b({algorithmId:"1.2.840.113549.1.1.8",algorithmParams:new b({algorithmId:"1.3.14.3.2.26",algorithmParams:new a.Null}).toSchema()});case mn:return 20;case gn:return 1;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({idBlock:{tagClass:3,tagNumber:0},optional:!0,value:[b.schema(t.hashAlgorithm||{})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:1},optional:!0,value:[b.schema(t.maskGenAlgorithm||{})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:2},optional:!0,value:[new a.Integer({name:t.saltLength||f})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:3},optional:!0,value:[new a.Integer({name:t.trailerField||f})]})]})}fromSchema(e){u.clearProps(e,Yq);let t=a.compareSchema(e,e,r.schema({names:{hashAlgorithm:{names:{blockName:dn}},maskGenAlgorithm:{names:{blockName:pn}},saltLength:mn,trailerField:gn}}));I.assertSchema(t,this.className),dn in t.result&&(this.hashAlgorithm=new b({schema:t.result.hashAlgorithm})),pn in t.result&&(this.maskGenAlgorithm=new b({schema:t.result.maskGenAlgorithm})),mn in t.result&&(this.saltLength=t.result.saltLength.valueBlock.valueDec),gn in t.result&&(this.trailerField=t.result.trailerField.valueBlock.valueDec)}toSchema(){let e=[];return this.hashAlgorithm.isEqual(r.defaultValues(dn))||e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.hashAlgorithm.toSchema()]})),this.maskGenAlgorithm.isEqual(r.defaultValues(pn))||e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[this.maskGenAlgorithm.toSchema()]})),this.saltLength!==r.defaultValues(mn)&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:[new a.Integer({value:this.saltLength})]})),this.trailerField!==r.defaultValues(gn)&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:3},value:[new a.Integer({value:this.trailerField})]})),new a.Sequence({value:e})}toJSON(){let e={};return this.hashAlgorithm.isEqual(r.defaultValues(dn))||(e.hashAlgorithm=this.hashAlgorithm.toJSON()),this.maskGenAlgorithm.isEqual(r.defaultValues(pn))||(e.maskGenAlgorithm=this.maskGenAlgorithm.toJSON()),this.saltLength!==r.defaultValues(mn)&&(e.saltLength=this.saltLength),this.trailerField!==r.defaultValues(gn)&&(e.trailerField=this.trailerField),e}};No.CLASS_NAME="RSASSAPSSParams";var Du="salt",qp="iterationCount",Zr="keyLength",di="prf",Xq=[Du,qp,Zr,di],Ei=class r extends B{constructor(e={}){super(),this.salt=u.getParametersValue(e,Du,r.defaultValues(Du)),this.iterationCount=u.getParametersValue(e,qp,r.defaultValues(qp)),Zr in e&&(this.keyLength=u.getParametersValue(e,Zr,r.defaultValues(Zr))),di in e&&(this.prf=u.getParametersValue(e,di,r.defaultValues(di))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Du:return{};case qp:return-1;case Zr:return 0;case di:return new b({algorithmId:"1.3.14.3.2.26",algorithmParams:new a.Null});default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Choice({value:[new a.OctetString({name:t.saltPrimitive||f}),b.schema(t.saltConstructed||{})]}),new a.Integer({name:t.iterationCount||f}),new a.Integer({name:t.keyLength||f,optional:!0}),b.schema(t.prf||{names:{optional:!0}})]})}fromSchema(e){u.clearProps(e,Xq);let t=a.compareSchema(e,e,r.schema({names:{saltPrimitive:Du,saltConstructed:{names:{blockName:Du}},iterationCount:qp,keyLength:Zr,prf:{names:{blockName:di,optional:!0}}}}));I.assertSchema(t,this.className),this.salt=t.result.salt,this.iterationCount=t.result.iterationCount.valueBlock.valueDec,Zr in t.result&&(this.keyLength=t.result.keyLength.valueBlock.valueDec),di in t.result&&(this.prf=new b({schema:t.result.prf}))}toSchema(){let e=[];return e.push(this.salt),e.push(new a.Integer({value:this.iterationCount})),Zr in this&&r.defaultValues(Zr)!==this.keyLength&&e.push(new a.Integer({value:this.keyLength})),this.prf&&r.defaultValues(di).isEqual(this.prf)===!1&&e.push(this.prf.toSchema()),new a.Sequence({value:e})}toJSON(){let e={salt:this.salt.toJSON(),iterationCount:this.iterationCount};return Zr in this&&r.defaultValues(Zr)!==this.keyLength&&(e.keyLength=this.keyLength),this.prf&&r.defaultValues(di).isEqual(this.prf)===!1&&(e.prf=this.prf.toJSON()),e}};Ei.CLASS_NAME="PBKDF2Params";var jp="keyDerivationFunc",Mp="encryptionScheme",Qq=[jp,Mp],fh=class r extends B{constructor(e={}){super(),this.keyDerivationFunc=u.getParametersValue(e,jp,r.defaultValues(jp)),this.encryptionScheme=u.getParametersValue(e,Mp,r.defaultValues(Mp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case jp:return new b;case Mp:return new b;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.keyDerivationFunc||{}),b.schema(t.encryptionScheme||{})]})}fromSchema(e){u.clearProps(e,Qq);let t=a.compareSchema(e,e,r.schema({names:{keyDerivationFunc:{names:{blockName:jp}},encryptionScheme:{names:{blockName:Mp}}}}));I.assertSchema(t,this.className),this.keyDerivationFunc=new b({schema:t.result.keyDerivationFunc}),this.encryptionScheme=new b({schema:t.result.encryptionScheme})}toSchema(){return new a.Sequence({value:[this.keyDerivationFunc.toSchema(),this.encryptionScheme.toSchema()]})}toJSON(){return{keyDerivationFunc:this.keyDerivationFunc.toJSON(),encryptionScheme:this.encryptionScheme.toJSON()}}};fh.CLASS_NAME="PBES2Params";var kA=class{constructor(e){this.crypto=e.crypto,this.subtle="webkitSubtle"in e.crypto?e.crypto.webkitSubtle:e.crypto.subtle,this.name=u.getParametersValue(e,"name",f)}async encrypt(...e){return this.subtle.encrypt(...e)}async decrypt(...e){return this.subtle.decrypt(...e)}sign(...e){return this.subtle.sign(...e)}async verify(...e){return this.subtle.verify(...e)}async digest(...e){return this.subtle.digest(...e)}async generateKey(...e){return this.subtle.generateKey(...e)}async deriveKey(...e){return this.subtle.deriveKey(...e)}async deriveBits(...e){return this.subtle.deriveBits(...e)}async wrapKey(...e){return this.subtle.wrapKey(...e)}async unwrapKey(...e){return this.subtle.unwrapKey(...e)}exportKey(...e){return this.subtle.exportKey(...e)}importKey(...e){return this.subtle.importKey(...e)}getRandomValues(e){if(e===null)throw new Error('Argument "array" must not be null');return this.crypto.getRandomValues(e)}};async function DB(r,e,t,s,i){let n,o,c;switch(r.toUpperCase()){case"SHA-1":n=20,o=64,c=uq.sha1;break;case"SHA-256":n=32,o=64,c=j_.sha256;break;case"SHA-384":n=48,o=128,c=j_.sha384;break;case"SHA-512":n=64,o=128,c=j_.sha512;break;default:throw new Error("Unsupported hashing algorithm")}let l=new Uint8Array(t),h=new TextDecoder().decode(t);new TextEncoder().encode(h).some((M,$)=>M!==l[$])&&(h=String.fromCharCode(...l));let m=new Uint8Array(h.length*2+2),p=new DataView(m.buffer);for(let M=0;M<h.length;M++)p.setUint16(M*2,h.charCodeAt(M),!1);p.setUint16(h.length*2,0,!1);let A=new Uint8Array(o).fill(3),w=new Uint8Array(s),C=new Uint8Array(o*Math.ceil(w.length/o)).map((M,$)=>w[$%w.length]),S=new Uint8Array(o*Math.ceil(m.length/o)).map((M,$)=>m[$%m.length]),q=new Uint8Array(C.length+S.length);q.set(C),q.set(S,C.length);let L=Math.ceil((e>>3)/n),j=[];for(let M=0;M<L;M++){let $=new Uint8Array(A.length+q.length);$.set(A),$.set(q,A.length);for(let be=0;be<i;be++)$=c($);let te=new Uint8Array(o).map((be,st)=>$[st%$.length]),Ce=Math.ceil(w.length/o)+Math.ceil(m.length/o),oe=[];for(let be=0;be<Ce;be++){let st=Array.from(q.slice(be*o,(be+1)*o)),Pe=511;for(let Be=te.length-1;Be>=0;Be--)Pe>>=8,Pe+=te[Be]+(st[Be]||0),st[Be]=Pe&255;oe.push(...st)}q=new Uint8Array(oe),j.push(...$)}return new Uint8Array(j.slice(0,e>>3)).buffer}function Sx(r){let e=typeof r=="string"?{name:r}:r;return"hash"in e?{...e,hash:Sx(e.hash)}:e}var Do=class extends kA{async importKey(e,t,s,i,n){var o,c,l,h,d,m;let p={},A=Sx(s);switch(e.toLowerCase()){case"raw":return this.subtle.importKey("raw",t,s,i,n);case"spki":{let w=a.fromBER(ie.BufferSourceConverter.toArrayBuffer(t));I.assert(w,"keyData");let C=new cr;try{C.fromSchema(w.result)}catch{throw new xe("Incorrect keyData")}switch(A.name.toUpperCase()){case"RSA-PSS":{if(n=["verify"],p.kty="RSA",p.ext=i,p.key_ops=n,!["1.2.840.113549.1.1.1","1.2.840.113549.1.1.10"].includes(C.algorithm.algorithmId))throw new Error(`Incorrect public key algorithm: ${C.algorithm.algorithmId}`);if(!A.hash)throw new we("hash","algorithm.hash","Incorrect hash algorithm: Hash algorithm is missed");switch(A.hash.name.toUpperCase()){case"SHA-1":p.alg="PS1";break;case"SHA-256":p.alg="PS256";break;case"SHA-384":p.alg="PS384";break;case"SHA-512":p.alg="PS512";break;default:throw new Error(`Incorrect hash algorithm: ${A.hash.name.toUpperCase()}`)}let S=C.toJSON();Object.assign(p,S)}break;case"RSASSA-PKCS1-V1_5":{if(n=["verify"],p.kty="RSA",p.ext=i,p.key_ops=n,C.algorithm.algorithmId!=="1.2.840.113549.1.1.1")throw new Error(`Incorrect public key algorithm: ${C.algorithm.algorithmId}`);if(!A.hash)throw new we("hash","algorithm.hash","Incorrect hash algorithm: Hash algorithm is missed");switch(A.hash.name.toUpperCase()){case"SHA-1":p.alg="RS1";break;case"SHA-256":p.alg="RS256";break;case"SHA-384":p.alg="RS384";break;case"SHA-512":p.alg="RS512";break;default:throw new Error(`Incorrect hash algorithm: ${A.hash.name.toUpperCase()}`)}let S=C.toJSON();Object.assign(p,S)}break;case"ECDSA":n=["verify"];case"ECDH":{if(p={kty:"EC",ext:i,key_ops:n},C.algorithm.algorithmId!=="1.2.840.10045.2.1")throw new Error(`Incorrect public key algorithm: ${C.algorithm.algorithmId}`);let S=C.toJSON();Object.assign(p,S)}break;case"RSA-OAEP":{if(p.kty="RSA",p.ext=i,p.key_ops=n,this.name.toLowerCase()==="safari")p.alg="RSA-OAEP";else{if(!A.hash)throw new we("hash","algorithm.hash","Incorrect hash algorithm: Hash algorithm is missed");switch(A.hash.name.toUpperCase()){case"SHA-1":p.alg="RSA-OAEP";break;case"SHA-256":p.alg="RSA-OAEP-256";break;case"SHA-384":p.alg="RSA-OAEP-384";break;case"SHA-512":p.alg="RSA-OAEP-512";break;default:throw new Error(`Incorrect hash algorithm: ${A.hash.name.toUpperCase()}`)}}let S=C.toJSON();Object.assign(p,S)}break;case"RSAES-PKCS1-V1_5":{p.kty="RSA",p.ext=i,p.key_ops=n,p.alg="PS1";let S=C.toJSON();Object.assign(p,S)}break;default:throw new Error(`Incorrect algorithm name: ${A.name.toUpperCase()}`)}}break;case"pkcs8":{let w=new Ni,C=a.fromBER(ie.BufferSourceConverter.toArrayBuffer(t));I.assert(C,"keyData");try{w.fromSchema(C.result)}catch{throw new Error("Incorrect keyData")}if(!w.parsedKey)throw new Error("Incorrect keyData");switch(A.name.toUpperCase()){case"RSA-PSS":switch((o=A.hash)===null||o===void 0?void 0:o.name.toUpperCase()){case"SHA-1":p.alg="PS1";break;case"SHA-256":p.alg="PS256";break;case"SHA-384":p.alg="PS384";break;case"SHA-512":p.alg="PS512";break;default:throw new Error(`Incorrect hash algorithm: ${(c=A.hash)===null||c===void 0?void 0:c.name.toUpperCase()}`)}case"RSASSA-PKCS1-V1_5":{if(n=["sign"],p.kty="RSA",p.ext=i,p.key_ops=n,w.privateKeyAlgorithm.algorithmId!=="1.2.840.113549.1.1.1")throw new Error(`Incorrect private key algorithm: ${w.privateKeyAlgorithm.algorithmId}`);if(!("alg"in p))switch((l=A.hash)===null||l===void 0?void 0:l.name.toUpperCase()){case"SHA-1":p.alg="RS1";break;case"SHA-256":p.alg="RS256";break;case"SHA-384":p.alg="RS384";break;case"SHA-512":p.alg="RS512";break;default:throw new Error(`Incorrect hash algorithm: ${(h=A.hash)===null||h===void 0?void 0:h.name.toUpperCase()}`)}let S=w.toJSON();Object.assign(p,S)}break;case"ECDSA":n=["sign"];case"ECDH":{if(p={kty:"EC",ext:i,key_ops:n},w.privateKeyAlgorithm.algorithmId!=="1.2.840.10045.2.1")throw new Error(`Incorrect algorithm: ${w.privateKeyAlgorithm.algorithmId}`);let S=w.toJSON();Object.assign(p,S)}break;case"RSA-OAEP":{if(p.kty="RSA",p.ext=i,p.key_ops=n,this.name.toLowerCase()==="safari")p.alg="RSA-OAEP";else switch((d=A.hash)===null||d===void 0?void 0:d.name.toUpperCase()){case"SHA-1":p.alg="RSA-OAEP";break;case"SHA-256":p.alg="RSA-OAEP-256";break;case"SHA-384":p.alg="RSA-OAEP-384";break;case"SHA-512":p.alg="RSA-OAEP-512";break;default:throw new Error(`Incorrect hash algorithm: ${(m=A.hash)===null||m===void 0?void 0:m.name.toUpperCase()}`)}let S=w.toJSON();Object.assign(p,S)}break;case"RSAES-PKCS1-V1_5":{n=["decrypt"],p.kty="RSA",p.ext=i,p.key_ops=n,p.alg="PS1";let S=w.toJSON();Object.assign(p,S)}break;default:throw new Error(`Incorrect algorithm name: ${A.name.toUpperCase()}`)}}break;case"jwk":p=t;break;default:throw new Error(`Incorrect format: ${e}`)}if(this.name.toLowerCase()==="safari")try{return this.subtle.importKey("jwk",u.stringToArrayBuffer(JSON.stringify(p)),s,i,n)}catch{return this.subtle.importKey("jwk",p,s,i,n)}return this.subtle.importKey("jwk",p,s,i,n)}async exportKey(e,t){let s=await this.subtle.exportKey("jwk",t);switch(this.name.toLowerCase()==="safari"&&s instanceof ArrayBuffer&&(s=JSON.parse(u.arrayBufferToString(s))),e.toLowerCase()){case"raw":return this.subtle.exportKey("raw",t);case"spki":{let i=new cr;try{i.fromJSON(s)}catch{throw new Error("Incorrect key data")}return i.toSchema().toBER(!1)}case"pkcs8":{let i=new Ni;try{i.fromJSON(s)}catch{throw new Error("Incorrect key data")}return i.toSchema().toBER(!1)}case"jwk":return s;default:throw new Error(`Incorrect format: ${e}`)}}async convert(e,t,s,i,n,o){if(e.toLowerCase()===t.toLowerCase())return s;let c=await this.importKey(e,s,i,n,o);return this.exportKey(t,c)}getAlgorithmByOID(e,t=!1,s){switch(e){case"1.2.840.113549.1.1.1":return{name:"RSAES-PKCS1-v1_5"};case"1.2.840.113549.1.1.5":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-1"}};case"1.2.840.113549.1.1.11":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case"1.2.840.113549.1.1.12":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-384"}};case"1.2.840.113549.1.1.13":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-512"}};case"1.2.840.113549.1.1.10":return{name:"RSA-PSS"};case"1.2.840.113549.1.1.7":return{name:"RSA-OAEP"};case"1.2.840.10045.2.1":case"1.2.840.10045.4.1":return{name:"ECDSA",hash:{name:"SHA-1"}};case"1.2.840.10045.4.3.2":return{name:"ECDSA",hash:{name:"SHA-256"}};case"1.2.840.10045.4.3.3":return{name:"ECDSA",hash:{name:"SHA-384"}};case"1.2.840.10045.4.3.4":return{name:"ECDSA",hash:{name:"SHA-512"}};case"1.3.133.16.840.63.0.2":return{name:"ECDH",kdf:"SHA-1"};case"1.3.132.1.11.1":return{name:"ECDH",kdf:"SHA-256"};case"1.3.132.1.11.2":return{name:"ECDH",kdf:"SHA-384"};case"1.3.132.1.11.3":return{name:"ECDH",kdf:"SHA-512"};case"2.16.840.1.101.3.4.1.2":return{name:"AES-CBC",length:128};case"2.16.840.1.101.3.4.1.22":return{name:"AES-CBC",length:192};case"2.16.840.1.101.3.4.1.42":return{name:"AES-CBC",length:256};case"2.16.840.1.101.3.4.1.6":return{name:"AES-GCM",length:128};case"2.16.840.1.101.3.4.1.26":return{name:"AES-GCM",length:192};case"2.16.840.1.101.3.4.1.46":return{name:"AES-GCM",length:256};case"2.16.840.1.101.3.4.1.4":return{name:"AES-CFB",length:128};case"2.16.840.1.101.3.4.1.24":return{name:"AES-CFB",length:192};case"2.16.840.1.101.3.4.1.44":return{name:"AES-CFB",length:256};case"2.16.840.1.101.3.4.1.5":return{name:"AES-KW",length:128};case"2.16.840.1.101.3.4.1.25":return{name:"AES-KW",length:192};case"2.16.840.1.101.3.4.1.45":return{name:"AES-KW",length:256};case"1.2.840.113549.2.7":return{name:"HMAC",hash:{name:"SHA-1"}};case"1.2.840.113549.2.9":return{name:"HMAC",hash:{name:"SHA-256"}};case"1.2.840.113549.2.10":return{name:"HMAC",hash:{name:"SHA-384"}};case"1.2.840.113549.2.11":return{name:"HMAC",hash:{name:"SHA-512"}};case"1.2.840.113549.1.9.16.3.5":return{name:"DH"};case"1.3.14.3.2.26":return{name:"SHA-1"};case"2.16.840.1.101.3.4.2.1":return{name:"SHA-256"};case"2.16.840.1.101.3.4.2.2":return{name:"SHA-384"};case"2.16.840.1.101.3.4.2.3":return{name:"SHA-512"};case"1.2.840.113549.1.5.12":return{name:"PBKDF2"};case"1.2.840.10045.3.1.7":return{name:"P-256"};case"1.3.132.0.34":return{name:"P-384"};case"1.3.132.0.35":return{name:"P-521"}}if(t)throw new Error(`Unsupported algorithm identifier ${s?`for ${s} `:f}: ${e}`);return{}}getOIDByAlgorithm(e,t=!1,s){let i=f;switch(e.name.toUpperCase()){case"RSAES-PKCS1-V1_5":i="1.2.840.113549.1.1.1";break;case"RSASSA-PKCS1-V1_5":switch(e.hash.name.toUpperCase()){case"SHA-1":i="1.2.840.113549.1.1.5";break;case"SHA-256":i="1.2.840.113549.1.1.11";break;case"SHA-384":i="1.2.840.113549.1.1.12";break;case"SHA-512":i="1.2.840.113549.1.1.13";break}break;case"RSA-PSS":i="1.2.840.113549.1.1.10";break;case"RSA-OAEP":i="1.2.840.113549.1.1.7";break;case"ECDSA":switch(e.hash.name.toUpperCase()){case"SHA-1":i="1.2.840.10045.4.1";break;case"SHA-256":i="1.2.840.10045.4.3.2";break;case"SHA-384":i="1.2.840.10045.4.3.3";break;case"SHA-512":i="1.2.840.10045.4.3.4";break}break;case"ECDH":switch(e.kdf.toUpperCase()){case"SHA-1":i="1.3.133.16.840.63.0.2";break;case"SHA-256":i="1.3.132.1.11.1";break;case"SHA-384":i="1.3.132.1.11.2";break;case"SHA-512":i="1.3.132.1.11.3";break}break;case"AES-CTR":break;case"AES-CBC":switch(e.length){case 128:i="2.16.840.1.101.3.4.1.2";break;case 192:i="2.16.840.1.101.3.4.1.22";break;case 256:i="2.16.840.1.101.3.4.1.42";break}break;case"AES-CMAC":break;case"AES-GCM":switch(e.length){case 128:i="2.16.840.1.101.3.4.1.6";break;case 192:i="2.16.840.1.101.3.4.1.26";break;case 256:i="2.16.840.1.101.3.4.1.46";break}break;case"AES-CFB":switch(e.length){case 128:i="2.16.840.1.101.3.4.1.4";break;case 192:i="2.16.840.1.101.3.4.1.24";break;case 256:i="2.16.840.1.101.3.4.1.44";break}break;case"AES-KW":switch(e.length){case 128:i="2.16.840.1.101.3.4.1.5";break;case 192:i="2.16.840.1.101.3.4.1.25";break;case 256:i="2.16.840.1.101.3.4.1.45";break}break;case"HMAC":switch(e.hash.name.toUpperCase()){case"SHA-1":i="1.2.840.113549.2.7";break;case"SHA-256":i="1.2.840.113549.2.9";break;case"SHA-384":i="1.2.840.113549.2.10";break;case"SHA-512":i="1.2.840.113549.2.11";break}break;case"DH":i="1.2.840.113549.1.9.16.3.5";break;case"SHA-1":i="1.3.14.3.2.26";break;case"SHA-256":i="2.16.840.1.101.3.4.2.1";break;case"SHA-384":i="2.16.840.1.101.3.4.2.2";break;case"SHA-512":i="2.16.840.1.101.3.4.2.3";break;case"CONCAT":break;case"HKDF":break;case"PBKDF2":i="1.2.840.113549.1.5.12";break;case"P-256":i="1.2.840.10045.3.1.7";break;case"P-384":i="1.3.132.0.34";break;case"P-521":i="1.3.132.0.35";break}if(!i&&t)throw new Error(`Unsupported algorithm ${s?`for ${s} `:f}: ${e.name}`);return i}getAlgorithmParameters(e,t){let s={algorithm:{},usages:[]};switch(e.toUpperCase()){case"RSAES-PKCS1-V1_5":case"RSASSA-PKCS1-V1_5":switch(t.toLowerCase()){case"generatekey":s={algorithm:{name:"RSASSA-PKCS1-v1_5",modulusLength:2048,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},usages:["sign","verify"]};break;case"verify":case"sign":case"importkey":s={algorithm:{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},usages:["verify"]};break;default:return{algorithm:{name:"RSASSA-PKCS1-v1_5"},usages:[]}}break;case"RSA-PSS":switch(t.toLowerCase()){case"sign":case"verify":s={algorithm:{name:"RSA-PSS",hash:{name:"SHA-1"},saltLength:20},usages:["sign","verify"]};break;case"generatekey":s={algorithm:{name:"RSA-PSS",modulusLength:2048,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-1"}},usages:["sign","verify"]};break;case"importkey":s={algorithm:{name:"RSA-PSS",hash:{name:"SHA-1"}},usages:["verify"]};break;default:return{algorithm:{name:"RSA-PSS"},usages:[]}}break;case"RSA-OAEP":switch(t.toLowerCase()){case"encrypt":case"decrypt":s={algorithm:{name:"RSA-OAEP"},usages:["encrypt","decrypt"]};break;case"generatekey":s={algorithm:{name:"RSA-OAEP",modulusLength:2048,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;case"importkey":s={algorithm:{name:"RSA-OAEP",hash:{name:"SHA-256"}},usages:["encrypt"]};break;default:return{algorithm:{name:"RSA-OAEP"},usages:[]}}break;case"ECDSA":switch(t.toLowerCase()){case"generatekey":s={algorithm:{name:"ECDSA",namedCurve:"P-256"},usages:["sign","verify"]};break;case"importkey":s={algorithm:{name:"ECDSA",namedCurve:"P-256"},usages:["verify"]};break;case"verify":case"sign":s={algorithm:{name:"ECDSA",hash:{name:"SHA-256"}},usages:["sign"]};break;default:return{algorithm:{name:"ECDSA"},usages:[]}}break;case"ECDH":switch(t.toLowerCase()){case"exportkey":case"importkey":case"generatekey":s={algorithm:{name:"ECDH",namedCurve:"P-256"},usages:["deriveKey","deriveBits"]};break;case"derivekey":case"derivebits":s={algorithm:{name:"ECDH",namedCurve:"P-256",public:[]},usages:["encrypt","decrypt"]};break;default:return{algorithm:{name:"ECDH"},usages:[]}}break;case"AES-CTR":switch(t.toLowerCase()){case"importkey":case"exportkey":case"generatekey":s={algorithm:{name:"AES-CTR",length:256},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;case"decrypt":case"encrypt":s={algorithm:{name:"AES-CTR",counter:new Uint8Array(16),length:10},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;default:return{algorithm:{name:"AES-CTR"},usages:[]}}break;case"AES-CBC":switch(t.toLowerCase()){case"importkey":case"exportkey":case"generatekey":s={algorithm:{name:"AES-CBC",length:256},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;case"decrypt":case"encrypt":s={algorithm:{name:"AES-CBC",iv:this.getRandomValues(new Uint8Array(16))},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;default:return{algorithm:{name:"AES-CBC"},usages:[]}}break;case"AES-GCM":switch(t.toLowerCase()){case"importkey":case"exportkey":case"generatekey":s={algorithm:{name:"AES-GCM",length:256},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;case"decrypt":case"encrypt":s={algorithm:{name:"AES-GCM",iv:this.getRandomValues(new Uint8Array(16))},usages:["encrypt","decrypt","wrapKey","unwrapKey"]};break;default:return{algorithm:{name:"AES-GCM"},usages:[]}}break;case"AES-KW":switch(t.toLowerCase()){case"importkey":case"exportkey":case"generatekey":case"wrapkey":case"unwrapkey":s={algorithm:{name:"AES-KW",length:256},usages:["wrapKey","unwrapKey"]};break;default:return{algorithm:{name:"AES-KW"},usages:[]}}break;case"HMAC":switch(t.toLowerCase()){case"sign":case"verify":s={algorithm:{name:"HMAC"},usages:["sign","verify"]};break;case"importkey":case"exportkey":case"generatekey":s={algorithm:{name:"HMAC",length:32,hash:{name:"SHA-256"}},usages:["sign","verify"]};break;default:return{algorithm:{name:"HMAC"},usages:[]}}break;case"HKDF":if(t.toLowerCase()==="derivekey")s={algorithm:{name:"HKDF",hash:"SHA-256",salt:new Uint8Array([]),info:new Uint8Array([])},usages:["encrypt","decrypt"]};else return{algorithm:{name:"HKDF"},usages:[]};break;case"PBKDF2":if(t.toLowerCase()==="derivekey")s={algorithm:{name:"PBKDF2",hash:{name:"SHA-256"},salt:new Uint8Array([]),iterations:1e4},usages:["encrypt","decrypt"]};else return{algorithm:{name:"PBKDF2"},usages:[]};break}return s}getHashAlgorithm(e){let t=f;switch(e.algorithmId){case"1.2.840.10045.4.1":case"1.2.840.113549.1.1.5":t="SHA-1";break;case"1.2.840.10045.4.3.2":case"1.2.840.113549.1.1.11":t="SHA-256";break;case"1.2.840.10045.4.3.3":case"1.2.840.113549.1.1.12":t="SHA-384";break;case"1.2.840.10045.4.3.4":case"1.2.840.113549.1.1.13":t="SHA-512";break;case"1.2.840.113549.1.1.10":try{let s=new No({schema:e.algorithmParams});if(s.hashAlgorithm){let i=this.getAlgorithmByOID(s.hashAlgorithm.algorithmId);if("name"in i)t=i.name;else return f}else t="SHA-1"}catch{}break}return t}async encryptEncryptedContentInfo(e){we.assert(e,"password","contentEncryptionAlgorithm","hmacHashAlgorithm","iterationCount","contentToEncrypt","contentToEncrypt","contentType");let t=this.getOIDByAlgorithm(e.contentEncryptionAlgorithm,!0,"contentEncryptionAlgorithm"),s=this.getOIDByAlgorithm({name:"PBKDF2"},!0,"PBKDF2"),i=this.getOIDByAlgorithm({name:"HMAC",hash:{name:e.hmacHashAlgorithm}},!0,"hmacHashAlgorithm"),n=new ArrayBuffer(16),o=new Uint8Array(n);this.getRandomValues(o);let c=new ArrayBuffer(64),l=new Uint8Array(c);this.getRandomValues(l);let h=new Uint8Array(e.contentToEncrypt),d=new Ei({salt:new a.OctetString({valueHex:c}),iterationCount:e.iterationCount,prf:new b({algorithmId:i,algorithmParams:new a.Null})}),m=new Uint8Array(e.password),p=await this.importKey("raw",m,"PBKDF2",!1,["deriveKey"]),A=await this.deriveKey({name:"PBKDF2",hash:{name:e.hmacHashAlgorithm},salt:l,iterations:e.iterationCount},p,e.contentEncryptionAlgorithm,!1,["encrypt"]),w=await this.encrypt({name:e.contentEncryptionAlgorithm.name,iv:o},A,h),C=new fh({keyDerivationFunc:new b({algorithmId:s,algorithmParams:d.toSchema()}),encryptionScheme:new b({algorithmId:t,algorithmParams:new a.OctetString({valueHex:n})})});return new Nt({contentType:e.contentType,contentEncryptionAlgorithm:new b({algorithmId:"1.2.840.113549.1.5.13",algorithmParams:C.toSchema()}),encryptedContent:new a.OctetString({valueHex:w})})}async decryptEncryptedContentInfo(e){if(we.assert(e,"password","encryptedContentInfo"),e.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId!=="1.2.840.113549.1.5.13")throw new Error(`Unknown "contentEncryptionAlgorithm": ${e.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId}`);let t;try{t=new fh({schema:e.encryptedContentInfo.contentEncryptionAlgorithm.algorithmParams})}catch{throw new Error('Incorrectly encoded "pbes2Parameters"')}let s;try{s=new Ei({schema:t.keyDerivationFunc.algorithmParams})}catch{throw new Error('Incorrectly encoded "pbkdf2Params"')}let i=this.getAlgorithmByOID(t.encryptionScheme.algorithmId,!0),n=t.encryptionScheme.algorithmParams.valueBlock.valueHex,o=new Uint8Array(n),c=s.salt.valueBlock.valueHex,l=new Uint8Array(c),h=s.iterationCount,d="SHA-1";s.prf&&(d=this.getAlgorithmByOID(s.prf.algorithmId,!0).hash.name);let m=await this.importKey("raw",e.password,"PBKDF2",!1,["deriveKey"]),p=await this.deriveKey({name:"PBKDF2",hash:{name:d},salt:l,iterations:h},m,i,!1,["decrypt"]),A=e.encryptedContentInfo.getEncryptedContent();return this.decrypt({name:i.name,iv:o},p,A)}async stampDataWithPassword(e){if(!(e instanceof Object))throw new Error('Parameters must have type "Object"');we.assert(e,"password","hashAlgorithm","iterationCount","salt","contentToStamp");let t;switch(e.hashAlgorithm.toLowerCase()){case"sha-1":t=160;break;case"sha-256":t=256;break;case"sha-384":t=384;break;case"sha-512":t=512;break;default:throw new Error(`Incorrect "parameters.hashAlgorithm" parameter: ${e.hashAlgorithm}`)}let s={name:"HMAC",length:t,hash:{name:e.hashAlgorithm}},i=await DB(e.hashAlgorithm,t,e.password,e.salt,e.iterationCount),n=await this.importKey("raw",new Uint8Array(i),s,!1,["sign"]);return this.sign(s,n,new Uint8Array(e.contentToStamp))}async verifyDataStampedWithPassword(e){we.assert(e,"password","hashAlgorithm","salt","iterationCount","contentToVerify","signatureToVerify");let t=0;switch(e.hashAlgorithm.toLowerCase()){case"sha-1":t=160;break;case"sha-256":t=256;break;case"sha-384":t=384;break;case"sha-512":t=512;break;default:throw new Error(`Incorrect "parameters.hashAlgorithm" parameter: ${e.hashAlgorithm}`)}let s={name:"HMAC",length:t,hash:{name:e.hashAlgorithm}},i=await DB(e.hashAlgorithm,t,e.password,e.salt,e.iterationCount),n=await this.importKey("raw",new Uint8Array(i),s,!1,["verify"]);return this.verify(s,n,new Uint8Array(e.signatureToVerify),new Uint8Array(e.contentToVerify))}async getSignatureParameters(e,t="SHA-1"){this.getOIDByAlgorithm({name:t},!0,"hashAlgorithm");let s=new b,i=this.getAlgorithmParameters(e.algorithm.name,"sign");if(!Object.keys(i.algorithm).length)throw new Error("Parameter 'algorithm' is empty");let n=i.algorithm;switch("hash"in e.algorithm&&e.algorithm.hash&&e.algorithm.hash.name?n.hash.name=e.algorithm.hash.name:n.hash.name=t,e.algorithm.name.toUpperCase()){case"RSASSA-PKCS1-V1_5":case"ECDSA":s.algorithmId=this.getOIDByAlgorithm(n,!0);break;case"RSA-PSS":{switch(n.hash.name.toUpperCase()){case"SHA-256":n.saltLength=32;break;case"SHA-384":n.saltLength=48;break;case"SHA-512":n.saltLength=64;break}let o={};if(n.hash.name.toUpperCase()!=="SHA-1"){let l=this.getOIDByAlgorithm({name:n.hash.name},!0,"hashAlgorithm");o.hashAlgorithm=new b({algorithmId:l,algorithmParams:new a.Null}),o.maskGenAlgorithm=new b({algorithmId:"1.2.840.113549.1.1.8",algorithmParams:o.hashAlgorithm.toSchema()})}n.saltLength!==20&&(o.saltLength=n.saltLength);let c=new No(o);s.algorithmId="1.2.840.113549.1.1.10",s.algorithmParams=c.toSchema()}break;default:throw new Error(`Unsupported signature algorithm: ${e.algorithm.name}`)}return{signatureAlgorithm:s,parameters:i}}async signWithPrivateKey(e,t,s){let i=await this.sign(s.algorithm,t,e);return s.algorithm.name==="ECDSA"?wx(i):i}fillPublicKeyParameters(e,t){let s={},i=this.getHashAlgorithm(t);if(i===f)throw new Error(`Unsupported signature algorithm: ${t.algorithmId}`);let n;t.algorithmId==="1.2.840.113549.1.1.10"?n=t.algorithmId:n=e.algorithm.algorithmId;let o=this.getAlgorithmByOID(n,!0);if(s.algorithm=this.getAlgorithmParameters(o.name,"importKey"),"hash"in s.algorithm.algorithm&&(s.algorithm.algorithm.hash.name=i),o.name==="ECDSA"){let c=e.algorithm;if(!c.algorithmParams)throw new Error("Algorithm parameters for ECDSA public key are missed");let l=c.algorithmParams;if("idBlock"in c.algorithmParams&&!(l.idBlock.tagClass===1&&l.idBlock.tagNumber===6))throw new Error("Incorrect type for ECDSA public key parameters");let h=this.getAlgorithmByOID(l.valueBlock.toString(),!0);s.algorithm.algorithm.namedCurve=h.name}return s}async getPublicKey(e,t,s){s||(s=this.fillPublicKeyParameters(e,t));let i=e.toSchema().toBER(!1);return this.importKey("spki",i,s.algorithm.algorithm,!0,s.algorithm.usages)}async verifyWithPublicKey(e,t,s,i,n){let o;if(n){let h={},d;i.algorithmId==="1.2.840.113549.1.1.10"?d=i.algorithmId:d=s.algorithm.algorithmId;let m=this.getAlgorithmByOID(d,!0);if(h.algorithm=this.getAlgorithmParameters(m.name,"importKey"),"hash"in h.algorithm.algorithm&&(h.algorithm.algorithm.hash.name=n),m.name==="ECDSA"){let p=!1;if("algorithmParams"in s.algorithm&&"idBlock"in s.algorithm.algorithmParams&&s.algorithm.algorithmParams.idBlock.tagClass===1&&s.algorithm.algorithmParams.idBlock.tagNumber===6&&(p=!0),p===!1)throw new Error("Incorrect type for ECDSA public key parameters");let A=this.getAlgorithmByOID(s.algorithm.algorithmParams.valueBlock.toString(),!0);h.algorithm.algorithm.namedCurve=A.name}o=await this.getPublicKey(s,null,h)}else{if(n=this.getHashAlgorithm(i),!n)throw new Error(`Unsupported signature algorithm: ${i.algorithmId}`);o=await this.getPublicKey(s,i)}let c=this.getAlgorithmParameters(o.algorithm.name,"verify");"hash"in c.algorithm&&(c.algorithm.hash.name=n);let l=t.valueBlock.valueHexView;if(o.algorithm.name==="ECDSA"){let h=ss.find(o.algorithm.namedCurve);if(!h)throw new Error("Unsupported named curve in use");let d=a.fromBER(l);I.assert(d,"Signature value"),l=_x(d.result,h.size)}if(o.algorithm.name==="RSA-PSS"){let h=new No({schema:i.algorithmParams});"saltLength"in h?c.algorithm.saltLength=h.saltLength:c.algorithm.saltLength=20;let d="SHA-1";"hashAlgorithm"in h&&(d=this.getAlgorithmByOID(h.hashAlgorithm.algorithmId,!0).name),c.algorithm.hash.name=d}return this.verify(c.algorithm,o,l,e)}};g.engine={name:"none",crypto:null};function qB(r){return!!(r&&typeof r=="object"&&"crypto"in r)}function Sb(r,...e){let t=null;if(e.length<2)e.length?t=e[0]:t=typeof self<"u"&&self.crypto?new Do({name:"browser",crypto:self.crypto}):null;else{let s=e[0],i=e[1];qB(i)?t=i:qB(s)?t=s:"subtle"in s&&"getRandomValues"in s&&(t=new Do({crypto:s}))}if(typeof process<"u"&&"pid"in process&&typeof global<"u"&&typeof window>"u"){if(typeof global[process.pid]>"u")global[process.pid]={};else if(typeof global[process.pid]!="object")throw new Error(`Name global.${process.pid} already exists and it is not an object`);if(typeof global[process.pid].pkijs>"u")global[process.pid].pkijs={};else if(typeof global[process.pid].pkijs!="object")throw new Error(`Name global.${process.pid}.pkijs already exists and it is not an object`);global[process.pid].pkijs.engine={name:r,crypto:t}}else g.engine={name:r,crypto:t}}function Ax(){if(typeof process<"u"&&"pid"in process&&typeof global<"u"&&typeof window>"u"){let r;try{r=global[process.pid].pkijs.engine}catch{throw new Error("Please call 'setEngine' before call to 'getEngine'")}return r}return g.engine}function ae(r=!1){let e=Ax();if(!e.crypto&&r)throw new Error("Unable to create WebCrypto object");return e.crypto}function Zq(r){return ae(!0).getRandomValues(r)}function ej(r,e,t){return ae(!0).getOIDByAlgorithm(r,e,t)}function tj(r,e){return ae(!0).getAlgorithmParameters(r,e)}function wx(r){if(r.byteLength%2!==0)return ct;let e=r.byteLength/2,t=new ArrayBuffer(e);new Uint8Array(t).set(new Uint8Array(r,0,e));let i=new a.Integer({valueHex:t}),n=new ArrayBuffer(e);new Uint8Array(n).set(new Uint8Array(r,e,e));let c=new a.Integer({valueHex:n});return new a.Sequence({value:[i.convertToDER(),c.convertToDER()]}).toBER(!1)}function _x(r,e){if(!(r instanceof a.Sequence&&r.valueBlock.value.length===2&&r.valueBlock.value[0]instanceof a.Integer&&r.valueBlock.value[1]instanceof a.Integer))return ct;let t=r.valueBlock.value[0].convertFromDER().valueBlock.valueHexView,s=r.valueBlock.value[1].convertFromDER().valueBlock.valueHexView,i=new Uint8Array(e*2);return i.set(t,e-t.byteLength),i.set(s,2*e-s.byteLength),i.buffer}function rj(r,e=!1,t){return ae(!0).getAlgorithmByOID(r,e,t)}function sj(r){return ae(!0).getHashAlgorithm(r)}async function ij(r,e,t,s,i){switch(r.toUpperCase()){case"SHA-1":case"SHA-256":case"SHA-384":case"SHA-512":break;default:throw new xe(`Unknown hash function: ${r}`)}if(xe.assert(e,"zBuffer","ArrayBuffer"),e.byteLength===0)throw new xe("'zBuffer' has zero length, error");if(xe.assert(s,"SharedInfo","ArrayBuffer"),t>255)throw new xe("Please set 'Counter' argument to value less or equal to 255");let n=new ArrayBuffer(4),o=new Uint8Array(n);o[0]=0,o[1]=0,o[2]=0,o[3]=t;let c=ct;c=u.utilConcatBuf(c,e),c=u.utilConcatBuf(c,n),c=u.utilConcatBuf(c,s);let l=await i.digest({name:r},c);return{counter:t,result:l}}async function Ab(r,e,t,s,i=ae(!0)){let n=0,o=1;switch(r.toUpperCase()){case"SHA-1":n=160;break;case"SHA-256":n=256;break;case"SHA-384":n=384;break;case"SHA-512":n=512;break;default:throw new xe(`Unknown hash function: ${r}`)}if(xe.assert(e,"Zbuffer","ArrayBuffer"),e.byteLength===0)throw new xe("'Zbuffer' has zero length, error");xe.assert(s,"SharedInfo","ArrayBuffer");let c=t/n;Math.floor(c)>0&&(o=Math.floor(c),c-o>0&&o++);let l=[];for(let p=1;p<=o;p++)l.push(await ij(r,e,p,s,i));let h=ct,d=1,m=!0;for(;m;){m=!1;for(let p of l)if(p.counter===d){h=u.utilConcatBuf(h,p.result),m=!0;break}d++}if(t>>=3,h.byteLength>t){let p=new ArrayBuffer(t),A=new Uint8Array(p),w=new Uint8Array(h);for(let C=0;C<t;C++)A[C]=w[C];return p}return h}var H_="version",K_="logID",$_="extensions",F_="timestamp",J_="hashAlgorithm",G_="signatureAlgorithm",W_="signature",jB="none",MB="md5",LB="sha1",UB="sha224",HB="sha256",KB="sha384",$B="sha512",FB="anonymous",JB="rsa",GB="dsa",WB="ecdsa",ag=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,H_,r.defaultValues(H_)),this.logID=u.getParametersValue(e,K_,r.defaultValues(K_)),this.timestamp=u.getParametersValue(e,F_,r.defaultValues(F_)),this.extensions=u.getParametersValue(e,$_,r.defaultValues($_)),this.hashAlgorithm=u.getParametersValue(e,J_,r.defaultValues(J_)),this.signatureAlgorithm=u.getParametersValue(e,G_,r.defaultValues(G_)),this.signature=u.getParametersValue(e,W_,r.defaultValues(W_)),"stream"in e&&e.stream&&this.fromStream(e.stream),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case H_:return 0;case K_:case $_:return ct;case F_:return new Date(0);case J_:case G_:return f;case W_:return ct;default:return super.defaultValues(e)}}fromSchema(e){if(!(e instanceof a.RawData))throw new Error("Object's schema was not verified against input data for SignedCertificateTimestamp");let t=new Hn.SeqStream({stream:new Hn.ByteStream({buffer:e.data})});this.fromStream(t)}fromStream(e){let t=e.getUint16();if(this.version=e.getBlock(1)[0],this.version===0){this.logID=new Uint8Array(e.getBlock(32)).buffer.slice(0),this.timestamp=new Date(u.utilFromBase(new Uint8Array(e.getBlock(8)),8));let s=e.getUint16();switch(this.extensions=new Uint8Array(e.getBlock(s)).buffer.slice(0),e.getBlock(1)[0]){case 0:this.hashAlgorithm=jB;break;case 1:this.hashAlgorithm=MB;break;case 2:this.hashAlgorithm=LB;break;case 3:this.hashAlgorithm=UB;break;case 4:this.hashAlgorithm=HB;break;case 5:this.hashAlgorithm=KB;break;case 6:this.hashAlgorithm=$B;break;default:throw new Error("Object's stream was not correct for SignedCertificateTimestamp")}switch(e.getBlock(1)[0]){case 0:this.signatureAlgorithm=FB;break;case 1:this.signatureAlgorithm=JB;break;case 2:this.signatureAlgorithm=GB;break;case 3:this.signatureAlgorithm=WB;break;default:throw new Error("Object's stream was not correct for SignedCertificateTimestamp")}let i=e.getUint16();if(this.signature=new Uint8Array(e.getBlock(i)).buffer.slice(0),t!==47+s+i)throw new Error("Object's stream was not correct for SignedCertificateTimestamp")}}toSchema(){let e=this.toStream();return new a.RawData({data:e.stream.buffer})}toStream(){let e=new Hn.SeqStream;e.appendUint16(47+this.extensions.byteLength+this.signature.byteLength),e.appendChar(this.version),e.appendView(new Uint8Array(this.logID));let t=new ArrayBuffer(8),s=new Uint8Array(t),i=u.utilToBase(this.timestamp.valueOf(),8);s.set(new Uint8Array(i),8-i.byteLength),e.appendView(s),e.appendUint16(this.extensions.byteLength),this.extensions.byteLength&&e.appendView(new Uint8Array(this.extensions));let n;switch(this.hashAlgorithm.toLowerCase()){case jB:n=0;break;case MB:n=1;break;case LB:n=2;break;case UB:n=3;break;case HB:n=4;break;case KB:n=5;break;case $B:n=6;break;default:throw new Error(`Incorrect data for hashAlgorithm: ${this.hashAlgorithm}`)}e.appendChar(n);let o;switch(this.signatureAlgorithm.toLowerCase()){case FB:o=0;break;case JB:o=1;break;case GB:o=2;break;case WB:o=3;break;default:throw new Error(`Incorrect data for signatureAlgorithm: ${this.signatureAlgorithm}`)}return e.appendChar(o),e.appendUint16(this.signature.byteLength),e.appendView(new Uint8Array(this.signature)),e}toJSON(){return{version:this.version,logID:u.bufferToHexCodes(this.logID),timestamp:this.timestamp,extensions:u.bufferToHexCodes(this.extensions),hashAlgorithm:this.hashAlgorithm,signatureAlgorithm:this.signatureAlgorithm,signature:u.bufferToHexCodes(this.signature)}}async verify(e,t,s=0,i=ae(!0)){let n=u.toBase64(u.arrayBufferToString(this.logID)),o=null,c=new Hn.SeqStream;for(let A of e)if(A.log_id===n){o=A.key;break}if(!o)throw new Error(`Public key not found for CT with logId: ${n}`);let l=u.stringToArrayBuffer(u.fromBase64(o)),h=cr.fromBER(l);c.appendChar(0),c.appendChar(0);let d=new ArrayBuffer(8),m=new Uint8Array(d),p=u.utilToBase(this.timestamp.valueOf(),8);return m.set(new Uint8Array(p),8-p.byteLength),c.appendView(m),c.appendUint16(s),s===0&&c.appendUint24(t.byteLength),c.appendView(new Uint8Array(t)),c.appendUint16(this.extensions.byteLength),this.extensions.byteLength!==0&&c.appendView(new Uint8Array(this.extensions)),i.verifyWithPublicKey(c.buffer.slice(0,c.length),new a.OctetString({valueHex:this.signature}),h,{algorithmId:f},"SHA-256")}};ag.CLASS_NAME="SignedCertificateTimestamp";async function nj(r,e,t,s=-1,i=ae(!0)){let n=null,o=new Hn.SeqStream;if(r.extensions)for(let d=r.extensions.length-1;d>=0;d--)switch(r.extensions[d].extnID){case Zb:{if(n=r.extensions[d].parsedValue,!n||n.timestamps.length===0)throw new Error("Nothing to verify in the certificate");r.extensions.splice(d,1)}break}if(n===null)throw new Error("No SignedCertificateTimestampList extension in the specified certificate");let c=r.encodeTBS().toBER(),l=await i.digest({name:"SHA-256"},new Uint8Array(e.subjectPublicKeyInfo.toSchema().toBER(!1)));o.appendView(new Uint8Array(l)),o.appendUint24(c.byteLength),o.appendView(new Uint8Array(c));let h=o.stream.slice(0,o.length);if(s===-1){let d=[];for(let m of n.timestamps){let p=await m.verify(t,h.buffer,1,i);d.push(p)}return d}return s>=n.timestamps.length&&(s=n.timestamps.length-1),[await n.timestamps[s].verify(t,h.buffer,1,i)]}var xS="timestamps",og=class r extends B{constructor(e={}){super(),this.timestamps=u.getParametersValue(e,xS,r.defaultValues(xS)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===xS?[]:super.defaultValues(e)}static compareWithDefault(e,t){return e===xS?t.length===0:super.defaultValues(e)}static schema(e={}){var t;let s=u.getParametersValue(e,"names",{});return(t=s.optional)!==null&&t!==void 0||(s.optional=!1),new a.OctetString({name:s.blockName||"SignedCertificateTimestampList",optional:s.optional})}fromSchema(e){if(!(e instanceof a.OctetString))throw new Error("Object's schema was not verified against input data for SignedCertificateTimestampList");let t=new Hn.SeqStream({stream:new Hn.ByteStream({buffer:e.valueBlock.valueHex})});if(t.getUint16()!==t.length)throw new Error("Object's schema was not verified against input data for SignedCertificateTimestampList");for(;t.length;)this.timestamps.push(new ag({stream:t}))}toSchema(){let e=new Hn.SeqStream,t=0,s=[];for(let i of this.timestamps){let n=i.toStream();s.push(n),t+=n.stream.buffer.byteLength}e.appendUint16(t);for(let i of s)e.appendView(i.stream.view);return new a.OctetString({valueHex:e.stream.buffer.slice(0)})}toJSON(){return{timestamps:Array.from(this.timestamps,e=>e.toJSON())}}};og.CLASS_NAME="SignedCertificateTimestampList";var Lp="attributes",aj=[Lp],cg=class r extends B{constructor(e={}){super(),this.attributes=u.getParametersValue(e,Lp,r.defaultValues(Lp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Lp?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.attributes||f,value:Qe.schema()})]})}fromSchema(e){u.clearProps(e,aj);let t=a.compareSchema(e,e,r.schema({names:{attributes:Lp}}));I.assertSchema(t,this.className),this.attributes=Array.from(t.result.attributes,s=>new Qe({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.attributes,e=>e.toSchema())})}toJSON(){return{attributes:Array.from(this.attributes,e=>e.toJSON())}}};cg.CLASS_NAME="SubjectDirectoryAttributes";var NA=class r{static getItems(){return this.types||(this.types={},r.register($b,"SubjectAltName",Ql),r.register(Fb,"IssuerAltName",Ql),r.register(YA,"AuthorityKeyIdentifier",Zl),r.register(WA,"BasicConstraints",eh),r.register(hx,"MicrosoftCaVersion",Qm),r.register(Yb,"CertificatePolicies",sh),r.register(ax,"CertificatePoliciesMicrosoft",sh),r.register(lx,"MicrosoftCertTemplateV2",EA),r.register(zb,"CRLDistributionPoints",nh),r.register(zA,"FreshestCRL",nh),r.register(ox,"ExtKeyUsage",Zm),r.register(Gb,"CertificateIssuer",At),r.register(XA,"AuthorityInfoAccess",ah),r.register(ux,"SubjectInfoAccess",ah),r.register(Jb,"IssuingDistributionPoint",eg),r.register(Wb,"NameConstraints",tg),r.register(Qb,"PolicyConstraints",rg),r.register(Xb,"PolicyMappings",sg),r.register(tx,"PrivateKeyUsagePeriod",ig),r.register(fx,"QCStatements",ng),r.register(Zb,"SignedCertificateTimestampList",og),r.register(QB,"SubjectDirectoryAttributes",cg)),this.types}static fromBER(e,t){let s=a.fromBER(t);if(s.offset===-1)return null;let i=this.find(e);if(i)try{return new i.type({schema:s.result})}catch{let n=new i.type;return n.parsingError=`Incorrectly formatted value of extension ${i.name} (${e})`,n}return s.result}static find(e){return this.getItems()[e]||null}static register(e,t,s){this.getItems()[e]={name:t,type:s}}},Up="extnID",yn="critical",Hp="extnValue",OS="parsedValue",oj=[Up,yn,Hp],tr=class r extends B{get parsedValue(){if(this._parsedValue===void 0){let e=NA.fromBER(this.extnID,this.extnValue.valueBlock.valueHexView);this._parsedValue=e}return this._parsedValue||void 0}set parsedValue(e){this._parsedValue=e}constructor(e={}){super(),this.extnID=u.getParametersValue(e,Up,r.defaultValues(Up)),this.critical=u.getParametersValue(e,yn,r.defaultValues(yn)),Hp in e?this.extnValue=new a.OctetString({valueHex:e.extnValue}):this.extnValue=r.defaultValues(Hp),OS in e&&(this.parsedValue=u.getParametersValue(e,OS,r.defaultValues(OS))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Up:return f;case yn:return!1;case Hp:return new a.OctetString;case OS:return{};default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.extnID||f}),new a.Boolean({name:t.critical||f,optional:!0}),new a.OctetString({name:t.extnValue||f})]})}fromSchema(e){u.clearProps(e,oj);let t=a.compareSchema(e,e,r.schema({names:{extnID:Up,critical:yn,extnValue:Hp}}));I.assertSchema(t,this.className),this.extnID=t.result.extnID.valueBlock.toString(),yn in t.result&&(this.critical=t.result.critical.valueBlock.value),this.extnValue=t.result.extnValue}toSchema(){let e=[];return e.push(new a.ObjectIdentifier({value:this.extnID})),this.critical!==r.defaultValues(yn)&&e.push(new a.Boolean({value:this.critical})),e.push(this.extnValue),new a.Sequence({value:e})}toJSON(){let e={extnID:this.extnID,extnValue:this.extnValue.toJSON()};return this.critical!==r.defaultValues(yn)&&(e.critical=this.critical),this.parsedValue&&this.parsedValue.toJSON&&(e.parsedValue=this.parsedValue.toJSON()),e}};tr.CLASS_NAME="Extension";var Kp="extensions",cj=[Kp],ut=class r extends B{constructor(e={}){super(),this.extensions=u.getParametersValue(e,Kp,r.defaultValues(Kp)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Kp?[]:super.defaultValues(e)}static schema(e={},t=!1){let s=u.getParametersValue(e,"names",{});return new a.Sequence({optional:t,name:s.blockName||f,value:[new a.Repeated({name:s.extensions||f,value:tr.schema(s.extension||{})})]})}fromSchema(e){u.clearProps(e,cj);let t=a.compareSchema(e,e,r.schema({names:{extensions:Kp}}));I.assertSchema(t,this.className),this.extensions=Array.from(t.result.extensions,s=>new tr({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.extensions,e=>e.toSchema())})}toJSON(){return{extensions:this.extensions.map(e=>e.toJSON())}}};ut.CLASS_NAME="Extensions";var $p="issuer",Fp="serialNumber",Ua="issuerUID",uj=[$p,Fp,Ua],_r=class r extends B{constructor(e={}){super(),this.issuer=u.getParametersValue(e,$p,r.defaultValues($p)),this.serialNumber=u.getParametersValue(e,Fp,r.defaultValues(Fp)),Ua in e&&(this.issuerUID=u.getParametersValue(e,Ua,r.defaultValues(Ua))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case $p:return new At;case Fp:return new a.Integer;case Ua:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[At.schema(t.issuer||{}),new a.Integer({name:t.serialNumber||f}),new a.BitString({optional:!0,name:t.issuerUID||f})]})}fromSchema(e){u.clearProps(e,uj);let t=a.compareSchema(e,e,r.schema({names:{issuer:{names:{blockName:$p}},serialNumber:Fp,issuerUID:Ua}}));I.assertSchema(t,this.className),this.issuer=new At({schema:t.result.issuer}),this.serialNumber=t.result.serialNumber,Ua in t.result&&(this.issuerUID=t.result.issuerUID)}toSchema(){let e=new a.Sequence({value:[this.issuer.toSchema(),this.serialNumber]});return this.issuerUID&&e.valueBlock.value.push(this.issuerUID),e}toJSON(){let e={issuer:this.issuer.toJSON(),serialNumber:this.serialNumber.toJSON()};return this.issuerUID&&(e.issuerUID=this.issuerUID.toJSON()),e}};_r.CLASS_NAME="IssuerSerial";var Jp="version",Ha="baseCertificateID",Ka="subjectName",Gp="issuer",Wp="signature",zp="serialNumber",Yp="attrCertValidityPeriod",Xp="attributes",$a="issuerUniqueID",Fa="extensions",lj=[Jp,Ha,Ka,Gp,Wp,zp,Yp,Xp,$a,Fa],Bo=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Jp,r.defaultValues(Jp)),Ha in e&&(this.baseCertificateID=u.getParametersValue(e,Ha,r.defaultValues(Ha))),Ka in e&&(this.subjectName=u.getParametersValue(e,Ka,r.defaultValues(Ka))),this.issuer=u.getParametersValue(e,Gp,r.defaultValues(Gp)),this.signature=u.getParametersValue(e,Wp,r.defaultValues(Wp)),this.serialNumber=u.getParametersValue(e,zp,r.defaultValues(zp)),this.attrCertValidityPeriod=u.getParametersValue(e,Yp,r.defaultValues(Yp)),this.attributes=u.getParametersValue(e,Xp,r.defaultValues(Xp)),$a in e&&(this.issuerUniqueID=u.getParametersValue(e,$a,r.defaultValues($a))),Fa in e&&(this.extensions=u.getParametersValue(e,Fa,r.defaultValues(Fa))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Jp:return 0;case Ha:return new _r;case Ka:return new At;case Gp:return new At;case Wp:return new b;case zp:return new a.Integer;case Yp:return new Vs;case Xp:return[];case $a:return new a.BitString;case Fa:return new ut;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),new a.Choice({value:[new a.Constructed({name:t.baseCertificateID||f,idBlock:{tagClass:3,tagNumber:0},value:_r.schema().valueBlock.value}),new a.Constructed({name:t.subjectName||f,idBlock:{tagClass:3,tagNumber:1},value:At.schema().valueBlock.value})]}),At.schema({names:{blockName:t.issuer||f}}),b.schema(t.signature||{}),new a.Integer({name:t.serialNumber||f}),Vs.schema(t.attrCertValidityPeriod||{}),new a.Sequence({name:t.attributes||f,value:[new a.Repeated({value:Qe.schema()})]}),new a.BitString({optional:!0,name:t.issuerUniqueID||f}),ut.schema(t.extensions||{},!0)]})}fromSchema(e){u.clearProps(e,lj);let t=a.compareSchema(e,e,r.schema({names:{version:Jp,baseCertificateID:Ha,subjectName:Ka,issuer:Gp,signature:{names:{blockName:Wp}},serialNumber:zp,attrCertValidityPeriod:{names:{blockName:Yp}},attributes:Xp,issuerUniqueID:$a,extensions:{names:{blockName:Fa}}}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,Ha in t.result&&(this.baseCertificateID=new _r({schema:new a.Sequence({value:t.result.baseCertificateID.valueBlock.value})})),Ka in t.result&&(this.subjectName=new At({schema:new a.Sequence({value:t.result.subjectName.valueBlock.value})})),this.issuer=t.result.issuer,this.signature=new b({schema:t.result.signature}),this.serialNumber=t.result.serialNumber,this.attrCertValidityPeriod=new Vs({schema:t.result.attrCertValidityPeriod}),this.attributes=Array.from(t.result.attributes.valueBlock.value,s=>new Qe({schema:s})),$a in t.result&&(this.issuerUniqueID=t.result.issuerUniqueID),Fa in t.result&&(this.extensions=new ut({schema:t.result.extensions}))}toSchema(){let e=new a.Sequence({value:[new a.Integer({value:this.version})]});return this.baseCertificateID&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.baseCertificateID.toSchema().valueBlock.value})),this.subjectName&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:this.subjectName.toSchema().valueBlock.value})),e.valueBlock.value.push(this.issuer.toSchema()),e.valueBlock.value.push(this.signature.toSchema()),e.valueBlock.value.push(this.serialNumber),e.valueBlock.value.push(this.attrCertValidityPeriod.toSchema()),e.valueBlock.value.push(new a.Sequence({value:Array.from(this.attributes,t=>t.toSchema())})),this.issuerUniqueID&&e.valueBlock.value.push(this.issuerUniqueID),this.extensions&&e.valueBlock.value.push(this.extensions.toSchema()),e}toJSON(){let e={version:this.version};return this.baseCertificateID&&(e.baseCertificateID=this.baseCertificateID.toJSON()),this.subjectName&&(e.subjectName=this.subjectName.toJSON()),e.issuer=this.issuer.toJSON(),e.signature=this.signature.toJSON(),e.serialNumber=this.serialNumber.toJSON(),e.attrCertValidityPeriod=this.attrCertValidityPeriod.toJSON(),e.attributes=Array.from(this.attributes,t=>t.toJSON()),this.issuerUniqueID&&(e.issuerUniqueID=this.issuerUniqueID.toJSON()),this.extensions&&(e.extensions=this.extensions.toJSON()),e}};Bo.CLASS_NAME="AttributeCertificateInfoV1";var Qp="acinfo",Zp="signatureAlgorithm",em="signatureValue",hj=[Qp,em,Zp],qo=class r extends B{constructor(e={}){super(),this.acinfo=u.getParametersValue(e,Qp,r.defaultValues(Qp)),this.signatureAlgorithm=u.getParametersValue(e,Zp,r.defaultValues(Zp)),this.signatureValue=u.getParametersValue(e,em,r.defaultValues(em)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Qp:return new Bo;case Zp:return new b;case em:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[Bo.schema(t.acinfo||{}),b.schema(t.signatureAlgorithm||{}),new a.BitString({name:t.signatureValue||f})]})}fromSchema(e){u.clearProps(e,hj);let t=a.compareSchema(e,e,r.schema({names:{acinfo:{names:{blockName:Qp}},signatureAlgorithm:{names:{blockName:Zp}},signatureValue:em}}));I.assertSchema(t,this.className),this.acinfo=new Bo({schema:t.result.acinfo}),this.signatureAlgorithm=new b({schema:t.result.signatureAlgorithm}),this.signatureValue=t.result.signatureValue}toSchema(){return new a.Sequence({value:[this.acinfo.toSchema(),this.signatureAlgorithm.toSchema(),this.signatureValue]})}toJSON(){return{acinfo:this.acinfo.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signatureValue:this.signatureValue.toJSON()}}};qo.CLASS_NAME="AttributeCertificateV1";var tm="digestedObjectType",Ja="otherObjectTypeID",rm="digestAlgorithm",sm="objectDigest",fj=[tm,Ja,rm,sm],Rs=class r extends B{constructor(e={}){super(),this.digestedObjectType=u.getParametersValue(e,tm,r.defaultValues(tm)),Ja in e&&(this.otherObjectTypeID=u.getParametersValue(e,Ja,r.defaultValues(Ja))),this.digestAlgorithm=u.getParametersValue(e,rm,r.defaultValues(rm)),this.objectDigest=u.getParametersValue(e,sm,r.defaultValues(sm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case tm:return new a.Enumerated;case Ja:return new a.ObjectIdentifier;case rm:return new b;case sm:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Enumerated({name:t.digestedObjectType||f}),new a.ObjectIdentifier({optional:!0,name:t.otherObjectTypeID||f}),b.schema(t.digestAlgorithm||{}),new a.BitString({name:t.objectDigest||f})]})}fromSchema(e){u.clearProps(e,fj);let t=a.compareSchema(e,e,r.schema({names:{digestedObjectType:tm,otherObjectTypeID:Ja,digestAlgorithm:{names:{blockName:rm}},objectDigest:sm}}));I.assertSchema(t,this.className),this.digestedObjectType=t.result.digestedObjectType,Ja in t.result&&(this.otherObjectTypeID=t.result.otherObjectTypeID),this.digestAlgorithm=new b({schema:t.result.digestAlgorithm}),this.objectDigest=t.result.objectDigest}toSchema(){let e=new a.Sequence({value:[this.digestedObjectType]});return this.otherObjectTypeID&&e.valueBlock.value.push(this.otherObjectTypeID),e.valueBlock.value.push(this.digestAlgorithm.toSchema()),e.valueBlock.value.push(this.objectDigest),e}toJSON(){let e={digestedObjectType:this.digestedObjectType.toJSON(),digestAlgorithm:this.digestAlgorithm.toJSON(),objectDigest:this.objectDigest.toJSON()};return this.otherObjectTypeID&&(e.otherObjectTypeID=this.otherObjectTypeID.toJSON()),e}};Rs.CLASS_NAME="ObjectDigestInfo";var Ga="issuerName",Wa="baseCertificateID",za="objectDigestInfo",dj=[Ga,Wa,za],dh=class r extends B{constructor(e={}){super(),Ga in e&&(this.issuerName=u.getParametersValue(e,Ga,r.defaultValues(Ga))),Wa in e&&(this.baseCertificateID=u.getParametersValue(e,Wa,r.defaultValues(Wa))),za in e&&(this.objectDigestInfo=u.getParametersValue(e,za,r.defaultValues(za))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ga:return new At;case Wa:return new _r;case za:return new Rs;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[At.schema({names:{blockName:t.issuerName}},!0),new a.Constructed({optional:!0,name:t.baseCertificateID||f,idBlock:{tagClass:3,tagNumber:0},value:_r.schema().valueBlock.value}),new a.Constructed({optional:!0,name:t.objectDigestInfo||f,idBlock:{tagClass:3,tagNumber:1},value:Rs.schema().valueBlock.value})]})}fromSchema(e){u.clearProps(e,dj);let t=a.compareSchema(e,e,r.schema({names:{issuerName:Ga,baseCertificateID:Wa,objectDigestInfo:za}}));I.assertSchema(t,this.className),Ga in t.result&&(this.issuerName=new At({schema:t.result.issuerName})),Wa in t.result&&(this.baseCertificateID=new _r({schema:new a.Sequence({value:t.result.baseCertificateID.valueBlock.value})})),za in t.result&&(this.objectDigestInfo=new Rs({schema:new a.Sequence({value:t.result.objectDigestInfo.valueBlock.value})}))}toSchema(){let e=new a.Sequence;return this.issuerName&&e.valueBlock.value.push(this.issuerName.toSchema()),this.baseCertificateID&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.baseCertificateID.toSchema().valueBlock.value})),this.objectDigestInfo&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:this.objectDigestInfo.toSchema().valueBlock.value})),e}toJSON(){let e={};return this.issuerName&&(e.issuerName=this.issuerName.toJSON()),this.baseCertificateID&&(e.baseCertificateID=this.baseCertificateID.toJSON()),this.objectDigestInfo&&(e.objectDigestInfo=this.objectDigestInfo.toJSON()),e}};dh.CLASS_NAME="V2Form";var Ya="baseCertificateID",Xa="entityName",Qa="objectDigestInfo",pj=[Ya,Xa,Qa],xo=class r extends B{constructor(e={}){super(),Ya in e&&(this.baseCertificateID=u.getParametersValue(e,Ya,r.defaultValues(Ya))),Xa in e&&(this.entityName=u.getParametersValue(e,Xa,r.defaultValues(Xa))),Qa in e&&(this.objectDigestInfo=u.getParametersValue(e,Qa,r.defaultValues(Qa))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ya:return new _r;case Xa:return new At;case Qa:return new Rs;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({optional:!0,name:t.baseCertificateID||f,idBlock:{tagClass:3,tagNumber:0},value:_r.schema().valueBlock.value}),new a.Constructed({optional:!0,name:t.entityName||f,idBlock:{tagClass:3,tagNumber:1},value:At.schema().valueBlock.value}),new a.Constructed({optional:!0,name:t.objectDigestInfo||f,idBlock:{tagClass:3,tagNumber:2},value:Rs.schema().valueBlock.value})]})}fromSchema(e){u.clearProps(e,pj);let t=a.compareSchema(e,e,r.schema({names:{baseCertificateID:Ya,entityName:Xa,objectDigestInfo:Qa}}));I.assertSchema(t,this.className),Ya in t.result&&(this.baseCertificateID=new _r({schema:new a.Sequence({value:t.result.baseCertificateID.valueBlock.value})})),Xa in t.result&&(this.entityName=new At({schema:new a.Sequence({value:t.result.entityName.valueBlock.value})})),Qa in t.result&&(this.objectDigestInfo=new Rs({schema:new a.Sequence({value:t.result.objectDigestInfo.valueBlock.value})}))}toSchema(){let e=new a.Sequence;return this.baseCertificateID&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.baseCertificateID.toSchema().valueBlock.value})),this.entityName&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:this.entityName.toSchema().valueBlock.value})),this.objectDigestInfo&&e.valueBlock.value.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:this.objectDigestInfo.toSchema().valueBlock.value})),e}toJSON(){let e={};return this.baseCertificateID&&(e.baseCertificateID=this.baseCertificateID.toJSON()),this.entityName&&(e.entityName=this.entityName.toJSON()),this.objectDigestInfo&&(e.objectDigestInfo=this.objectDigestInfo.toJSON()),e}};xo.CLASS_NAME="Holder";var im="version",nm="holder",am="issuer",om="signature",cm="serialNumber",um="attrCertValidityPeriod",lm="attributes",Za="issuerUniqueID",eo="extensions",mj=[im,nm,am,om,cm,um,lm,Za,eo],Oo=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,im,r.defaultValues(im)),this.holder=u.getParametersValue(e,nm,r.defaultValues(nm)),this.issuer=u.getParametersValue(e,am,r.defaultValues(am)),this.signature=u.getParametersValue(e,om,r.defaultValues(om)),this.serialNumber=u.getParametersValue(e,cm,r.defaultValues(cm)),this.attrCertValidityPeriod=u.getParametersValue(e,um,r.defaultValues(um)),this.attributes=u.getParametersValue(e,lm,r.defaultValues(lm)),Za in e&&(this.issuerUniqueID=u.getParametersValue(e,Za,r.defaultValues(Za))),eo in e&&(this.extensions=u.getParametersValue(e,eo,r.defaultValues(eo))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case im:return 1;case nm:return new xo;case am:return{};case om:return new b;case cm:return new a.Integer;case um:return new Vs;case lm:return[];case Za:return new a.BitString;case eo:return new ut;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),xo.schema(t.holder||{}),new a.Choice({value:[At.schema({names:{blockName:t.issuer||f}}),new a.Constructed({name:t.issuer||f,idBlock:{tagClass:3,tagNumber:0},value:dh.schema().valueBlock.value})]}),b.schema(t.signature||{}),new a.Integer({name:t.serialNumber||f}),Vs.schema(t.attrCertValidityPeriod||{}),new a.Sequence({name:t.attributes||f,value:[new a.Repeated({value:Qe.schema()})]}),new a.BitString({optional:!0,name:t.issuerUniqueID||f}),ut.schema(t.extensions||{},!0)]})}fromSchema(e){u.clearProps(e,mj);let t=a.compareSchema(e,e,r.schema({names:{version:im,holder:{names:{blockName:nm}},issuer:am,signature:{names:{blockName:om}},serialNumber:cm,attrCertValidityPeriod:{names:{blockName:um}},attributes:lm,issuerUniqueID:Za,extensions:{names:{blockName:eo}}}}));if(I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.holder=new xo({schema:t.result.holder}),t.result.issuer.idBlock.tagClass===3)this.issuer=new dh({schema:new a.Sequence({value:t.result.issuer.valueBlock.value})});else throw new Error("Incorrect value for 'issuer' in AttributeCertificateInfoV2");this.signature=new b({schema:t.result.signature}),this.serialNumber=t.result.serialNumber,this.attrCertValidityPeriod=new Vs({schema:t.result.attrCertValidityPeriod}),this.attributes=Array.from(t.result.attributes.valueBlock.value,s=>new Qe({schema:s})),Za in t.result&&(this.issuerUniqueID=t.result.issuerUniqueID),eo in t.result&&(this.extensions=new ut({schema:t.result.extensions}))}toSchema(){let e=new a.Sequence({value:[new a.Integer({value:this.version}),this.holder.toSchema(),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.issuer.toSchema().valueBlock.value}),this.signature.toSchema(),this.serialNumber,this.attrCertValidityPeriod.toSchema(),new a.Sequence({value:Array.from(this.attributes,t=>t.toSchema())})]});return this.issuerUniqueID&&e.valueBlock.value.push(this.issuerUniqueID),this.extensions&&e.valueBlock.value.push(this.extensions.toSchema()),e}toJSON(){let e={version:this.version,holder:this.holder.toJSON(),issuer:this.issuer.toJSON(),signature:this.signature.toJSON(),serialNumber:this.serialNumber.toJSON(),attrCertValidityPeriod:this.attrCertValidityPeriod.toJSON(),attributes:Array.from(this.attributes,t=>t.toJSON())};return this.issuerUniqueID&&(e.issuerUniqueID=this.issuerUniqueID.toJSON()),this.extensions&&(e.extensions=this.extensions.toJSON()),e}};Oo.CLASS_NAME="AttributeCertificateInfoV2";var hm="acinfo",fm="signatureAlgorithm",dm="signatureValue",gj=[hm,fm,dm],rs=class r extends B{constructor(e={}){super(),this.acinfo=u.getParametersValue(e,hm,r.defaultValues(hm)),this.signatureAlgorithm=u.getParametersValue(e,fm,r.defaultValues(fm)),this.signatureValue=u.getParametersValue(e,dm,r.defaultValues(dm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case hm:return new Oo;case fm:return new b;case dm:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[Oo.schema(t.acinfo||{}),b.schema(t.signatureAlgorithm||{}),new a.BitString({name:t.signatureValue||f})]})}fromSchema(e){u.clearProps(e,gj);let t=a.compareSchema(e,e,r.schema({names:{acinfo:{names:{blockName:hm}},signatureAlgorithm:{names:{blockName:fm}},signatureValue:dm}}));I.assertSchema(t,this.className),this.acinfo=new Oo({schema:t.result.acinfo}),this.signatureAlgorithm=new b({schema:t.result.signatureAlgorithm}),this.signatureValue=t.result.signatureValue}toSchema(){return new a.Sequence({value:[this.acinfo.toSchema(),this.signatureAlgorithm.toSchema(),this.signatureValue]})}toJSON(){return{acinfo:this.acinfo.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signatureValue:this.signatureValue.toJSON()}}};rs.CLASS_NAME="AttributeCertificateV2";var to="contentType",qu="content",yj=[to,qu],We=class r extends B{constructor(e={}){super(),this.contentType=u.getParametersValue(e,to,r.defaultValues(to)),this.content=u.getParametersValue(e,qu,r.defaultValues(qu)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case to:return f;case qu:return new a.Any;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case to:return typeof t=="string"&&t===this.defaultValues(to);case qu:return t instanceof a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return"optional"in t||(t.optional=!1),new a.Sequence({name:t.blockName||"ContentInfo",optional:t.optional,value:[new a.ObjectIdentifier({name:t.contentType||to}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any({name:t.content||qu})]})]})}fromSchema(e){u.clearProps(e,yj);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.contentType=t.result.contentType.valueBlock.toString(),this.content=t.result.content}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.contentType}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.content]})]})}toJSON(){let e={contentType:this.contentType};return this.content instanceof a.Any||(e.content=this.content.toJSON()),e}};We.CLASS_NAME="ContentInfo";We.DATA=QA;We.SIGNED_DATA=eC;We.ENVELOPED_DATA=tC;We.ENCRYPTED_DATA=rC;var z_="type",Y_="value",wb="utcTimeName",_b="generalTimeName",vj=[wb,_b];g.TimeType=void 0;(function(r){r[r.UTCTime=0]="UTCTime",r[r.GeneralizedTime=1]="GeneralizedTime",r[r.empty=2]="empty"})(g.TimeType||(g.TimeType={}));var wt=class r extends B{constructor(e={}){super(),this.type=u.getParametersValue(e,z_,r.defaultValues(z_)),this.value=u.getParametersValue(e,Y_,r.defaultValues(Y_)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case z_:return 0;case Y_:return new Date(0,0,0);default:return super.defaultValues(e)}}static schema(e={},t=!1){let s=u.getParametersValue(e,"names",{});return new a.Choice({optional:t,value:[new a.UTCTime({name:s.utcTimeName||f}),new a.GeneralizedTime({name:s.generalTimeName||f})]})}fromSchema(e){u.clearProps(e,vj);let t=a.compareSchema(e,e,r.schema({names:{utcTimeName:wb,generalTimeName:_b}}));I.assertSchema(t,this.className),wb in t.result&&(this.type=0,this.value=t.result.utcTimeName.toDate()),_b in t.result&&(this.type=1,this.value=t.result.generalTimeName.toDate())}toSchema(){return this.type===0?new a.UTCTime({valueDate:this.value}):this.type===1?new a.GeneralizedTime({valueDate:this.value}):{}}toJSON(){return{type:this.type,value:this.value}}};wt.CLASS_NAME="Time";var X_="tbs",vn="version",XS="serialNumber",QS="signature",ZS="issuer",eA="notBefore",tA="notAfter",rA="subject",sA="subjectPublicKeyInfo",pm="issuerUniqueID",mm="subjectUniqueID",gm="extensions",ym="signatureAlgorithm",vm="signatureValue",br="tbsCertificate",BA=`${br}.${vn}`,sC=`${br}.${XS}`,iC=`${br}.${QS}`,nC=`${br}.${ZS}`,xA=`${br}.${eA}`,OA=`${br}.${tA}`,aC=`${br}.${rA}`,oC=`${br}.${sA}`,TA=`${br}.${pm}`,VA=`${br}.${mm}`,Xm=`${br}.${gm}`,Sj=[br,BA,sC,iC,nC,xA,OA,aC,oC,TA,VA,Xm,ym,vm];function Aj(r={}){let e=u.getParametersValue(r,"names",{});return new a.Sequence({name:e.blockName||br,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({name:e.tbsCertificateVersion||BA})]}),new a.Integer({name:e.tbsCertificateSerialNumber||sC}),b.schema(e.signature||{names:{blockName:iC}}),je.schema(e.issuer||{names:{blockName:nC}}),new a.Sequence({name:e.tbsCertificateValidity||"tbsCertificate.validity",value:[wt.schema(e.notBefore||{names:{utcTimeName:xA,generalTimeName:xA}}),wt.schema(e.notAfter||{names:{utcTimeName:OA,generalTimeName:OA}})]}),je.schema(e.subject||{names:{blockName:aC}}),cr.schema(e.subjectPublicKeyInfo||{names:{blockName:oC}}),new a.Primitive({name:e.tbsCertificateIssuerUniqueID||TA,optional:!0,idBlock:{tagClass:3,tagNumber:1}}),new a.Primitive({name:e.tbsCertificateSubjectUniqueID||VA,optional:!0,idBlock:{tagClass:3,tagNumber:2}}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:3},value:[ut.schema(e.extensions||{names:{blockName:Xm}})]})]})}var $t=class r extends B{get tbs(){return ie.BufferSourceConverter.toArrayBuffer(this.tbsView)}set tbs(e){this.tbsView=new Uint8Array(e)}constructor(e={}){super(),this.tbsView=new Uint8Array(u.getParametersValue(e,X_,r.defaultValues(X_))),this.version=u.getParametersValue(e,vn,r.defaultValues(vn)),this.serialNumber=u.getParametersValue(e,XS,r.defaultValues(XS)),this.signature=u.getParametersValue(e,QS,r.defaultValues(QS)),this.issuer=u.getParametersValue(e,ZS,r.defaultValues(ZS)),this.notBefore=u.getParametersValue(e,eA,r.defaultValues(eA)),this.notAfter=u.getParametersValue(e,tA,r.defaultValues(tA)),this.subject=u.getParametersValue(e,rA,r.defaultValues(rA)),this.subjectPublicKeyInfo=u.getParametersValue(e,sA,r.defaultValues(sA)),pm in e&&(this.issuerUniqueID=u.getParametersValue(e,pm,r.defaultValues(pm))),mm in e&&(this.subjectUniqueID=u.getParametersValue(e,mm,r.defaultValues(mm))),gm in e&&(this.extensions=u.getParametersValue(e,gm,r.defaultValues(gm))),this.signatureAlgorithm=u.getParametersValue(e,ym,r.defaultValues(ym)),this.signatureValue=u.getParametersValue(e,vm,r.defaultValues(vm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case X_:return ct;case vn:return 0;case XS:return new a.Integer;case QS:return new b;case ZS:return new je;case eA:return new wt;case tA:return new wt;case rA:return new je;case sA:return new cr;case pm:return ct;case mm:return ct;case gm:return[];case ym:return new b;case vm:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[Aj(t.tbsCertificate),b.schema(t.signatureAlgorithm||{names:{blockName:ym}}),new a.BitString({name:t.signatureValue||vm})]})}fromSchema(e){u.clearProps(e,Sj);let t=a.compareSchema(e,e,r.schema({names:{tbsCertificate:{names:{extensions:{names:{extensions:Xm}}}}}}));I.assertSchema(t,this.className),this.tbsView=t.result.tbsCertificate.valueBeforeDecodeView,BA in t.result&&(this.version=t.result[BA].valueBlock.valueDec),this.serialNumber=t.result[sC],this.signature=new b({schema:t.result[iC]}),this.issuer=new je({schema:t.result[nC]}),this.notBefore=new wt({schema:t.result[xA]}),this.notAfter=new wt({schema:t.result[OA]}),this.subject=new je({schema:t.result[aC]}),this.subjectPublicKeyInfo=new cr({schema:t.result[oC]}),TA in t.result&&(this.issuerUniqueID=t.result[TA].valueBlock.valueHex),VA in t.result&&(this.subjectUniqueID=t.result[VA].valueBlock.valueHex),Xm in t.result&&(this.extensions=Array.from(t.result[Xm],s=>new tr({schema:s}))),this.signatureAlgorithm=new b({schema:t.result.signatureAlgorithm}),this.signatureValue=t.result.signatureValue}encodeTBS(){let e=[];return vn in this&&this.version!==r.defaultValues(vn)&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({value:this.version})]})),e.push(this.serialNumber),e.push(this.signature.toSchema()),e.push(this.issuer.toSchema()),e.push(new a.Sequence({value:[this.notBefore.toSchema(),this.notAfter.toSchema()]})),e.push(this.subject.toSchema()),e.push(this.subjectPublicKeyInfo.toSchema()),this.issuerUniqueID&&e.push(new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:1},valueHex:this.issuerUniqueID})),this.subjectUniqueID&&e.push(new a.Primitive({optional:!0,idBlock:{tagClass:3,tagNumber:2},valueHex:this.subjectUniqueID})),this.extensions&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:3},value:[new a.Sequence({value:Array.from(this.extensions,t=>t.toSchema())})]})),new a.Sequence({value:e})}toSchema(e=!1){let t;if(e===!1){if(!this.tbsView.byteLength)return r.schema().value[0];let s=a.fromBER(this.tbsView);I.assert(s,"TBS Certificate"),t=s.result}else t=this.encodeTBS();return new a.Sequence({value:[t,this.signatureAlgorithm.toSchema(),this.signatureValue]})}toJSON(){let e={tbs:ie.Convert.ToHex(this.tbsView),version:this.version,serialNumber:this.serialNumber.toJSON(),signature:this.signature.toJSON(),issuer:this.issuer.toJSON(),notBefore:this.notBefore.toJSON(),notAfter:this.notAfter.toJSON(),subject:this.subject.toJSON(),subjectPublicKeyInfo:this.subjectPublicKeyInfo.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signatureValue:this.signatureValue.toJSON()};return vn in this&&this.version!==r.defaultValues(vn)&&(e.version=this.version),this.issuerUniqueID&&(e.issuerUniqueID=ie.Convert.ToHex(this.issuerUniqueID)),this.subjectUniqueID&&(e.subjectUniqueID=ie.Convert.ToHex(this.subjectUniqueID)),this.extensions&&(e.extensions=Array.from(this.extensions,t=>t.toJSON())),e}async getPublicKey(e,t=ae(!0)){return t.getPublicKey(this.subjectPublicKeyInfo,this.signatureAlgorithm,e)}async getKeyHash(e="SHA-1",t=ae(!0)){return t.digest({name:e},this.subjectPublicKeyInfo.subjectPublicKey.valueBlock.valueHexView)}async sign(e,t="SHA-1",s=ae(!0)){if(!e)throw new Error("Need to provide a private key for signing");let i=await s.getSignatureParameters(e,t),n=i.parameters;this.signature=i.signatureAlgorithm,this.signatureAlgorithm=i.signatureAlgorithm,this.tbsView=new Uint8Array(this.encodeTBS().toBER());let o=await s.signWithPrivateKey(this.tbsView,e,n);this.signatureValue=new a.BitString({valueHex:o})}async verify(e,t=ae(!0)){let s;if(e?s=e.subjectPublicKeyInfo:this.issuer.isEqual(this.subject)&&(s=this.subjectPublicKeyInfo),!(s instanceof cr))throw new Error("Please provide issuer certificate as a parameter");return t.verifyWithPublicKey(this.tbsView,this.signatureValue,s,this.signatureAlgorithm)}};$t.CLASS_NAME="Certificate";function cC(r,e=null){if(e&&r.issuer.isEqual(e.issuer)&&r.serialNumber.isEqual(e.serialNumber))return null;let t=!1;if(r.extensions){for(let s of r.extensions)if(s.extnID===WA&&s.parsedValue instanceof eh&&s.parsedValue.cA){t=!0;break}}return t?r:null}var ju="certId",Mu="certValue",Su="parsedValue",wj=[ju,Mu],ug=class r extends B{constructor(e={}){super(),this.certId=u.getParametersValue(e,ju,r.defaultValues(ju)),this.certValue=u.getParametersValue(e,Mu,r.defaultValues(Mu)),Su in e&&(this.parsedValue=u.getParametersValue(e,Su,r.defaultValues(Su))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ju:return f;case Mu:return new a.Any;case Su:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case ju:return t===f;case Mu:return t instanceof a.Any;case Su:return t instanceof Object&&Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.id||"id"}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any({name:t.value||"value"})]})]})}fromSchema(e){u.clearProps(e,wj);let t=a.compareSchema(e,e,r.schema({names:{id:ju,value:Mu}}));I.assertSchema(t,this.className),this.certId=t.result.certId.valueBlock.toString(),this.certValue=t.result.certValue;let s=this.certValue.valueBlock.valueHexView;switch(this.certId){case gb:try{this.parsedValue=$t.fromBER(s)}catch{rs.fromBER(s)}break;case yb:this.parsedValue=rs.fromBER(s);break;case px:default:throw new Error(`Incorrect CERT_ID value in CertBag: ${this.certId}`)}}toSchema(){return Su in this&&("acinfo"in this.parsedValue?this.certId=yb:this.certId=gb,this.certValue=new a.OctetString({valueHex:this.parsedValue.toSchema().toBER(!1)})),new a.Sequence({value:[new a.ObjectIdentifier({value:this.certId}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:["toSchema"in this.certValue?this.certValue.toSchema():this.certValue]})]})}toJSON(){return{certId:this.certId,certValue:this.certValue.toJSON()}}};ug.CLASS_NAME="CertBag";var Sm="userCertificate",Lu="revocationDate",ro="crlEntryExtensions",_j=[Sm,Lu,ro],lg=class r extends B{constructor(e={}){super(),this.userCertificate=u.getParametersValue(e,Sm,r.defaultValues(Sm)),this.revocationDate=u.getParametersValue(e,Lu,r.defaultValues(Lu)),ro in e&&(this.crlEntryExtensions=u.getParametersValue(e,ro,r.defaultValues(ro))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Sm:return new a.Integer;case Lu:return new wt;case ro:return new ut;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.userCertificate||Sm}),wt.schema({names:{utcTimeName:t.revocationDate||Lu,generalTimeName:t.revocationDate||Lu}}),ut.schema({names:{blockName:t.crlEntryExtensions||ro}},!0)]})}fromSchema(e){u.clearProps(e,_j);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.userCertificate=t.result.userCertificate,this.revocationDate=new wt({schema:t.result.revocationDate}),ro in t.result&&(this.crlEntryExtensions=new ut({schema:t.result.crlEntryExtensions}))}toSchema(){let e=[this.userCertificate,this.revocationDate.toSchema()];return this.crlEntryExtensions&&e.push(this.crlEntryExtensions.toSchema()),new a.Sequence({value:e})}toJSON(){let e={userCertificate:this.userCertificate.toJSON(),revocationDate:this.revocationDate.toJSON()};return this.crlEntryExtensions&&(e.crlEntryExtensions=this.crlEntryExtensions.toJSON()),e}};lg.CLASS_NAME="RevokedCertificate";var Q_="tbs",Wd="version",Z_="signature",eb="issuer",tb="thisUpdate",TS="nextUpdate",VS="revokedCertificates",RS="crlExtensions",Am="signatureAlgorithm",wm="signatureValue",xi="tbsCertList",RA=`${xi}.version`,uC=`${xi}.signature`,lC=`${xi}.issuer`,DA=`${xi}.thisUpdate`,hg=`${xi}.nextUpdate`,qA=`${xi}.revokedCertificates`,jA=`${xi}.extensions`,bj=[xi,RA,uC,lC,DA,hg,qA,jA,Am,wm];function Cj(r={}){let e=u.getParametersValue(r,"names",{});return new a.Sequence({name:e.blockName||xi,value:[new a.Integer({optional:!0,name:e.tbsCertListVersion||RA,value:2}),b.schema(e.signature||{names:{blockName:uC}}),je.schema(e.issuer||{names:{blockName:lC}}),wt.schema(e.tbsCertListThisUpdate||{names:{utcTimeName:DA,generalTimeName:DA}}),wt.schema(e.tbsCertListNextUpdate||{names:{utcTimeName:hg,generalTimeName:hg}},!0),new a.Sequence({optional:!0,value:[new a.Repeated({name:e.tbsCertListRevokedCertificates||qA,value:new a.Sequence({value:[new a.Integer,wt.schema(),ut.schema({},!0)]})})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[ut.schema(e.crlExtensions||{names:{blockName:jA}})]})]})}var Pj=[YA,Fb,rx,sx,Jb,zA,XA,ix,nx,Gb],Xn=class r extends B{get tbs(){return ie.BufferSourceConverter.toArrayBuffer(this.tbsView)}set tbs(e){this.tbsView=new Uint8Array(e)}constructor(e={}){super(),this.tbsView=new Uint8Array(u.getParametersValue(e,Q_,r.defaultValues(Q_))),this.version=u.getParametersValue(e,Wd,r.defaultValues(Wd)),this.signature=u.getParametersValue(e,Z_,r.defaultValues(Z_)),this.issuer=u.getParametersValue(e,eb,r.defaultValues(eb)),this.thisUpdate=u.getParametersValue(e,tb,r.defaultValues(tb)),TS in e&&(this.nextUpdate=u.getParametersValue(e,TS,r.defaultValues(TS))),VS in e&&(this.revokedCertificates=u.getParametersValue(e,VS,r.defaultValues(VS))),RS in e&&(this.crlExtensions=u.getParametersValue(e,RS,r.defaultValues(RS))),this.signatureAlgorithm=u.getParametersValue(e,Am,r.defaultValues(Am)),this.signatureValue=u.getParametersValue(e,wm,r.defaultValues(wm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Q_:return ct;case Wd:return 0;case Z_:return new b;case eb:return new je;case tb:return new wt;case TS:return new wt;case VS:return[];case RS:return new ut;case Am:return new b;case wm:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||"CertificateList",value:[Cj(e),b.schema(t.signatureAlgorithm||{names:{blockName:Am}}),new a.BitString({name:t.signatureValue||wm})]})}fromSchema(e){u.clearProps(e,bj);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.tbsView=t.result.tbsCertList.valueBeforeDecodeView,RA in t.result&&(this.version=t.result[RA].valueBlock.valueDec),this.signature=new b({schema:t.result[uC]}),this.issuer=new je({schema:t.result[lC]}),this.thisUpdate=new wt({schema:t.result[DA]}),hg in t.result&&(this.nextUpdate=new wt({schema:t.result[hg]})),qA in t.result&&(this.revokedCertificates=Array.from(t.result[qA],s=>new lg({schema:s}))),jA in t.result&&(this.crlExtensions=new ut({schema:t.result[jA]})),this.signatureAlgorithm=new b({schema:t.result.signatureAlgorithm}),this.signatureValue=t.result.signatureValue}encodeTBS(){let e=[];return this.version!==r.defaultValues(Wd)&&e.push(new a.Integer({value:this.version})),e.push(this.signature.toSchema()),e.push(this.issuer.toSchema()),e.push(this.thisUpdate.toSchema()),this.nextUpdate&&e.push(this.nextUpdate.toSchema()),this.revokedCertificates&&e.push(new a.Sequence({value:Array.from(this.revokedCertificates,t=>t.toSchema())})),this.crlExtensions&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[this.crlExtensions.toSchema()]})),new a.Sequence({value:e})}toSchema(e=!1){let t;if(e)t=this.encodeTBS();else{if(!this.tbsView.byteLength)return r.schema();let s=a.fromBER(this.tbsView);I.assert(s,"TBS Certificate Revocation List"),t=s.result}return new a.Sequence({value:[t,this.signatureAlgorithm.toSchema(),this.signatureValue]})}toJSON(){let e={tbs:ie.Convert.ToHex(this.tbsView),version:this.version,signature:this.signature.toJSON(),issuer:this.issuer.toJSON(),thisUpdate:this.thisUpdate.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signatureValue:this.signatureValue.toJSON()};return this.version!==r.defaultValues(Wd)&&(e.version=this.version),this.nextUpdate&&(e.nextUpdate=this.nextUpdate.toJSON()),this.revokedCertificates&&(e.revokedCertificates=Array.from(this.revokedCertificates,t=>t.toJSON())),this.crlExtensions&&(e.crlExtensions=this.crlExtensions.toJSON()),e}isCertificateRevoked(e){if(!this.issuer.isEqual(e.issuer)||!this.revokedCertificates)return!1;for(let t of this.revokedCertificates)if(t.userCertificate.isEqual(e.serialNumber))return!0;return!1}async sign(e,t="SHA-1",s=ae(!0)){if(!e)throw new Error("Need to provide a private key for signing");let i=await s.getSignatureParameters(e,t),{parameters:n}=i;this.signature=i.signatureAlgorithm,this.signatureAlgorithm=i.signatureAlgorithm,this.tbsView=new Uint8Array(this.encodeTBS().toBER());let o=await s.signWithPrivateKey(this.tbsView,e,n);this.signatureValue=new a.BitString({valueHex:o})}async verify(e={},t=ae(!0)){let s;if(e.issuerCertificate&&(s=e.issuerCertificate.subjectPublicKeyInfo,!this.issuer.isEqual(e.issuerCertificate.subject)))return!1;if(e.publicKeyInfo&&(s=e.publicKeyInfo),!s)throw new Error("Issuer's certificate must be provided as an input parameter");if(this.crlExtensions){for(let i of this.crlExtensions.extensions)if(i.critical&&!Pj.includes(i.extnID))return!1}return t.verifyWithPublicKey(this.tbsView,this.signatureValue,s,this.signatureAlgorithm)}};Xn.CLASS_NAME="CertificateRevocationList";var Uu="crlId",Hu="crlValue",zd="parsedValue",Ij=[Uu,Hu],fg=class r extends B{constructor(e={}){super(),this.crlId=u.getParametersValue(e,Uu,r.defaultValues(Uu)),this.crlValue=u.getParametersValue(e,Hu,r.defaultValues(Hu)),zd in e&&(this.parsedValue=u.getParametersValue(e,zd,r.defaultValues(zd))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Uu:return f;case Hu:return new a.Any;case zd:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Uu:return t===f;case Hu:return t instanceof a.Any;case zd:return t instanceof Object&&Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.id||"id"}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any({name:t.value||"value"})]})]})}fromSchema(e){u.clearProps(e,Ij);let t=a.compareSchema(e,e,r.schema({names:{id:Uu,value:Hu}}));if(I.assertSchema(t,this.className),this.crlId=t.result.crlId.valueBlock.toString(),this.crlValue=t.result.crlValue,this.crlId===vb)this.parsedValue=Xn.fromBER(this.certValue.valueBlock.valueHex);else throw new Error(`Incorrect CRL_ID value in CRLBag: ${this.crlId}`)}toSchema(){return this.parsedValue&&(this.crlId=vb,this.crlValue=new a.OctetString({valueHex:this.parsedValue.toSchema().toBER(!1)})),new a.Sequence({value:[new a.ObjectIdentifier({value:this.crlId}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.crlValue.toSchema()]})]})}toJSON(){return{crlId:this.crlId,crlValue:this.crlValue.toJSON()}}};fg.CLASS_NAME="CRLBag";var Ku="version",$u="encryptedContentInfo",Sn="unprotectedAttrs",Ej=[Ku,$u,Sn],Qn=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Ku,r.defaultValues(Ku)),this.encryptedContentInfo=u.getParametersValue(e,$u,r.defaultValues($u)),Sn in e&&(this.unprotectedAttrs=u.getParametersValue(e,Sn,r.defaultValues(Sn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ku:return 0;case $u:return new Nt;case Sn:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Ku:return t===0;case $u:return Nt.compareWithDefault("contentType",t.contentType)&&Nt.compareWithDefault("contentEncryptionAlgorithm",t.contentEncryptionAlgorithm)&&Nt.compareWithDefault("encryptedContent",t.encryptedContent);case Sn:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),Nt.schema(t.encryptedContentInfo||{}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Repeated({name:t.unprotectedAttrs||f,value:Qe.schema()})]})]})}fromSchema(e){u.clearProps(e,Ej);let t=a.compareSchema(e,e,r.schema({names:{version:Ku,encryptedContentInfo:{names:{blockName:$u}},unprotectedAttrs:Sn}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.encryptedContentInfo=new Nt({schema:t.result.encryptedContentInfo}),Sn in t.result&&(this.unprotectedAttrs=Array.from(t.result.unprotectedAttrs,s=>new Qe({schema:s})))}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),e.push(this.encryptedContentInfo.toSchema()),this.unprotectedAttrs&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:Array.from(this.unprotectedAttrs,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={version:this.version,encryptedContentInfo:this.encryptedContentInfo.toJSON()};return this.unprotectedAttrs&&(e.unprotectedAttrs=Array.from(this.unprotectedAttrs,t=>t.toJSON())),e}async encrypt(e,t=ae(!0)){xe.assert(e,"parameters","object");let s={...e,contentType:"1.2.840.113549.1.7.1"};this.encryptedContentInfo=await t.encryptEncryptedContentInfo(s)}async decrypt(e,t=ae(!0)){xe.assert(e,"parameters","object");let s={...e,encryptedContentInfo:this.encryptedContentInfo};return t.decryptEncryptedContentInfo(s)}};Qn.CLASS_NAME="EncryptedData";var so="encryptionAlgorithm",An="encryptedData",Yd="parsedValue",kj=[so,An],dg=class r extends B{constructor(e={}){super(),this.encryptionAlgorithm=u.getParametersValue(e,so,r.defaultValues(so)),this.encryptedData=u.getParametersValue(e,An,r.defaultValues(An)),Yd in e&&(this.parsedValue=u.getParametersValue(e,Yd,r.defaultValues(Yd))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case so:return new b;case An:return new a.OctetString;case Yd:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case so:return b.compareWithDefault("algorithmId",t.algorithmId)&&!("algorithmParams"in t);case An:return t.isEqual(r.defaultValues(e));case Yd:return t instanceof Object&&Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.encryptionAlgorithm||{names:{blockName:so}}),new a.Choice({value:[new a.OctetString({name:t.encryptedData||An}),new a.OctetString({idBlock:{isConstructed:!0},name:t.encryptedData||An})]})]})}fromSchema(e){u.clearProps(e,kj);let t=a.compareSchema(e,e,r.schema({names:{encryptionAlgorithm:{names:{blockName:so}},encryptedData:An}}));I.assertSchema(t,this.className),this.encryptionAlgorithm=new b({schema:t.result.encryptionAlgorithm}),this.encryptedData=t.result.encryptedData}toSchema(){return new a.Sequence({value:[this.encryptionAlgorithm.toSchema(),this.encryptedData]})}toJSON(){return{encryptionAlgorithm:this.encryptionAlgorithm.toJSON(),encryptedData:this.encryptedData.toJSON()}}async parseInternalValues(e,t=ae(!0)){let i=await new Qn({encryptedContentInfo:new Nt({contentEncryptionAlgorithm:this.encryptionAlgorithm,encryptedContent:this.encryptedData})}).decrypt(e,t);this.parsedValue=Ni.fromBER(i)}async makeInternalValues(e,t=ae(!0)){if(!this.parsedValue)throw new Error('Please initialize "parsedValue" first');let s=new Qn,i={...e,contentToEncrypt:this.parsedValue.toSchema().toBER(!1)};if(await s.encrypt(i,t),!s.encryptedContentInfo.encryptedContent)throw new Error("The filed `encryptedContent` in EncryptedContentInfo is empty");this.encryptionAlgorithm=s.encryptedContentInfo.contentEncryptionAlgorithm,this.encryptedData=s.encryptedContentInfo.encryptedContent}};dg.CLASS_NAME="PKCS8ShroudedKeyBag";var Fu="secretTypeId",Ju="secretValue",Nj=[Fu,Ju],pg=class r extends B{constructor(e={}){super(),this.secretTypeId=u.getParametersValue(e,Fu,r.defaultValues(Fu)),this.secretValue=u.getParametersValue(e,Ju,r.defaultValues(Ju)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Fu:return f;case Ju:return new a.Any;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Fu:return t===f;case Ju:return t instanceof a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.id||"id"}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any({name:t.value||"value"})]})]})}fromSchema(e){u.clearProps(e,Nj);let t=a.compareSchema(e,e,r.schema({names:{id:Fu,value:Ju}}));I.assertSchema(t,this.className),this.secretTypeId=t.result.secretTypeId.valueBlock.toString(),this.secretValue=t.result.secretValue}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.secretTypeId}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.secretValue.toSchema()]})]})}toJSON(){return{secretTypeId:this.secretTypeId,secretValue:this.secretValue.toJSON()}}};pg.CLASS_NAME="SecretBag";var MA=class r{static getItems(){return this.items||(this.items={},r.register("1.2.840.113549.1.12.10.1.1",Ni),r.register("1.2.840.113549.1.12.10.1.2",dg),r.register("1.2.840.113549.1.12.10.1.3",ug),r.register("1.2.840.113549.1.12.10.1.4",fg),r.register("1.2.840.113549.1.12.10.1.5",pg),r.register("1.2.840.113549.1.12.10.1.6",Ii)),this.items}static register(e,t){this.getItems()[e]=t}static find(e){return this.getItems()[e]||null}},io="bagId",no="bagValue",pi="bagAttributes",Bj=[io,no,pi],ph=class r extends B{constructor(e={}){super(),this.bagId=u.getParametersValue(e,io,r.defaultValues(io)),this.bagValue=u.getParametersValue(e,no,r.defaultValues(no)),pi in e&&(this.bagAttributes=u.getParametersValue(e,pi,r.defaultValues(pi))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case io:return f;case no:return new a.Any;case pi:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case io:return t===f;case no:return t instanceof a.Any;case pi:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.bagId||io}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any({name:t.bagValue||no})]}),new a.Set({optional:!0,value:[new a.Repeated({name:t.bagAttributes||pi,value:Qe.schema()})]})]})}fromSchema(e){u.clearProps(e,Bj);let t=a.compareSchema(e,e,r.schema({names:{bagId:io,bagValue:no,bagAttributes:pi}}));I.assertSchema(t,this.className),this.bagId=t.result.bagId.valueBlock.toString();let s=MA.find(this.bagId);if(!s)throw new Error(`Invalid BAG_ID for SafeBag: ${this.bagId}`);this.bagValue=new s({schema:t.result.bagValue}),pi in t.result&&(this.bagAttributes=Array.from(t.result.bagAttributes,i=>new Qe({schema:i})))}toSchema(){let e=[new a.ObjectIdentifier({value:this.bagId}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.bagValue.toSchema()]})];return this.bagAttributes&&e.push(new a.Set({value:Array.from(this.bagAttributes,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={bagId:this.bagId,bagValue:this.bagValue.toJSON()};return this.bagAttributes&&(e.bagAttributes=Array.from(this.bagAttributes,t=>t.toJSON())),e}};ph.CLASS_NAME="SafeBag";var Au="safeBags",Ii=class r extends B{constructor(e={}){super(),this.safeBags=u.getParametersValue(e,Au,r.defaultValues(Au)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Au?[]:super.defaultValues(e)}static compareWithDefault(e,t){return e===Au?t.length===0:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.safeBags||f,value:ph.schema()})]})}fromSchema(e){u.clearProps(e,[Au]);let t=a.compareSchema(e,e,r.schema({names:{safeBags:Au}}));I.assertSchema(t,this.className),this.safeBags=Array.from(t.result.safeBags,s=>new ph({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.safeBags,e=>e.toSchema())})}toJSON(){return{safeBags:Array.from(this.safeBags,e=>e.toJSON())}}};Ii.CLASS_NAME="SafeContents";var _m="otherCertFormat",bm="otherCert",xj=[_m,bm],To=class r extends B{constructor(e={}){super(),this.otherCertFormat=u.getParametersValue(e,_m,r.defaultValues(_m)),this.otherCert=u.getParametersValue(e,bm,r.defaultValues(bm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case _m:return f;case bm:return new a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.otherCertFormat||_m}),new a.Any({name:t.otherCert||bm})]})}fromSchema(e){u.clearProps(e,xj);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.otherCertFormat=t.result.otherCertFormat.valueBlock.toString(),this.otherCert=t.result.otherCert}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.otherCertFormat}),this.otherCert]})}toJSON(){let e={otherCertFormat:this.otherCertFormat};return this.otherCert instanceof a.Any||(e.otherCert=this.otherCert.toJSON()),e}},Cm="certificates",Oj=[Cm],Ds=class r extends B{constructor(e={}){super(),this.certificates=u.getParametersValue(e,Cm,r.defaultValues(Cm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===Cm?[]:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Set({name:t.blockName||f,value:[new a.Repeated({name:t.certificates||Cm,value:new a.Choice({value:[$t.schema(),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Any]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[new a.Sequence]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:rs.schema().valueBlock.value}),new a.Constructed({idBlock:{tagClass:3,tagNumber:3},value:To.schema().valueBlock.value})]})})]})}fromSchema(e){u.clearProps(e,Oj);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.certificates=Array.from(t.result.certificates||[],s=>{let i=s.idBlock.tagNumber;if(s.idBlock.tagClass===1)return new $t({schema:s});let n=new a.Sequence({value:s.valueBlock.value});switch(i){case 1:return n.valueBlock.value[0].valueBlock.value[0].valueBlock.valueDec===1?new rs({schema:n}):new qo({schema:n});case 2:return new rs({schema:n});case 3:return new To({schema:n})}return s})}toSchema(){return new a.Set({value:Array.from(this.certificates,e=>{switch(!0){case e instanceof $t:return e.toSchema();case e instanceof qo:return new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:e.toSchema().valueBlock.value});case e instanceof rs:return new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:e.toSchema().valueBlock.value});case e instanceof To:return new a.Constructed({idBlock:{tagClass:3,tagNumber:3},value:e.toSchema().valueBlock.value})}return e.toSchema()})})}toJSON(){return{certificates:Array.from(this.certificates,e=>e.toJSON())}}};Ds.CLASS_NAME="CertificateSet";var Pm="otherRevInfoFormat",Im="otherRevInfo",Tj=[Pm,Im],Fn=class r extends B{constructor(e={}){super(),this.otherRevInfoFormat=u.getParametersValue(e,Pm,r.defaultValues(Pm)),this.otherRevInfo=u.getParametersValue(e,Im,r.defaultValues(Im)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Pm:return f;case Im:return new a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.otherRevInfoFormat||Pm}),new a.Any({name:t.otherRevInfo||Im})]})}fromSchema(e){u.clearProps(e,Tj);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.otherRevInfoFormat=t.result.otherRevInfoFormat.valueBlock.toString(),this.otherRevInfo=t.result.otherRevInfo}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.otherRevInfoFormat}),this.otherRevInfo]})}toJSON(){let e={otherRevInfoFormat:this.otherRevInfoFormat};return this.otherRevInfo instanceof a.Any||(e.otherRevInfo=this.otherRevInfo.toJSON()),e}};Fn.CLASS_NAME="OtherRevocationInfoFormat";var Em="crls",rb="otherRevocationInfos",Vj=[Em],Jn=class r extends B{constructor(e={}){super(),this.crls=u.getParametersValue(e,Em,r.defaultValues(Em)),this.otherRevocationInfos=u.getParametersValue(e,rb,r.defaultValues(rb)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Em:return[];case rb:return[];default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Set({name:t.blockName||f,value:[new a.Repeated({name:t.crls||f,value:new a.Choice({value:[Xn.schema(),new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[new a.ObjectIdentifier,new a.Any]})]})})]})}fromSchema(e){u.clearProps(e,Vj);let t=a.compareSchema(e,e,r.schema({names:{crls:Em}}));if(I.assertSchema(t,this.className),t.result.crls)for(let s of t.result.crls)s.idBlock.tagClass===1?this.crls.push(new Xn({schema:s})):this.otherRevocationInfos.push(new Fn({schema:s}))}toSchema(){let e=[];return e.push(...Array.from(this.crls,t=>t.toSchema())),e.push(...Array.from(this.otherRevocationInfos,t=>{let s=t.toSchema();return s.idBlock.tagClass=3,s.idBlock.tagNumber=1,s})),new a.Set({value:e})}toJSON(){return{crls:Array.from(this.crls,e=>e.toJSON()),otherRevocationInfos:Array.from(this.otherRevocationInfos,e=>e.toJSON())}}};Jn.CLASS_NAME="RevocationInfoChoices";var km="certs",ao="crls",Rj=[km,ao],Vo=class r extends B{constructor(e={}){super(),this.crls=u.getParametersValue(e,ao,r.defaultValues(ao)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case km:return new Ds;case ao:return new Jn;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case km:return t.certificates.length===0;case ao:return t.crls.length===0&&t.otherRevocationInfos.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({name:t.certs||f,optional:!0,idBlock:{tagClass:3,tagNumber:0},value:Ds.schema().valueBlock.value}),new a.Constructed({name:t.crls||f,optional:!0,idBlock:{tagClass:3,tagNumber:1},value:Jn.schema().valueBlock.value})]})}fromSchema(e){u.clearProps(e,Rj);let t=a.compareSchema(e,e,r.schema({names:{certs:km,crls:ao}}));I.assertSchema(t,this.className),km in t.result&&(this.certs=new Ds({schema:new a.Set({value:t.result.certs.valueBlock.value})})),ao in t.result&&(this.crls=new Jn({schema:new a.Set({value:t.result.crls.valueBlock.value})}))}toSchema(){let e=[];return this.certs&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.certs.toSchema().valueBlock.value})),this.crls&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:this.crls.toSchema().valueBlock.value})),new a.Sequence({value:e})}toJSON(){let e={};return this.certs&&(e.certs=this.certs.toJSON()),this.crls&&(e.crls=this.crls.toJSON()),e}};Vo.CLASS_NAME="OriginatorInfo";var Nm="issuer",Bm="serialNumber",Dj=[Nm,Bm],_t=class r extends B{constructor(e={}){super(),this.issuer=u.getParametersValue(e,Nm,r.defaultValues(Nm)),this.serialNumber=u.getParametersValue(e,Bm,r.defaultValues(Bm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Nm:return new je;case Bm:return new a.Integer;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[je.schema(t.issuer||{}),new a.Integer({name:t.serialNumber||f})]})}fromSchema(e){u.clearProps(e,Dj);let t=a.compareSchema(e,e,r.schema({names:{issuer:{names:{blockName:Nm}},serialNumber:Bm}}));I.assertSchema(t,this.className),this.issuer=new je({schema:t.result.issuer}),this.serialNumber=t.result.serialNumber}toSchema(){return new a.Sequence({value:[this.issuer.toSchema(),this.serialNumber]})}toJSON(){return{issuer:this.issuer.toJSON(),serialNumber:this.serialNumber.toJSON()}}};_t.CLASS_NAME="IssuerAndSerialNumber";var DS="variant",Xd="value",qj=["blockName"],mg=class r extends B{constructor(e={}){super(),this.variant=u.getParametersValue(e,DS,r.defaultValues(DS)),Xd in e&&(this.value=u.getParametersValue(e,Xd,r.defaultValues(Xd))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case DS:return-1;case Xd:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case DS:return t===-1;case Xd:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Choice({value:[_t.schema({names:{blockName:t.blockName||f}}),new a.Primitive({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:0}})]})}fromSchema(e){u.clearProps(e,qj);let t=a.compareSchema(e,e,r.schema({names:{blockName:"blockName"}}));I.assertSchema(t,this.className),t.result.blockName.idBlock.tagClass===1?(this.variant=1,this.value=new _t({schema:t.result.blockName})):(this.variant=2,this.value=new a.OctetString({valueHex:t.result.blockName.valueBlock.valueHex}))}toSchema(){switch(this.variant){case 1:if(!(this.value instanceof _t))throw new Error("Incorrect type of RecipientIdentifier.value. It should be IssuerAndSerialNumber.");return this.value.toSchema();case 2:if(!(this.value instanceof a.OctetString))throw new Error("Incorrect type of RecipientIdentifier.value. It should be ASN.1 OctetString.");return new a.Primitive({idBlock:{tagClass:3,tagNumber:0},valueHex:this.value.valueBlock.valueHexView});default:return new a.Any}}toJSON(){let e={variant:this.variant};return(this.variant===1||this.variant===2)&&this.value&&(e.value=this.value.toJSON()),e}};mg.CLASS_NAME="RecipientIdentifier";var oo="version",Gu="rid",Wu="keyEncryptionAlgorithm",zu="encryptedKey",qS="recipientCertificate",jj=[oo,Gu,Wu,zu],jo=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,oo,r.defaultValues(oo)),this.rid=u.getParametersValue(e,Gu,r.defaultValues(Gu)),this.keyEncryptionAlgorithm=u.getParametersValue(e,Wu,r.defaultValues(Wu)),this.encryptedKey=u.getParametersValue(e,zu,r.defaultValues(zu)),this.recipientCertificate=u.getParametersValue(e,qS,r.defaultValues(qS)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case oo:return-1;case Gu:return{};case Wu:return new b;case zu:return new a.OctetString;case qS:return new $t;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case oo:return t===r.defaultValues(oo);case Gu:return Object.keys(t).length===0;case Wu:case zu:return t.isEqual(r.defaultValues(e));case qS:return!1;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),mg.schema(t.rid||{}),b.schema(t.keyEncryptionAlgorithm||{}),new a.OctetString({name:t.encryptedKey||f})]})}fromSchema(e){u.clearProps(e,jj);let t=a.compareSchema(e,e,r.schema({names:{version:oo,rid:{names:{blockName:Gu}},keyEncryptionAlgorithm:{names:{blockName:Wu}},encryptedKey:zu}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,t.result.rid.idBlock.tagClass===3?this.rid=new a.OctetString({valueHex:t.result.rid.valueBlock.valueHex}):this.rid=new _t({schema:t.result.rid}),this.keyEncryptionAlgorithm=new b({schema:t.result.keyEncryptionAlgorithm}),this.encryptedKey=t.result.encryptedKey}toSchema(){let e=[];return this.rid instanceof _t?(this.version=0,e.push(new a.Integer({value:this.version})),e.push(this.rid.toSchema())):(this.version=2,e.push(new a.Integer({value:this.version})),e.push(new a.Primitive({idBlock:{tagClass:3,tagNumber:0},valueHex:this.rid.valueBlock.valueHexView}))),e.push(this.keyEncryptionAlgorithm.toSchema()),e.push(this.encryptedKey),new a.Sequence({value:e})}toJSON(){return{version:this.version,rid:this.rid.toJSON(),keyEncryptionAlgorithm:this.keyEncryptionAlgorithm.toJSON(),encryptedKey:this.encryptedKey.toJSON()}}};jo.CLASS_NAME="KeyTransRecipientInfo";var Yu="algorithm",Xu="publicKey",Mj=[Yu,Xu],Mo=class r extends B{constructor(e={}){super(),this.algorithm=u.getParametersValue(e,Yu,r.defaultValues(Yu)),this.publicKey=u.getParametersValue(e,Xu,r.defaultValues(Xu)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Yu:return new b;case Xu:return new a.BitString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Yu:case Xu:return t.isEqual(r.defaultValues(e));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.algorithm||{}),new a.BitString({name:t.publicKey||f})]})}fromSchema(e){u.clearProps(e,Mj);let t=a.compareSchema(e,e,r.schema({names:{algorithm:{names:{blockName:Yu}},publicKey:Xu}}));I.assertSchema(t,this.className),this.algorithm=new b({schema:t.result.algorithm}),this.publicKey=t.result.publicKey}toSchema(){return new a.Sequence({value:[this.algorithm.toSchema(),this.publicKey]})}toJSON(){return{algorithm:this.algorithm.toJSON(),publicKey:this.publicKey.toJSON()}}};Mo.CLASS_NAME="OriginatorPublicKey";var jS="variant",Qd="value",Lj=["blockName"],Gn=class r extends B{constructor(e={}){super(),this.variant=u.getParametersValue(e,jS,r.defaultValues(jS)),Qd in e&&(this.value=u.getParametersValue(e,Qd,r.defaultValues(Qd))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case jS:return-1;case Qd:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case jS:return t===-1;case Qd:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Choice({value:[_t.schema({names:{blockName:t.blockName||f}}),new a.Primitive({idBlock:{tagClass:3,tagNumber:0},name:t.blockName||f}),new a.Constructed({idBlock:{tagClass:3,tagNumber:1},name:t.blockName||f,value:Mo.schema().valueBlock.value})]})}fromSchema(e){u.clearProps(e,Lj);let t=a.compareSchema(e,e,r.schema({names:{blockName:"blockName"}}));I.assertSchema(t,this.className),t.result.blockName.idBlock.tagClass===1?(this.variant=1,this.value=new _t({schema:t.result.blockName})):t.result.blockName.idBlock.tagNumber===0?(t.result.blockName.idBlock.tagClass=1,t.result.blockName.idBlock.tagNumber=4,this.variant=2,this.value=t.result.blockName):(this.variant=3,this.value=new Mo({schema:new a.Sequence({value:t.result.blockName.valueBlock.value})}))}toSchema(){switch(this.variant){case 1:return this.value.toSchema();case 2:return this.value.idBlock.tagClass=3,this.value.idBlock.tagNumber=0,this.value;case 3:{let e=this.value.toSchema();return e.idBlock.tagClass=3,e.idBlock.tagNumber=1,e}default:return new a.Any}}toJSON(){let e={variant:this.variant};return(this.variant===1||this.variant===2||this.variant===3)&&(e.value=this.value.toJSON()),e}};Gn.CLASS_NAME="OriginatorIdentifierOrKey";var Qu="keyAttrId",ks="keyAttr",Uj=[Qu,ks],qs=class r extends B{constructor(e={}){super(),this.keyAttrId=u.getParametersValue(e,Qu,r.defaultValues(Qu)),ks in e&&(this.keyAttr=u.getParametersValue(e,ks,r.defaultValues(ks))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Qu:return f;case ks:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Qu:return typeof t=="string"&&t===f;case ks:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({optional:t.optional||!0,name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.keyAttrId||f}),new a.Any({optional:!0,name:t.keyAttr||f})]})}fromSchema(e){u.clearProps(e,Uj);let t=a.compareSchema(e,e,r.schema({names:{keyAttrId:Qu,keyAttr:ks}}));I.assertSchema(t,this.className),this.keyAttrId=t.result.keyAttrId.valueBlock.toString(),ks in t.result&&(this.keyAttr=t.result.keyAttr)}toSchema(){let e=[];return e.push(new a.ObjectIdentifier({value:this.keyAttrId})),ks in this&&e.push(this.keyAttr),new a.Sequence({value:e})}toJSON(){let e={keyAttrId:this.keyAttrId};return ks in this&&(e.keyAttr=this.keyAttr.toJSON()),e}};qs.CLASS_NAME="OtherKeyAttribute";var co="subjectKeyIdentifier",wn="date",_n="other",Hj=[co,wn,_n],Lo=class r extends B{constructor(e={}){super(),this.subjectKeyIdentifier=u.getParametersValue(e,co,r.defaultValues(co)),wn in e&&(this.date=u.getParametersValue(e,wn,r.defaultValues(wn))),_n in e&&(this.other=u.getParametersValue(e,_n,r.defaultValues(_n))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case co:return new a.OctetString;case wn:return new a.GeneralizedTime;case _n:return new qs;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case co:return t.isEqual(r.defaultValues(co));case wn:return t.year===0&&t.month===0&&t.day===0&&t.hour===0&&t.minute===0&&t.second===0&&t.millisecond===0;case _n:return t.keyAttrId===f&&!("keyAttr"in t);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.OctetString({name:t.subjectKeyIdentifier||f}),new a.GeneralizedTime({optional:!0,name:t.date||f}),qs.schema(t.other||{})]})}fromSchema(e){u.clearProps(e,Hj);let t=a.compareSchema(e,e,r.schema({names:{subjectKeyIdentifier:co,date:wn,other:{names:{blockName:_n}}}}));I.assertSchema(t,this.className),this.subjectKeyIdentifier=t.result.subjectKeyIdentifier,wn in t.result&&(this.date=t.result.date),_n in t.result&&(this.other=new qs({schema:t.result.other}))}toSchema(){let e=[];return e.push(this.subjectKeyIdentifier),this.date&&e.push(this.date),this.other&&e.push(this.other.toSchema()),new a.Sequence({value:e})}toJSON(){let e={subjectKeyIdentifier:this.subjectKeyIdentifier.toJSON()};return this.date&&(e.date=this.date.toJSON()),this.other&&(e.other=this.other.toJSON()),e}};Lo.CLASS_NAME="RecipientKeyIdentifier";var MS="variant",LS="value",Kj=["blockName"],ki=class r extends B{constructor(e={}){super(),this.variant=u.getParametersValue(e,MS,r.defaultValues(MS)),this.value=u.getParametersValue(e,LS,r.defaultValues(LS)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case MS:return-1;case LS:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case MS:return t===-1;case LS:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Choice({value:[_t.schema(t.issuerAndSerialNumber||{names:{blockName:t.blockName||f}}),new a.Constructed({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:0},value:Lo.schema(t.rKeyId||{names:{blockName:t.blockName||f}}).valueBlock.value})]})}fromSchema(e){u.clearProps(e,Kj);let t=a.compareSchema(e,e,r.schema({names:{blockName:"blockName"}}));I.assertSchema(t,this.className),t.result.blockName.idBlock.tagClass===1?(this.variant=1,this.value=new _t({schema:t.result.blockName})):(this.variant=2,this.value=new Lo({schema:new a.Sequence({value:t.result.blockName.valueBlock.value})}))}toSchema(){switch(this.variant){case 1:return this.value.toSchema();case 2:return new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.value.toSchema().valueBlock.value});default:return new a.Any}}toJSON(){let e={variant:this.variant};return(this.variant===1||this.variant===2)&&(e.value=this.value.toJSON()),e}};ki.CLASS_NAME="KeyAgreeRecipientIdentifier";var Zu="rid",uo="encryptedKey",$j=[Zu,uo],Uo=class r extends B{constructor(e={}){super(),this.rid=u.getParametersValue(e,Zu,r.defaultValues(Zu)),this.encryptedKey=u.getParametersValue(e,uo,r.defaultValues(uo)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Zu:return new ki;case uo:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Zu:return t.variant===-1&&!("value"in t);case uo:return t.isEqual(r.defaultValues(uo));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[ki.schema(t.rid||{}),new a.OctetString({name:t.encryptedKey||f})]})}fromSchema(e){u.clearProps(e,$j);let t=a.compareSchema(e,e,r.schema({names:{rid:{names:{blockName:Zu}},encryptedKey:uo}}));I.assertSchema(t,this.className),this.rid=new ki({schema:t.result.rid}),this.encryptedKey=t.result.encryptedKey}toSchema(){return new a.Sequence({value:[this.rid.toSchema(),this.encryptedKey]})}toJSON(){return{rid:this.rid.toJSON(),encryptedKey:this.encryptedKey.toJSON()}}};Uo.CLASS_NAME="RecipientEncryptedKey";var US="encryptedKeys",bx="RecipientEncryptedKeys",Fj=[bx],Wn=class r extends B{constructor(e={}){super(),this.encryptedKeys=u.getParametersValue(e,US,r.defaultValues(US)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){return e===US?[]:super.defaultValues(e)}static compareWithDefault(e,t){return e===US?t.length===0:super.defaultValues(e)}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.RecipientEncryptedKeys||f,value:Uo.schema()})]})}fromSchema(e){u.clearProps(e,Fj);let t=a.compareSchema(e,e,r.schema({names:{RecipientEncryptedKeys:bx}}));I.assertSchema(t,this.className),this.encryptedKeys=Array.from(t.result.RecipientEncryptedKeys,s=>new Uo({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.encryptedKeys,e=>e.toSchema())})}toJSON(){return{encryptedKeys:Array.from(this.encryptedKeys,e=>e.toJSON())}}};Wn.CLASS_NAME="RecipientEncryptedKeys";var el="version",tl="originator",mi="ukm",rl="keyEncryptionAlgorithm",sl="recipientEncryptedKeys",HS="recipientCertificate",KS="recipientPublicKey",Jj=[el,tl,mi,rl,sl],Ho=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,el,r.defaultValues(el)),this.originator=u.getParametersValue(e,tl,r.defaultValues(tl)),mi in e&&(this.ukm=u.getParametersValue(e,mi,r.defaultValues(mi))),this.keyEncryptionAlgorithm=u.getParametersValue(e,rl,r.defaultValues(rl)),this.recipientEncryptedKeys=u.getParametersValue(e,sl,r.defaultValues(sl)),this.recipientCertificate=u.getParametersValue(e,HS,r.defaultValues(HS)),this.recipientPublicKey=u.getParametersValue(e,KS,r.defaultValues(KS)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case el:return 0;case tl:return new Gn;case mi:return new a.OctetString;case rl:return new b;case sl:return new Wn;case HS:return new $t;case KS:return null;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case el:return t===0;case tl:return t.variant===-1&&!("value"in t);case mi:return t.isEqual(r.defaultValues(mi));case rl:return t.algorithmId===f&&!("algorithmParams"in t);case sl:return t.encryptedKeys.length===0;case HS:return!1;case KS:return!1;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[Gn.schema(t.originator||{})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.OctetString({name:t.ukm||f})]}),b.schema(t.keyEncryptionAlgorithm||{}),Wn.schema(t.recipientEncryptedKeys||{})]})}fromSchema(e){u.clearProps(e,Jj);let t=a.compareSchema(e,e,r.schema({names:{version:el,originator:{names:{blockName:tl}},ukm:mi,keyEncryptionAlgorithm:{names:{blockName:rl}},recipientEncryptedKeys:{names:{blockName:sl}}}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.originator=new Gn({schema:t.result.originator}),mi in t.result&&(this.ukm=t.result.ukm),this.keyEncryptionAlgorithm=new b({schema:t.result.keyEncryptionAlgorithm}),this.recipientEncryptedKeys=new Wn({schema:t.result.recipientEncryptedKeys})}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.originator.toSchema()]})),this.ukm&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[this.ukm]})),e.push(this.keyEncryptionAlgorithm.toSchema()),e.push(this.recipientEncryptedKeys.toSchema()),new a.Sequence({value:e})}toJSON(){let e={version:this.version,originator:this.originator.toJSON(),keyEncryptionAlgorithm:this.keyEncryptionAlgorithm.toJSON(),recipientEncryptedKeys:this.recipientEncryptedKeys.toJSON()};return this.ukm&&(e.ukm=this.ukm.toJSON()),e}};Ho.CLASS_NAME="KeyAgreeRecipientInfo";var lo="keyIdentifier",bn="date",Cn="other",Gj=[lo,bn,Cn],zn=class r extends B{constructor(e={}){super(),this.keyIdentifier=u.getParametersValue(e,lo,r.defaultValues(lo)),bn in e&&(this.date=u.getParametersValue(e,bn,r.defaultValues(bn))),Cn in e&&(this.other=u.getParametersValue(e,Cn,r.defaultValues(Cn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case lo:return new a.OctetString;case bn:return new a.GeneralizedTime;case Cn:return new qs;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case lo:return t.isEqual(r.defaultValues(lo));case bn:return t.year===0&&t.month===0&&t.day===0&&t.hour===0&&t.minute===0&&t.second===0&&t.millisecond===0;case Cn:return t.compareWithDefault("keyAttrId",t.keyAttrId)&&!("keyAttr"in t);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.OctetString({name:t.keyIdentifier||f}),new a.GeneralizedTime({optional:!0,name:t.date||f}),qs.schema(t.other||{})]})}fromSchema(e){u.clearProps(e,Gj);let t=a.compareSchema(e,e,r.schema({names:{keyIdentifier:lo,date:bn,other:{names:{blockName:Cn}}}}));I.assertSchema(t,this.className),this.keyIdentifier=t.result.keyIdentifier,bn in t.result&&(this.date=t.result.date),Cn in t.result&&(this.other=new qs({schema:t.result.other}))}toSchema(){let e=[];return e.push(this.keyIdentifier),this.date&&e.push(this.date),this.other&&e.push(this.other.toSchema()),new a.Sequence({value:e})}toJSON(){let e={keyIdentifier:this.keyIdentifier.toJSON()};return this.date&&(e.date=this.date),this.other&&(e.other=this.other.toJSON()),e}};zn.CLASS_NAME="KEKIdentifier";var il="version",nl="kekid",al="keyEncryptionAlgorithm",ho="encryptedKey",$S="preDefinedKEK",Wj=[il,nl,al,ho],Ko=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,il,r.defaultValues(il)),this.kekid=u.getParametersValue(e,nl,r.defaultValues(nl)),this.keyEncryptionAlgorithm=u.getParametersValue(e,al,r.defaultValues(al)),this.encryptedKey=u.getParametersValue(e,ho,r.defaultValues(ho)),this.preDefinedKEK=u.getParametersValue(e,$S,r.defaultValues($S)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case il:return 0;case nl:return new zn;case al:return new b;case ho:return new a.OctetString;case $S:return ct;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case"KEKRecipientInfo":return t===r.defaultValues(il);case nl:return t.compareWithDefault("keyIdentifier",t.keyIdentifier)&&!("date"in t)&&!("other"in t);case al:return t.algorithmId===f&&!("algorithmParams"in t);case ho:return t.isEqual(r.defaultValues(ho));case $S:return t.byteLength===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),zn.schema(t.kekid||{}),b.schema(t.keyEncryptionAlgorithm||{}),new a.OctetString({name:t.encryptedKey||f})]})}fromSchema(e){u.clearProps(e,Wj);let t=a.compareSchema(e,e,r.schema({names:{version:il,kekid:{names:{blockName:nl}},keyEncryptionAlgorithm:{names:{blockName:al}},encryptedKey:ho}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.kekid=new zn({schema:t.result.kekid}),this.keyEncryptionAlgorithm=new b({schema:t.result.keyEncryptionAlgorithm}),this.encryptedKey=t.result.encryptedKey}toSchema(){return new a.Sequence({value:[new a.Integer({value:this.version}),this.kekid.toSchema(),this.keyEncryptionAlgorithm.toSchema(),this.encryptedKey]})}toJSON(){return{version:this.version,kekid:this.kekid.toJSON(),keyEncryptionAlgorithm:this.keyEncryptionAlgorithm.toJSON(),encryptedKey:this.encryptedKey.toJSON()}}};Ko.CLASS_NAME="KEKRecipientInfo";var ol="version",Pn="keyDerivationAlgorithm",cl="keyEncryptionAlgorithm",fo="encryptedKey",FS="password",zj=[ol,Pn,cl,fo],$o=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,ol,r.defaultValues(ol)),Pn in e&&(this.keyDerivationAlgorithm=u.getParametersValue(e,Pn,r.defaultValues(Pn))),this.keyEncryptionAlgorithm=u.getParametersValue(e,cl,r.defaultValues(cl)),this.encryptedKey=u.getParametersValue(e,fo,r.defaultValues(fo)),this.password=u.getParametersValue(e,FS,r.defaultValues(FS)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ol:return-1;case Pn:return new b;case cl:return new b;case fo:return new a.OctetString;case FS:return ct;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case ol:return t===-1;case Pn:case cl:return t.algorithmId===f&&!("algorithmParams"in t);case fo:return t.isEqual(r.defaultValues(fo));case FS:return t.byteLength===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),new a.Constructed({name:t.keyDerivationAlgorithm||f,optional:!0,idBlock:{tagClass:3,tagNumber:0},value:b.schema().valueBlock.value}),b.schema(t.keyEncryptionAlgorithm||{}),new a.OctetString({name:t.encryptedKey||f})]})}fromSchema(e){u.clearProps(e,zj);let t=a.compareSchema(e,e,r.schema({names:{version:ol,keyDerivationAlgorithm:Pn,keyEncryptionAlgorithm:{names:{blockName:cl}},encryptedKey:fo}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,Pn in t.result&&(this.keyDerivationAlgorithm=new b({schema:new a.Sequence({value:t.result.keyDerivationAlgorithm.valueBlock.value})})),this.keyEncryptionAlgorithm=new b({schema:t.result.keyEncryptionAlgorithm}),this.encryptedKey=t.result.encryptedKey}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),this.keyDerivationAlgorithm&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:this.keyDerivationAlgorithm.toSchema().valueBlock.value})),e.push(this.keyEncryptionAlgorithm.toSchema()),e.push(this.encryptedKey),new a.Sequence({value:e})}toJSON(){let e={version:this.version,keyEncryptionAlgorithm:this.keyEncryptionAlgorithm.toJSON(),encryptedKey:this.encryptedKey.toJSON()};return this.keyDerivationAlgorithm&&(e.keyDerivationAlgorithm=this.keyDerivationAlgorithm.toJSON()),e}};$o.CLASS_NAME="PasswordRecipientInfo";var ul="oriType",po="oriValue",Yj=[ul,po],mh=class r extends B{constructor(e={}){super(),this.oriType=u.getParametersValue(e,ul,r.defaultValues(ul)),this.oriValue=u.getParametersValue(e,po,r.defaultValues(po)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ul:return f;case po:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case ul:return t===f;case po:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.oriType||f}),new a.Any({name:t.oriValue||f})]})}fromSchema(e){u.clearProps(e,Yj);let t=a.compareSchema(e,e,r.schema({names:{oriType:ul,oriValue:po}}));I.assertSchema(t,this.className),this.oriType=t.result.oriType.valueBlock.toString(),this.oriValue=t.result.oriValue}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.oriType}),this.oriValue]})}toJSON(){let e={oriType:this.oriType};return r.compareWithDefault(po,this.oriValue)||(e.oriValue=this.oriValue.toJSON()),e}};mh.CLASS_NAME="OtherRecipientInfo";var JS="variant",Zd="value",Xj=["blockName"],Bs=class r extends B{constructor(e={}){super(),this.variant=u.getParametersValue(e,JS,r.defaultValues(JS)),Zd in e&&(this.value=u.getParametersValue(e,Zd,r.defaultValues(Zd))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case JS:return-1;case Zd:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case JS:return t===r.defaultValues(e);case Zd:return Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Choice({value:[jo.schema({names:{blockName:t.blockName||f}}),new a.Constructed({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:1},value:Ho.schema().valueBlock.value}),new a.Constructed({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:2},value:Ko.schema().valueBlock.value}),new a.Constructed({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:3},value:$o.schema().valueBlock.value}),new a.Constructed({name:t.blockName||f,idBlock:{tagClass:3,tagNumber:4},value:mh.schema().valueBlock.value})]})}fromSchema(e){u.clearProps(e,Xj);let t=a.compareSchema(e,e,r.schema({names:{blockName:"blockName"}}));if(I.assertSchema(t,this.className),t.result.blockName.idBlock.tagClass===1)this.variant=1,this.value=new jo({schema:t.result.blockName});else{let s=new a.Sequence({value:t.result.blockName.valueBlock.value});switch(t.result.blockName.idBlock.tagNumber){case 1:this.variant=2,this.value=new Ho({schema:s});break;case 2:this.variant=3,this.value=new Ko({schema:s});break;case 3:this.variant=4,this.value=new $o({schema:s});break;case 4:this.variant=5,this.value=new mh({schema:s});break;default:throw new Error("Incorrect structure of RecipientInfo block")}}}toSchema(){we.assertEmpty(this.value,"value","RecipientInfo");let e=this.value.toSchema();switch(this.variant){case 1:return e;case 2:case 3:case 4:return e.idBlock.tagClass=3,e.idBlock.tagNumber=this.variant-1,e;default:return new a.Any}}toJSON(){let e={variant:this.variant};return this.value&&this.variant>=1&&this.variant<=4&&(e.value=this.value.toJSON()),e}};Bs.CLASS_NAME="RecipientInfo";var In="hashAlgorithm",En="maskGenAlgorithm",kn="pSourceAlgorithm",Qj=[In,En,kn],Ro=class r extends B{constructor(e={}){super(),this.hashAlgorithm=u.getParametersValue(e,In,r.defaultValues(In)),this.maskGenAlgorithm=u.getParametersValue(e,En,r.defaultValues(En)),this.pSourceAlgorithm=u.getParametersValue(e,kn,r.defaultValues(kn)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case In:return new b({algorithmId:"1.3.14.3.2.26",algorithmParams:new a.Null});case En:return new b({algorithmId:"1.2.840.113549.1.1.8",algorithmParams:new b({algorithmId:"1.3.14.3.2.26",algorithmParams:new a.Null}).toSchema()});case kn:return new b({algorithmId:"1.2.840.113549.1.1.9",algorithmParams:new a.OctetString({valueHex:new Uint8Array([218,57,163,238,94,107,75,13,50,85,191,239,149,96,24,144,175,216,7,9]).buffer})});default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Constructed({idBlock:{tagClass:3,tagNumber:0},optional:!0,value:[b.schema(t.hashAlgorithm||{})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:1},optional:!0,value:[b.schema(t.maskGenAlgorithm||{})]}),new a.Constructed({idBlock:{tagClass:3,tagNumber:2},optional:!0,value:[b.schema(t.pSourceAlgorithm||{})]})]})}fromSchema(e){u.clearProps(e,Qj);let t=a.compareSchema(e,e,r.schema({names:{hashAlgorithm:{names:{blockName:In}},maskGenAlgorithm:{names:{blockName:En}},pSourceAlgorithm:{names:{blockName:kn}}}}));I.assertSchema(t,this.className),In in t.result&&(this.hashAlgorithm=new b({schema:t.result.hashAlgorithm})),En in t.result&&(this.maskGenAlgorithm=new b({schema:t.result.maskGenAlgorithm})),kn in t.result&&(this.pSourceAlgorithm=new b({schema:t.result.pSourceAlgorithm}))}toSchema(){let e=[];return this.hashAlgorithm.isEqual(r.defaultValues(In))||e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.hashAlgorithm.toSchema()]})),this.maskGenAlgorithm.isEqual(r.defaultValues(En))||e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[this.maskGenAlgorithm.toSchema()]})),this.pSourceAlgorithm.isEqual(r.defaultValues(kn))||e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:[this.pSourceAlgorithm.toSchema()]})),new a.Sequence({value:e})}toJSON(){let e={};return this.hashAlgorithm.isEqual(r.defaultValues(In))||(e.hashAlgorithm=this.hashAlgorithm.toJSON()),this.maskGenAlgorithm.isEqual(r.defaultValues(En))||(e.maskGenAlgorithm=this.maskGenAlgorithm.toJSON()),this.pSourceAlgorithm.isEqual(r.defaultValues(kn))||(e.pSourceAlgorithm=this.pSourceAlgorithm.toJSON()),e}};Ro.CLASS_NAME="RSAESOAEPParams";var ll="keyInfo",Nn="entityUInfo",hl="suppPubInfo",Zj=[ll,Nn,hl],gh=class r extends B{constructor(e={}){super(),this.keyInfo=u.getParametersValue(e,ll,r.defaultValues(ll)),Nn in e&&(this.entityUInfo=u.getParametersValue(e,Nn,r.defaultValues(Nn))),this.suppPubInfo=u.getParametersValue(e,hl,r.defaultValues(hl)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ll:return new b;case Nn:return new a.OctetString;case hl:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case ll:case Nn:case hl:return t.isEqual(r.defaultValues(e));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.keyInfo||{}),new a.Constructed({name:t.entityUInfo||f,idBlock:{tagClass:3,tagNumber:0},optional:!0,value:[new a.OctetString]}),new a.Constructed({name:t.suppPubInfo||f,idBlock:{tagClass:3,tagNumber:2},value:[new a.OctetString]})]})}fromSchema(e){u.clearProps(e,Zj);let t=a.compareSchema(e,e,r.schema({names:{keyInfo:{names:{blockName:ll}},entityUInfo:Nn,suppPubInfo:hl}}));I.assertSchema(t,this.className),this.keyInfo=new b({schema:t.result.keyInfo}),Nn in t.result&&(this.entityUInfo=t.result.entityUInfo.valueBlock.value[0]),this.suppPubInfo=t.result.suppPubInfo.valueBlock.value[0]}toSchema(){let e=[];return e.push(this.keyInfo.toSchema()),this.entityUInfo&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.entityUInfo]})),e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:[this.suppPubInfo]})),new a.Sequence({value:e})}toJSON(){let e={keyInfo:this.keyInfo.toJSON(),suppPubInfo:this.suppPubInfo.toJSON()};return this.entityUInfo&&(e.entityUInfo=this.entityUInfo.toJSON()),e}};gh.CLASS_NAME="ECCCMSSharedInfo";var fl="version",Bn="originatorInfo",dl="recipientInfos",pl="encryptedContentInfo",xn="unprotectedAttrs",e3=[fl,Bn,dl,pl,xn],zB={kdfAlgorithm:"SHA-512",kekEncryptionLength:256},t3={"P-256":256,"P-384":384,"P-521":528},yh=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,fl,r.defaultValues(fl)),Bn in e&&(this.originatorInfo=u.getParametersValue(e,Bn,r.defaultValues(Bn))),this.recipientInfos=u.getParametersValue(e,dl,r.defaultValues(dl)),this.encryptedContentInfo=u.getParametersValue(e,pl,r.defaultValues(pl)),xn in e&&(this.unprotectedAttrs=u.getParametersValue(e,xn,r.defaultValues(xn))),this.policy={disableSplit:!!e.disableSplit},e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case fl:return 0;case Bn:return new Vo;case dl:return[];case pl:return new Nt;case xn:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case fl:return t===r.defaultValues(e);case Bn:return t.certs.certificates.length===0&&t.crls.crls.length===0;case dl:case xn:return t.length===0;case pl:return Nt.compareWithDefault("contentType",t.contentType)&&Nt.compareWithDefault("contentEncryptionAlgorithm",t.contentEncryptionAlgorithm)&&Nt.compareWithDefault("encryptedContent",t.encryptedContent);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||f}),new a.Constructed({name:t.originatorInfo||f,optional:!0,idBlock:{tagClass:3,tagNumber:0},value:Vo.schema().valueBlock.value}),new a.Set({value:[new a.Repeated({name:t.recipientInfos||f,value:Bs.schema()})]}),Nt.schema(t.encryptedContentInfo||{}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Repeated({name:t.unprotectedAttrs||f,value:Qe.schema()})]})]})}fromSchema(e){u.clearProps(e,e3);let t=a.compareSchema(e,e,r.schema({names:{version:fl,originatorInfo:Bn,recipientInfos:dl,encryptedContentInfo:{names:{blockName:pl}},unprotectedAttrs:xn}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,Bn in t.result&&(this.originatorInfo=new Vo({schema:new a.Sequence({value:t.result.originatorInfo.valueBlock.value})})),this.recipientInfos=Array.from(t.result.recipientInfos,s=>new Bs({schema:s})),this.encryptedContentInfo=new Nt({schema:t.result.encryptedContentInfo}),xn in t.result&&(this.unprotectedAttrs=Array.from(t.result.unprotectedAttrs,s=>new Qe({schema:s})))}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),this.originatorInfo&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:this.originatorInfo.toSchema().valueBlock.value})),e.push(new a.Set({value:Array.from(this.recipientInfos,t=>t.toSchema())})),e.push(this.encryptedContentInfo.toSchema()),this.unprotectedAttrs&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:Array.from(this.unprotectedAttrs,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={version:this.version,recipientInfos:Array.from(this.recipientInfos,t=>t.toJSON()),encryptedContentInfo:this.encryptedContentInfo.toJSON()};return this.originatorInfo&&(e.originatorInfo=this.originatorInfo.toJSON()),this.unprotectedAttrs&&(e.unprotectedAttrs=Array.from(this.unprotectedAttrs,t=>t.toJSON())),e}addRecipientByCertificate(e,t,s,i=ae(!0)){let n=Object.assign({useOAEP:!0,oaepHashAlgorithm:"SHA-512"},zB,t||{});if(e.subjectPublicKeyInfo.algorithm.algorithmId.indexOf("1.2.840.113549")!==-1)s=1;else if(e.subjectPublicKeyInfo.algorithm.algorithmId.indexOf("1.2.840.10045")!==-1)s=2;else throw new Error(`Unknown type of certificate's public key: ${e.subjectPublicKeyInfo.algorithm.algorithmId}`);switch(s){case 1:{let o,c;if(n.useOAEP===!0){o=i.getOIDByAlgorithm({name:"RSA-OAEP"},!0,"keyEncryptionAlgorithm");let h=i.getOIDByAlgorithm({name:n.oaepHashAlgorithm},!0,"RSAES-OAEP-params"),d=new b({algorithmId:h,algorithmParams:new a.Null});c=new Ro({hashAlgorithm:d,maskGenAlgorithm:new b({algorithmId:"1.2.840.113549.1.1.8",algorithmParams:d.toSchema()})}).toSchema()}else{if(o=i.getOIDByAlgorithm({name:"RSAES-PKCS1-v1_5"}),o===f)throw new Error("Can not find OID for RSAES-PKCS1-v1_5");c=new a.Null}let l=new jo({version:0,rid:new _t({issuer:e.issuer,serialNumber:e.serialNumber}),keyEncryptionAlgorithm:new b({algorithmId:o,algorithmParams:c}),recipientCertificate:e});this.recipientInfos.push(new Bs({variant:1,value:l}))}break;case 2:{let o=new ki({variant:1,value:new _t({issuer:e.issuer,serialNumber:e.serialNumber})});this._addKeyAgreeRecipientInfo(o,n,{recipientCertificate:e},i)}break;default:throw new Error(`Unknown "variant" value: ${s}`)}return!0}addRecipientByPreDefinedData(e,t={},s,i=ae(!0)){if(xe.assert(e,"preDefinedData","ArrayBuffer"),!e.byteLength)throw new Error("Pre-defined data could have zero length");if(!t.keyIdentifier){let n=new ArrayBuffer(16),o=new Uint8Array(n);i.getRandomValues(o),t.keyIdentifier=n}switch(t.hmacHashAlgorithm||(t.hmacHashAlgorithm="SHA-512"),t.iterationCount===void 0&&(t.iterationCount=2048),t.keyEncryptionAlgorithm||(t.keyEncryptionAlgorithm={name:"AES-KW",length:256}),t.keyEncryptionAlgorithmParams||(t.keyEncryptionAlgorithmParams=new a.Null),s){case 1:{let n=i.getOIDByAlgorithm(t.keyEncryptionAlgorithm,!0,"keyEncryptionAlgorithm"),o=new Ko({version:4,kekid:new zn({keyIdentifier:new a.OctetString({valueHex:t.keyIdentifier})}),keyEncryptionAlgorithm:new b({algorithmId:n,algorithmParams:t.keyEncryptionAlgorithmParams}),preDefinedKEK:e});this.recipientInfos.push(new Bs({variant:3,value:o}))}break;case 2:{let n=i.getOIDByAlgorithm({name:"PBKDF2"},!0,"keyDerivationAlgorithm"),o=new ArrayBuffer(64),c=new Uint8Array(o);i.getRandomValues(c);let l=i.getOIDByAlgorithm({name:"HMAC",hash:{name:t.hmacHashAlgorithm}},!0,"hmacHashAlgorithm"),h=new Ei({salt:new a.OctetString({valueHex:o}),iterationCount:t.iterationCount,prf:new b({algorithmId:l,algorithmParams:new a.Null})}),d=i.getOIDByAlgorithm(t.keyEncryptionAlgorithm,!0,"keyEncryptionAlgorithm"),m=new $o({version:0,keyDerivationAlgorithm:new b({algorithmId:n,algorithmParams:h.toSchema()}),keyEncryptionAlgorithm:new b({algorithmId:d,algorithmParams:t.keyEncryptionAlgorithmParams}),password:e});this.recipientInfos.push(new Bs({variant:4,value:m}))}break;default:throw new Error(`Unknown value for "variant": ${s}`)}}addRecipientByKeyIdentifier(e,t,s,i=ae(!0)){let n=Object.assign({},zB,s||{}),o=new ki({variant:2,value:new Lo({subjectKeyIdentifier:new a.OctetString({valueHex:t})})});this._addKeyAgreeRecipientInfo(o,n,{recipientPublicKey:e},i)}_addKeyAgreeRecipientInfo(e,t,s,i=ae(!0)){let n=new Uo({rid:e}),o=i.getOIDByAlgorithm({name:"AES-KW",length:t.kekEncryptionLength},!0,"keyEncryptionAlgorithm"),c=new b({algorithmId:o}),l=i.getOIDByAlgorithm({name:"ECDH",kdf:t.kdfAlgorithm},!0,"KeyAgreeRecipientInfo"),h=new ArrayBuffer(64),d=new Uint8Array(h);i.getRandomValues(d);let m={version:3,ukm:new a.OctetString({valueHex:h}),keyEncryptionAlgorithm:new b({algorithmId:l,algorithmParams:c.toSchema()}),recipientEncryptedKeys:new Wn({encryptedKeys:[n]})},p=new Ho(Object.assign(m,s));this.recipientInfos.push(new Bs({variant:2,value:p}))}async encrypt(e,t,s=ae(!0)){let i=new ArrayBuffer(16),n=new Uint8Array(i);s.getRandomValues(n);let o=new Uint8Array(t),c=s.getOIDByAlgorithm(e,!0,"contentEncryptionAlgorithm"),l=await s.generateKey(e,!0,["encrypt"]),h=await s.encrypt({name:e.name,iv:n},l,o),d=await s.exportKey("raw",l);this.version=2,this.encryptedContentInfo=new Nt({disableSplit:this.policy.disableSplit,contentType:"1.2.840.113549.1.7.1",contentEncryptionAlgorithm:new b({algorithmId:c,algorithmParams:new a.OctetString({valueHex:i})}),encryptedContent:new a.OctetString({valueHex:h})});let m=async S=>{let q=this.recipientInfos[S].value,L,j;if(q.recipientPublicKey)L=q.recipientPublicKey.algorithm.namedCurve,j=q.recipientPublicKey;else if(q.recipientCertificate){let Q=q.recipientCertificate.subjectPublicKeyInfo.algorithm.algorithmParams;if(Q.constructor.blockName()!==a.ObjectIdentifier.blockName())throw new Error(`Incorrect "recipientCertificate" for index ${S}`);switch(Q.valueBlock.toString()){case"1.2.840.10045.3.1.7":L="P-256";break;case"1.3.132.0.34":L="P-384";break;case"1.3.132.0.35":L="P-521";break;default:throw new Error(`Incorrect curve OID for index ${S}`)}j=await q.recipientCertificate.getPublicKey({algorithm:{algorithm:{name:"ECDH",namedCurve:L},usages:[]}},s)}else throw new Error("Unsupported RecipientInfo");let M=t3[L],$=await s.generateKey({name:"ECDH",namedCurve:L},!0,["deriveBits"]),te=await s.exportKey("spki",$.publicKey),Ce=await s.deriveBits({name:"ECDH",public:j},$.privateKey,M),oe=new b({schema:q.keyEncryptionAlgorithm.algorithmParams}),be=s.getAlgorithmByOID(oe.algorithmId,!0,"aesKWAlgorithm"),st=be.length,Pe=new ArrayBuffer(4),Be=new Uint8Array(Pe);for(let Q=3;Q>=0;Q--)Be[Q]=st,st>>=8;let Pt=new gh({keyInfo:new b({algorithmId:oe.algorithmId}),entityUInfo:q.ukm,suppPubInfo:new a.OctetString({valueHex:Pe})}).toSchema().toBER(!1),Le=s.getAlgorithmByOID(q.keyEncryptionAlgorithm.algorithmId,!0,"ecdhAlgorithm"),Lt=await Ab(Le.kdf,Ce,be.length,Pt,s),Ut=await s.importKey("raw",Lt,{name:"AES-KW"},!0,["wrapKey"]),Qt=await s.wrapKey("raw",l,Ut,{name:"AES-KW"}),Ge=new Gn;return Ge.variant=3,Ge.value=Mo.fromBER(te),q.originator=Ge,q.recipientEncryptedKeys.encryptedKeys[0].encryptedKey=new a.OctetString({valueHex:Qt}),{ecdhPrivateKey:$.privateKey}},p=async S=>{let q=this.recipientInfos[S].value,L=s.getAlgorithmByOID(q.keyEncryptionAlgorithm.algorithmId,!0,"keyEncryptionAlgorithm");if(L.name==="RSA-OAEP"){let j=q.keyEncryptionAlgorithm.algorithmParams,M=new Ro({schema:j});if(L.hash=s.getAlgorithmByOID(M.hashAlgorithm.algorithmId),!("name"in L.hash))throw new Error(`Incorrect OID for hash algorithm: ${M.hashAlgorithm.algorithmId}`)}try{let j=await q.recipientCertificate.getPublicKey({algorithm:{algorithm:L,usages:["encrypt","wrapKey"]}},s),M=await s.encrypt(j.algorithm,j,d);q.encryptedKey=new a.OctetString({valueHex:M})}catch{}},A=async S=>{let q=this.recipientInfos[S].value,L=s.getAlgorithmByOID(q.keyEncryptionAlgorithm.algorithmId,!0,"kekAlgorithm"),j=await s.importKey("raw",new Uint8Array(q.preDefinedKEK),L,!0,["wrapKey"]),M=await s.wrapKey("raw",l,j,L);q.encryptedKey=new a.OctetString({valueHex:M})},w=async S=>{let q=this.recipientInfos[S].value,L;if(!q.keyDerivationAlgorithm)throw new Error('Please append encoded "keyDerivationAlgorithm"');if(!q.keyDerivationAlgorithm.algorithmParams)throw new Error('Incorrectly encoded "keyDerivationAlgorithm"');try{L=new Ei({schema:q.keyDerivationAlgorithm.algorithmParams})}catch{throw new Error('Incorrectly encoded "keyDerivationAlgorithm"')}let j=new Uint8Array(q.password),M=await s.importKey("raw",j,"PBKDF2",!1,["deriveKey"]),$=s.getAlgorithmByOID(q.keyEncryptionAlgorithm.algorithmId,!0,"kekAlgorithm"),te="SHA-1";L.prf&&(te=s.getAlgorithmByOID(L.prf.algorithmId,!0,"prfAlgorithm").hash.name);let Ce=new Uint8Array(L.salt.valueBlock.valueHex),oe=L.iterationCount,be=await s.deriveKey({name:"PBKDF2",hash:{name:te},salt:Ce,iterations:oe},M,$,!0,["wrapKey"]),st=await s.wrapKey("raw",l,be,$);q.encryptedKey=new a.OctetString({valueHex:st})},C=[];for(let S=0;S<this.recipientInfos.length;S++)switch(this.recipientInfos[S].variant){case 1:C.push(await p(S));break;case 2:C.push(await m(S));break;case 3:C.push(await A(S));break;case 4:C.push(await w(S));break;default:throw new Error(`Unknown recipient type in array with index ${S}`)}return C}async decrypt(e,t,s=ae(!0)){let i=t||{};if(e+1>this.recipientInfos.length)throw new Error(`Maximum value for "index" is: ${this.recipientInfos.length-1}`);let n=async C=>{let S=this.recipientInfos[C].value,q,L,j,M=S.originator;if(i.recipientCertificate){let Le=i.recipientCertificate.subjectPublicKeyInfo.algorithm.algorithmParams;if(Le.constructor.blockName()!==a.ObjectIdentifier.blockName())throw new Error(`Incorrect "recipientCertificate" for index ${C}`);q=Le.valueBlock.toString()}else if(M.value.algorithm.algorithmParams){let Le=M.value.algorithm.algorithmParams;if(Le.constructor.blockName()!==a.ObjectIdentifier.blockName())throw new Error(`Incorrect originator for index ${C}`);q=Le.valueBlock.toString()}else throw new Error('Parameter "recipientCertificate" is mandatory for "KeyAgreeRecipientInfo" if algorithm params are missing from originator');if(!i.recipientPrivateKey)throw new Error('Parameter "recipientPrivateKey" is mandatory for "KeyAgreeRecipientInfo"');switch(q){case"1.2.840.10045.3.1.7":L="P-256",j=256;break;case"1.3.132.0.34":L="P-384",j=384;break;case"1.3.132.0.35":L="P-521",j=528;break;default:throw new Error(`Incorrect curve OID for index ${C}`)}let $,te=s;zl.BufferSourceConverter.isBufferSource(i.recipientPrivateKey)?$=await s.importKey("pkcs8",i.recipientPrivateKey,{name:"ECDH",namedCurve:L},!0,["deriveBits"]):($=i.recipientPrivateKey,"crypto"in i&&i.crypto&&(te=i.crypto.subtle)),"algorithmParams"in M.value.algorithm||(M.value.algorithm.algorithmParams=new a.ObjectIdentifier({value:q}));let Ce=M.value.toSchema().toBER(!1),oe=await s.importKey("spki",Ce,{name:"ECDH",namedCurve:L},!0,[]),be=await te.deriveBits({name:"ECDH",public:oe},$,j);async function st(Le){Le=Le||!1;let Lt=new b({schema:S.keyEncryptionAlgorithm.algorithmParams}),Ut=s.getAlgorithmByOID(Lt.algorithmId,!0,"kwAlgorithm"),Qt=Ut.length,Ge=new ArrayBuffer(4),Q=new Uint8Array(Ge);for(let pe=3;pe>=0;pe--)Q[pe]=Qt,Qt>>=8;let ce={algorithmId:Lt.algorithmId};Le&&(ce.algorithmParams=new a.Null);let fe=new gh({keyInfo:new b(ce),entityUInfo:S.ukm,suppPubInfo:new a.OctetString({valueHex:Ge})}).toSchema().toBER(!1),Ne=s.getAlgorithmByOID(S.keyEncryptionAlgorithm.algorithmId,!0,"ecdhAlgorithm");if(!Ne.name)throw new Error(`Incorrect OID for key encryption algorithm: ${S.keyEncryptionAlgorithm.algorithmId}`);return Ab(Ne.kdf,be,Ut.length,fe,s)}let Pe=await st(),Be=async Le=>s.importKey("raw",Le,{name:"AES-KW"},!0,["unwrapKey"]),Gr=await Be(Pe),Pt=async Le=>{let Lt=this.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId,Ut=s.getAlgorithmByOID(Lt,!0,"contentEncryptionAlgorithm");return s.unwrapKey("raw",S.recipientEncryptedKeys.encryptedKeys[0].encryptedKey.valueBlock.valueHexView,Le,{name:"AES-KW"},Ut,!0,["decrypt"])};try{return await Pt(Gr)}catch{let Le=await st(!0),Lt=await Be(Le);return Pt(Lt)}},o=async C=>{let S=this.recipientInfos[C].value;if(!i.recipientPrivateKey)throw new Error('Parameter "recipientPrivateKey" is mandatory for "KeyTransRecipientInfo"');let q=s.getAlgorithmByOID(S.keyEncryptionAlgorithm.algorithmId,!0,"keyEncryptionAlgorithm");if(q.name==="RSA-OAEP"){let Ce=S.keyEncryptionAlgorithm.algorithmParams,oe=new Ro({schema:Ce});if(q.hash=s.getAlgorithmByOID(oe.hashAlgorithm.algorithmId),!("name"in q.hash))throw new Error(`Incorrect OID for hash algorithm: ${oe.hashAlgorithm.algorithmId}`)}let L,j=s;zl.BufferSourceConverter.isBufferSource(i.recipientPrivateKey)?L=await s.importKey("pkcs8",i.recipientPrivateKey,q,!0,["decrypt"]):(L=i.recipientPrivateKey,"crypto"in i&&i.crypto&&(j=i.crypto.subtle));let M=await j.decrypt(L.algorithm,L,S.encryptedKey.valueBlock.valueHexView),$=this.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId,te=s.getAlgorithmByOID($,!0,"contentEncryptionAlgorithm");if(!("name"in te))throw new Error(`Incorrect "contentEncryptionAlgorithm": ${$}`);return s.importKey("raw",M,te,!0,["decrypt"])},c=async C=>{let S=this.recipientInfos[C].value;if(!i.preDefinedData)throw new Error('Parameter "preDefinedData" is mandatory for "KEKRecipientInfo"');let q=s.getAlgorithmByOID(S.keyEncryptionAlgorithm.algorithmId,!0,"kekAlgorithm"),L=await s.importKey("raw",i.preDefinedData,q,!0,["unwrapKey"]),j=this.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId,M=s.getAlgorithmByOID(j,!0,"contentEncryptionAlgorithm");if(!M.name)throw new Error(`Incorrect "contentEncryptionAlgorithm": ${j}`);return s.unwrapKey("raw",S.encryptedKey.valueBlock.valueHexView,L,q,M,!0,["decrypt"])},l=async C=>{let S=this.recipientInfos[C].value,q;if(!i.preDefinedData)throw new Error('Parameter "preDefinedData" is mandatory for "KEKRecipientInfo"');if(!S.keyDerivationAlgorithm)throw new Error('Please append encoded "keyDerivationAlgorithm"');if(!S.keyDerivationAlgorithm.algorithmParams)throw new Error('Incorrectly encoded "keyDerivationAlgorithm"');try{q=new Ei({schema:S.keyDerivationAlgorithm.algorithmParams})}catch{throw new Error('Incorrectly encoded "keyDerivationAlgorithm"')}let L=await s.importKey("raw",i.preDefinedData,"PBKDF2",!1,["deriveKey"]),j=s.getAlgorithmByOID(S.keyEncryptionAlgorithm.algorithmId,!0,"keyEncryptionAlgorithm"),M=q.prf?s.getAlgorithmByOID(q.prf.algorithmId,!0,"prfAlgorithm").hash.name:"SHA-1",$=new Uint8Array(q.salt.valueBlock.valueHex),te=q.iterationCount,Ce=await s.deriveKey({name:"PBKDF2",hash:{name:M},salt:$,iterations:te},L,j,!0,["unwrapKey"]),oe=this.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId,be=s.getAlgorithmByOID(oe,!0,"contentEncryptionAlgorithm");return s.unwrapKey("raw",S.encryptedKey.valueBlock.valueHexView,Ce,j,be,!0,["decrypt"])},h;switch(this.recipientInfos[e].variant){case 1:h=await o(e);break;case 2:h=await n(e);break;case 3:h=await c(e);break;case 4:h=await l(e);break;default:throw new Error(`Unknown recipient type in array with index ${e}`)}let d=this.encryptedContentInfo.contentEncryptionAlgorithm.algorithmId,m=s.getAlgorithmByOID(d,!0,"contentEncryptionAlgorithm"),p=this.encryptedContentInfo.contentEncryptionAlgorithm.algorithmParams.valueBlock.valueHex,A=new Uint8Array(p);if(!this.encryptedContentInfo.encryptedContent)throw new Error("Required property `encryptedContent` is empty");let w=this.encryptedContentInfo.getEncryptedContent();return s.decrypt({name:m.name,iv:A},h,w)}};yh.CLASS_NAME="EnvelopedData";var wu="safeContents",ep="parsedValue",YB="contentInfos",vh=class r extends B{constructor(e={}){super(),this.safeContents=u.getParametersValue(e,wu,r.defaultValues(wu)),ep in e&&(this.parsedValue=u.getParametersValue(e,ep,r.defaultValues(ep))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case wu:return[];case ep:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case wu:return t.length===0;case ep:return t instanceof Object&&Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Repeated({name:t.contentInfos||f,value:We.schema()})]})}fromSchema(e){u.clearProps(e,[YB]);let t=a.compareSchema(e,e,r.schema({names:{contentInfos:YB}}));I.assertSchema(t,this.className),this.safeContents=Array.from(t.result.contentInfos,s=>new We({schema:s}))}toSchema(){return new a.Sequence({value:Array.from(this.safeContents,e=>e.toSchema())})}toJSON(){return{safeContents:Array.from(this.safeContents,e=>e.toJSON())}}async parseInternalValues(e,t=ae(!0)){if(we.assert(e,wu),xe.assert(e.safeContents,wu,"Array"),e.safeContents.length!==this.safeContents.length)throw new xe('Length of "parameters.safeContents" must be equal to "this.safeContents.length"');this.parsedValue={safeContents:[]};for(let[s,i]of this.safeContents.entries()){let n=e.safeContents[s],o=`parameters.safeContents[${s}]`;switch(i.contentType){case QA:{xe.assert(i.content,"this.safeContents[j].content",a.OctetString);let c=i.content.getValue();this.parsedValue.safeContents.push({privacyMode:0,value:Ii.fromBER(c)})}break;case tC:{let c=new yh({schema:i.content});we.assert(o,n,"recipientCertificate","recipientKey");let l=n,h=l.recipientCertificate,d=l.recipientKey,m=await c.decrypt(0,{recipientCertificate:h,recipientPrivateKey:d},t);this.parsedValue.safeContents.push({privacyMode:2,value:Ii.fromBER(m)})}break;case rC:{let c=new Qn({schema:i.content});we.assert(o,n,"password");let l=n.password,h=await c.decrypt({password:l},t);this.parsedValue.safeContents.push({privacyMode:1,value:Ii.fromBER(h)})}break;default:throw new Error(`Unknown "contentType" for AuthenticatedSafe: " ${i.contentType}`)}}}async makeInternalValues(e,t=ae(!0)){if(!this.parsedValue)throw new Error('Please run "parseValues" first or add "parsedValue" manually');if(xe.assert(this.parsedValue,"this.parsedValue","object"),xe.assert(this.parsedValue.safeContents,"this.parsedValue.safeContents","Array"),xe.assert(e,"parameters","object"),we.assert(e,"safeContents"),xe.assert(e.safeContents,"parameters.safeContents","Array"),e.safeContents.length!==this.parsedValue.safeContents.length)throw new xe('Length of "parameters.safeContents" must be equal to "this.parsedValue.safeContents"');this.safeContents=[];for(let[s,i]of this.parsedValue.safeContents.entries())switch(we.assert("content",i,"privacyMode","value"),xe.assert(i.value,"content.value",Ii),i.privacyMode){case 0:{let n=i.value.toSchema().toBER(!1);this.safeContents.push(new We({contentType:"1.2.840.113549.1.7.1",content:new a.OctetString({valueHex:n})}))}break;case 1:{let n=new Qn,o=e.safeContents[s];o.contentToEncrypt=i.value.toSchema().toBER(!1),await n.encrypt(o,t),this.safeContents.push(new We({contentType:"1.2.840.113549.1.7.6",content:n.toSchema()}))}break;case 2:{let n=new yh,o=i.value.toSchema().toBER(!1),c=e.safeContents[s];switch(we.assert(`parameters.safeContents[${s}]`,c,"encryptingCertificate","encryptionAlgorithm"),!0){case c.encryptionAlgorithm.name.toLowerCase()==="aes-cbc":case c.encryptionAlgorithm.name.toLowerCase()==="aes-gcm":break;default:throw new Error(`Incorrect parameter "encryptionAlgorithm" in "parameters.safeContents[i]": ${c.encryptionAlgorithm}`)}switch(!0){case c.encryptionAlgorithm.length===128:case c.encryptionAlgorithm.length===192:case c.encryptionAlgorithm.length===256:break;default:throw new Error(`Incorrect parameter "encryptionAlgorithm.length" in "parameters.safeContents[i]": ${c.encryptionAlgorithm.length}`)}let l=c.encryptionAlgorithm;n.addRecipientByCertificate(c.encryptingCertificate,{},void 0,t),await n.encrypt(l,o,t),this.safeContents.push(new We({contentType:"1.2.840.113549.1.7.3",content:n.toSchema()}))}break;default:throw new Error(`Incorrect value for "content.privacyMode": ${i.privacyMode}`)}return this}};vh.CLASS_NAME="AuthenticatedSafe";var mo="hashAlgorithm",ml="issuerNameHash",gl="issuerKeyHash",go="serialNumber",r3=[mo,ml,gl,go],Gt=class r extends B{static async create(e,t,s=ae(!0)){let i=new r;return await i.createForCertificate(e,t,s),i}constructor(e={}){super(),this.hashAlgorithm=u.getParametersValue(e,mo,r.defaultValues(mo)),this.issuerNameHash=u.getParametersValue(e,ml,r.defaultValues(ml)),this.issuerKeyHash=u.getParametersValue(e,gl,r.defaultValues(gl)),this.serialNumber=u.getParametersValue(e,go,r.defaultValues(go)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case mo:return new b;case ml:case gl:return new a.OctetString;case go:return new a.Integer;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case mo:return t.algorithmId===f&&!("algorithmParams"in t);case ml:case gl:case go:return t.isEqual(r.defaultValues(go));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.hashAlgorithmObject||{names:{blockName:t.hashAlgorithm||f}}),new a.OctetString({name:t.issuerNameHash||f}),new a.OctetString({name:t.issuerKeyHash||f}),new a.Integer({name:t.serialNumber||f})]})}fromSchema(e){u.clearProps(e,r3);let t=a.compareSchema(e,e,r.schema({names:{hashAlgorithm:mo,issuerNameHash:ml,issuerKeyHash:gl,serialNumber:go}}));I.assertSchema(t,this.className),this.hashAlgorithm=new b({schema:t.result.hashAlgorithm}),this.issuerNameHash=t.result.issuerNameHash,this.issuerKeyHash=t.result.issuerKeyHash,this.serialNumber=t.result.serialNumber}toSchema(){return new a.Sequence({value:[this.hashAlgorithm.toSchema(),this.issuerNameHash,this.issuerKeyHash,this.serialNumber]})}toJSON(){return{hashAlgorithm:this.hashAlgorithm.toJSON(),issuerNameHash:this.issuerNameHash.toJSON(),issuerKeyHash:this.issuerKeyHash.toJSON(),serialNumber:this.serialNumber.toJSON()}}isEqual(e){return!(this.hashAlgorithm.algorithmId!==e.hashAlgorithm.algorithmId||!ie.BufferSourceConverter.isEqual(this.issuerNameHash.valueBlock.valueHexView,e.issuerNameHash.valueBlock.valueHexView)||!ie.BufferSourceConverter.isEqual(this.issuerKeyHash.valueBlock.valueHexView,e.issuerKeyHash.valueBlock.valueHexView)||!this.serialNumber.isEqual(e.serialNumber))}async createForCertificate(e,t,s=ae(!0)){we.assert(t,mo,"issuerCertificate");let i=s.getOIDByAlgorithm({name:t.hashAlgorithm},!0,"hashAlgorithm");this.hashAlgorithm=new b({algorithmId:i,algorithmParams:new a.Null});let n=t.issuerCertificate;this.serialNumber=e.serialNumber;let o=await s.digest({name:t.hashAlgorithm},n.subject.toSchema().toBER(!1));this.issuerNameHash=new a.OctetString({valueHex:o});let c=n.subjectPublicKeyInfo.subjectPublicKey.valueBlock.valueHexView,l=await s.digest({name:t.hashAlgorithm},c);this.issuerKeyHash=new a.OctetString({valueHex:l})}};Gt.CLASS_NAME="CertID";var yl="certID",vl="certStatus",Sl="thisUpdate",On="nextUpdate",yo="singleExtensions",s3=[yl,vl,Sl,On,yo],Sh=class r extends B{constructor(e={}){super(),this.certID=u.getParametersValue(e,yl,r.defaultValues(yl)),this.certStatus=u.getParametersValue(e,vl,r.defaultValues(vl)),this.thisUpdate=u.getParametersValue(e,Sl,r.defaultValues(Sl)),On in e&&(this.nextUpdate=u.getParametersValue(e,On,r.defaultValues(On))),yo in e&&(this.singleExtensions=u.getParametersValue(e,yo,r.defaultValues(yo))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case yl:return new Gt;case vl:return{};case Sl:case On:return new Date(0,0,0);case yo:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case yl:return Gt.compareWithDefault("hashAlgorithm",t.hashAlgorithm)&&Gt.compareWithDefault("issuerNameHash",t.issuerNameHash)&&Gt.compareWithDefault("issuerKeyHash",t.issuerKeyHash)&&Gt.compareWithDefault("serialNumber",t.serialNumber);case vl:return Object.keys(t).length===0;case Sl:case On:return t===r.defaultValues(e);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[Gt.schema(t.certID||{}),new a.Choice({value:[new a.Primitive({name:t.certStatus||f,idBlock:{tagClass:3,tagNumber:0}}),new a.Constructed({name:t.certStatus||f,idBlock:{tagClass:3,tagNumber:1},value:[new a.GeneralizedTime,new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Enumerated]})]}),new a.Primitive({name:t.certStatus||f,idBlock:{tagClass:3,tagNumber:2},lenBlock:{length:1}})]}),new a.GeneralizedTime({name:t.thisUpdate||f}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.GeneralizedTime({name:t.nextUpdate||f})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[ut.schema(t.singleExtensions||{})]})]})}fromSchema(e){u.clearProps(e,s3);let t=a.compareSchema(e,e,r.schema({names:{certID:{names:{blockName:yl}},certStatus:vl,thisUpdate:Sl,nextUpdate:On,singleExtensions:{names:{blockName:yo}}}}));I.assertSchema(t,this.className),this.certID=new Gt({schema:t.result.certID}),this.certStatus=t.result.certStatus,this.thisUpdate=t.result.thisUpdate.toDate(),On in t.result&&(this.nextUpdate=t.result.nextUpdate.toDate()),yo in t.result&&(this.singleExtensions=Array.from(t.result.singleExtensions.valueBlock.value,s=>new tr({schema:s})))}toSchema(){let e=[];return e.push(this.certID.toSchema()),e.push(this.certStatus),e.push(new a.GeneralizedTime({valueDate:this.thisUpdate})),this.nextUpdate&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.GeneralizedTime({valueDate:this.nextUpdate})]})),this.singleExtensions&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[new a.Sequence({value:Array.from(this.singleExtensions,t=>t.toSchema())})]})),new a.Sequence({value:e})}toJSON(){let e={certID:this.certID.toJSON(),certStatus:this.certStatus.toJSON(),thisUpdate:this.thisUpdate};return this.nextUpdate&&(e.nextUpdate=this.nextUpdate),this.singleExtensions&&(e.singleExtensions=Array.from(this.singleExtensions,t=>t.toJSON())),e}};Sh.CLASS_NAME="SingleResponse";var GS="tbs",vo="version",xm="responderID",Om="producedAt",Tm="responses",Al="responseExtensions",Go="ResponseData",iA=`${Go}.${vo}`,wl=`${Go}.${xm}`,bb=`${Go}.${Om}`,Cb=`${Go}.${Tm}`,nA=`${Go}.${Al}`,i3=[Go,iA,wl,bb,Cb,nA],Vr=class r extends B{get tbs(){return ie.BufferSourceConverter.toArrayBuffer(this.tbsView)}set tbs(e){this.tbsView=new Uint8Array(e)}constructor(e={}){super(),this.tbsView=new Uint8Array(u.getParametersValue(e,GS,r.defaultValues(GS))),vo in e&&(this.version=u.getParametersValue(e,vo,r.defaultValues(vo))),this.responderID=u.getParametersValue(e,xm,r.defaultValues(xm)),this.producedAt=u.getParametersValue(e,Om,r.defaultValues(Om)),this.responses=u.getParametersValue(e,Tm,r.defaultValues(Tm)),Al in e&&(this.responseExtensions=u.getParametersValue(e,Al,r.defaultValues(Al))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case vo:return 0;case GS:return ct;case xm:return{};case Om:return new Date(0,0,0);case Tm:case Al:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case GS:return t.byteLength===0;case xm:return Object.keys(t).length===0;case Om:return t===r.defaultValues(e);case Tm:case Al:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||Go,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({name:t.version||iA})]}),new a.Choice({value:[new a.Constructed({name:t.responderID||wl,idBlock:{tagClass:3,tagNumber:1},value:[je.schema(t.ResponseDataByName||{names:{blockName:"ResponseData.byName"}})]}),new a.Constructed({name:t.responderID||wl,idBlock:{tagClass:3,tagNumber:2},value:[new a.OctetString({name:t.ResponseDataByKey||"ResponseData.byKey"})]})]}),new a.GeneralizedTime({name:t.producedAt||bb}),new a.Sequence({value:[new a.Repeated({name:Cb,value:Sh.schema(t.response||{})})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[ut.schema(t.extensions||{names:{blockName:nA}})]})]})}fromSchema(e){u.clearProps(e,i3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.tbsView=t.result.ResponseData.valueBeforeDecodeView,iA in t.result&&(this.version=t.result[iA].valueBlock.valueDec),t.result[wl].idBlock.tagNumber===1?this.responderID=new je({schema:t.result[wl].valueBlock.value[0]}):this.responderID=t.result[wl].valueBlock.value[0],this.producedAt=t.result[bb].toDate(),this.responses=Array.from(t.result[Cb],s=>new Sh({schema:s})),nA in t.result&&(this.responseExtensions=Array.from(t.result[nA].valueBlock.value,s=>new tr({schema:s})))}toSchema(e=!1){let t;if(e===!1){if(!this.tbsView.byteLength)return r.schema();let s=a.fromBER(this.tbsView);I.assert(s,"TBS Response Data"),t=s.result}else{let s=[];vo in this&&s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({value:this.version})]})),this.responderID instanceof je?s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[this.responderID.toSchema()]})):s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:[this.responderID]})),s.push(new a.GeneralizedTime({valueDate:this.producedAt})),s.push(new a.Sequence({value:Array.from(this.responses,i=>i.toSchema())})),this.responseExtensions&&s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[new a.Sequence({value:Array.from(this.responseExtensions,i=>i.toSchema())})]})),t=new a.Sequence({value:s})}return t}toJSON(){let e={};return vo in this&&(e.version=this.version),this.responderID&&(e.responderID=this.responderID),this.producedAt&&(e.producedAt=this.producedAt),this.responses&&(e.responses=Array.from(this.responses,t=>t.toJSON())),this.responseExtensions&&(e.responseExtensions=Array.from(this.responseExtensions,t=>t.toJSON())),e}};Vr.CLASS_NAME="ResponseData";var sb="trustedCerts",ib="certs",nb="crls",ab="ocsps",ob="checkDate",cb="findOrigin",ub="findIssuer";g.ChainValidationCode=void 0;(function(r){r[r.unknown=-1]="unknown",r[r.success=0]="success",r[r.noRevocation=11]="noRevocation",r[r.noPath=60]="noPath",r[r.noValidPath=97]="noValidPath"})(g.ChainValidationCode||(g.ChainValidationCode={}));var Ci=class r extends Error{constructor(e,t){super(t),this.name=r.NAME,this.code=e,this.message=t}};Ci.NAME="ChainValidationError";function n3(r,e){for(let t=0;t<e.length;t++)if(ie.BufferSourceConverter.isEqual(r.tbsView,e[t].tbsView))return!0;return!1}var gg=class r{constructor(e={}){this.trustedCerts=u.getParametersValue(e,sb,this.defaultValues(sb)),this.certs=u.getParametersValue(e,ib,this.defaultValues(ib)),this.crls=u.getParametersValue(e,nb,this.defaultValues(nb)),this.ocsps=u.getParametersValue(e,ab,this.defaultValues(ab)),this.checkDate=u.getParametersValue(e,ob,this.defaultValues(ob)),this.findOrigin=u.getParametersValue(e,cb,this.defaultValues(cb)),this.findIssuer=u.getParametersValue(e,ub,this.defaultValues(ub))}static defaultFindOrigin(e,t){e.tbsView.byteLength===0&&(e.tbsView=new Uint8Array(e.encodeTBS().toBER()));for(let s of t.certs)if(s.tbsView.byteLength===0&&(s.tbsView=new Uint8Array(s.encodeTBS().toBER())),ie.BufferSourceConverter.isEqual(e.tbsView,s.tbsView))return"Intermediate Certificates";for(let s of t.trustedCerts)if(s.tbsView.byteLength===0&&(s.tbsView=new Uint8Array(s.encodeTBS().toBER())),ie.BufferSourceConverter.isEqual(e.tbsView,s.tbsView))return"Trusted Certificates";return"Unknown"}async defaultFindIssuer(e,t,s=ae(!0)){let i=[],n=null,o=null,c=null;if(e.subject.isEqual(e.issuer))try{if(await e.verify(void 0,s))return[e]}catch{}if(e.extensions){for(let h of e.extensions)if(h.extnID===YA&&h.parsedValue instanceof Zl){h.parsedValue.keyIdentifier?n=h.parsedValue.keyIdentifier:(h.parsedValue.authorityCertIssuer&&(o=h.parsedValue.authorityCertIssuer),h.parsedValue.authorityCertSerialNumber&&(c=h.parsedValue.authorityCertSerialNumber));break}}function l(h){if(n!==null&&h.extensions){let m=!1;for(let p of h.extensions)if(p.extnID===ZB&&p.parsedValue){m=!0,ie.BufferSourceConverter.isEqual(p.parsedValue.valueBlock.valueHex,n.valueBlock.valueHexView)&&i.push(h);break}if(m)return}let d=!1;c!==null&&(d=h.serialNumber.isEqual(c)),o!==null?h.subject.isEqual(o)&&d&&i.push(h):e.issuer.isEqual(h.subject)&&i.push(h)}for(let h of t.trustedCerts)l(h);for(let h of t.certs)l(h);for(let h=i.length-1;h>=0;h--)try{await e.verify(i[h],s)===!1&&i.splice(h,1)}catch{i.splice(h,1)}return i}defaultValues(e){switch(e){case sb:return[];case ib:return[];case nb:return[];case ab:return[];case ob:return new Date;case cb:return r.defaultFindOrigin;case ub:return this.defaultFindIssuer;default:throw new Error(`Invalid member name for CertificateChainValidationEngine class: ${e}`)}}async sort(e=!1,t=ae(!0)){let s=[],i=async(w,C)=>{let S=[];function q(j){let M=!0;for(let $=0;$<j.length;$++){for(let te=0;te<j.length;te++)if(te!==$&&j[$]===j[te]){M=!1;break}if(!M)break}return M}if(n3(w,this.trustedCerts))return[[w]];let L=await this.findIssuer(w,this,C);if(L.length===0)throw new Error("No valid certificate paths found");for(let j=0;j<L.length;j++){if(ie.BufferSourceConverter.isEqual(L[j].tbsView,w.tbsView)){S.push([L[j]]);continue}let M=await i(L[j],C);for(let $=0;$<M.length;$++){let te=M[$].slice();te.splice(0,0,L[j]),q(te)?S.push(te):S.push(M[$])}}return S},n=async w=>{let C=[],S=[],q=[];if(C.push(...s.filter(L=>w.issuer.isEqual(L.subject))),C.length===0)return{status:1,statusMessage:"No certificate's issuers"};if(S.push(...this.crls.filter(L=>L.issuer.isEqual(w.issuer))),S.length===0)return{status:2,statusMessage:"No CRLs for specific certificate issuer"};for(let L=0;L<S.length;L++){let j=S[L];if(!(j.nextUpdate&&j.nextUpdate.value<this.checkDate))for(let M=0;M<C.length;M++)try{if(await S[L].verify({issuerCertificate:C[M]},t)){q.push({crl:S[L],certificate:C[M]});break}}catch{}}return q.length?{status:0,statusMessage:f,result:q}:{status:3,statusMessage:"No valid CRLs found"}},o=async(w,C)=>{let S=t.getAlgorithmByOID(w.signatureAlgorithm.algorithmId);if(!S.name||!S.hash)return 1;for(let q=0;q<this.ocsps.length;q++){let j=await this.ocsps[q].getCertificateStatus(w,C,t);if(j.isForCertificate)return j.status===0?0:1}return 2};async function c(w,C=!1){let S=!1,q=!1,L=!1,j=!1;if(w.extensions){for(let M=0;M<w.extensions.length;M++){let $=w.extensions[M];if($.critical&&!$.parsedValue)return{result:!1,resultCode:6,resultMessage:`Unable to parse critical certificate extension: ${$.extnID}`};if($.extnID===ex){L=!0;let te=new Uint8Array($.parsedValue.valueBlock.valueHex);(te[0]&4)===4&&(q=!0),(te[0]&2)===2&&(j=!0)}$.extnID===WA&&"cA"in $.parsedValue&&$.parsedValue.cA===!0&&(S=!0)}if(q===!0&&S===!1)return{result:!1,resultCode:3,resultMessage:'Unable to build certificate chain - using "keyCertSign" flag set without BasicConstraints'};if(L===!0&&S===!0&&q===!1)return{result:!1,resultCode:4,resultMessage:'Unable to build certificate chain - "keyCertSign" flag was not set'};if(S===!0&&L===!0&&C&&j===!1)return{result:!1,resultCode:5,resultMessage:'Unable to build certificate chain - intermediate certificate must have "cRLSign" key usage flag'}}return S===!1?{result:!1,resultCode:7,resultMessage:"Unable to build certificate chain - more than one possible end-user certificate"}:{result:!0,resultCode:0,resultMessage:f}}let l=async(w,C)=>{for(let S=0;S<w.length;S++)if(w[S].notBefore.value>C||w[S].notAfter.value<C)return{result:!1,resultCode:8,resultMessage:"The certificate is either not yet valid or expired"};if(w.length<2)return{result:!1,resultCode:9,resultMessage:"Too short certificate path"};for(let S=w.length-2;S>=0;S--)if(w[S].issuer.isEqual(w[S].subject)===!1&&w[S].issuer.isEqual(w[S+1].subject)===!1)return{result:!1,resultCode:10,resultMessage:"Incorrect name chaining"};if(this.crls.length!==0||this.ocsps.length!==0)for(let S=0;S<w.length-1;S++){let q=2,L={status:0,statusMessage:f};if(this.ocsps.length!==0)switch(q=await o(w[S],w[S+1]),q){case 0:continue;case 1:return{result:!1,resultCode:12,resultMessage:"One of certificates was revoked via OCSP response"}}if(this.crls.length!==0){if(L=await n(w[S]),L.status===0&&L.result)for(let j=0;j<L.result.length;j++){if(L.result[j].crl.isCertificateRevoked(w[S]))return{result:!1,resultCode:12,resultMessage:"One of certificates had been revoked"};if((await c(L.result[j].certificate,!0)).result===!1)return{result:!1,resultCode:13,resultMessage:"CRL issuer certificate is not a CA certificate or does not have crlSign flag"}}else if(e===!1)throw new Ci(g.ChainValidationCode.noRevocation,`No revocation values found for one of certificates: ${L.statusMessage}`)}else if(q===2)return{result:!1,resultCode:11,resultMessage:"No revocation values found for one of certificates"};if(q===2&&L.status===2&&e){let j=w[S+1],M=!1;if(j.extensions)for(let $ of j.extensions)switch($.extnID){case zb:case zA:case XA:M=!0;break}if(M)throw new Ci(g.ChainValidationCode.noRevocation,`No revocation values found for one of certificates: ${L.statusMessage}`)}}for(let[S,q]of w.entries()){if(!S)continue;if(!(await c(q)).result)return{result:!1,resultCode:14,resultMessage:"One of intermediate certificates is not a CA certificate"}}return{result:!0}};s.push(...this.trustedCerts),s.push(...this.certs);for(let w=0;w<s.length;w++)for(let C=0;C<s.length;C++)if(w!==C&&ie.BufferSourceConverter.isEqual(s[w].tbsView,s[C].tbsView)){s.splice(C,1),w=0;break}let h=s[s.length-1],d,m=[h];if(d=await i(h,t),d.length===0)throw new Ci(g.ChainValidationCode.noPath,"Unable to find certificate path");for(let w=d.length-1;w>=0;w--){let C=!1;for(let S=0;S<d[w].length;S++){let q=d[w][S];for(let L=0;L<this.trustedCerts.length;L++)if(ie.BufferSourceConverter.isEqual(q.tbsView,this.trustedCerts[L].tbsView)){C=!0;break}if(C)break}C||d.splice(w,1)}if(d.length===0)throw new Ci(g.ChainValidationCode.noValidPath,"No valid certificate paths found");let p=d[0].length,A=0;for(let w=0;w<d.length;w++)d[w].length<p&&(p=d[w].length,A=w);for(let w=0;w<d[A].length;w++)m.push(d[A][w]);if(d=await l(m,this.checkDate),d.result===!1)throw d;return m}async verify(e={},t=ae(!0)){function s(l,h){let d=bi(l),m=bi(h),p=d.split("."),A=m.split("."),w=p.length,C=A.length;if(w===0||C===0||w<C)return!1;for(let S=0;S<w;S++)if(p[S].length===0)return!1;for(let S=0;S<C;S++)if(A[S].length===0){if(S===0){if(C===1)return!1;continue}return!1}for(let S=0;S<C;S++)if(A[C-1-S].length!==0&&p[w-1-S].localeCompare(A[C-1-S])!==0)return!1;return!0}function i(l,h){let d=bi(l),m=bi(h),p=d.split("@"),A=m.split("@");if(p.length===0||A.length===0||p.length<A.length)return!1;if(A.length===1){if(s(p[1],A[0])){let C=p[1].split("."),S=A[0].split(".");return S[0].length===0?!0:C.length===S.length}return!1}return d.localeCompare(m)===0}function n(l,h){let d=bi(l),m=bi(h),p=d.split("/");if(m.split("/").length>1)return!1;if(p.length>1){for(let C=0;C<p.length;C++)if(p[C].length>0&&p[C].charAt(p[C].length-1)!==":"){d=p[C].split(":")[0];break}}if(s(d,m)){let C=d.split("."),S=m.split(".");return S[0].length===0?!0:C.length===S.length}return!1}function o(l,h){let d=l.valueBlock.valueHexView,m=h.valueBlock.valueHexView;if(d.length===4&&m.length===8){for(let p=0;p<4;p++)if((d[p]^m[p])&m[p+4])return!1;return!0}if(d.length===16&&m.length===32){for(let p=0;p<16;p++)if((d[p]^m[p])&m[p+16])return!1;return!0}return!1}function c(l,h){if(l.typesAndValues.length===0||h.typesAndValues.length===0)return!0;if(l.typesAndValues.length<h.typesAndValues.length)return!1;let d=!0,m=0;for(let p=0;p<h.typesAndValues.length;p++){let A=!1;for(let w=m;w<l.typesAndValues.length;w++)if(A=l.typesAndValues[w].isEqual(h.typesAndValues[p]),l.typesAndValues[w].type===h.typesAndValues[p].type&&(d=d&&A),A===!0)if(m===0||m===w){m=w+1;break}else return!1;if(A===!1)return!1}return m===0?!1:d}try{if(this.certs.length===0)throw new Error("Empty certificate array");let l=e.passedWhenNotRevValues||!1,h=e.initialPolicySet||[wr],d=e.initialExplicitPolicy||!1,m=e.initialPolicyMappingInhibit||!1,p=e.initialInhibitPolicy||!1,A=e.initialPermittedSubtreesSet||[],w=e.initialExcludedSubtreesSet||[],C=e.initialRequiredNameForms||[],S=d,q=m,L=p,j=[!1,!1,!1],M=0,$=0,te=0,Ce=A,oe=w,be=C,st=1;this.certs=await this.sort(l,t);let Pe=[];Pe.push(wr);let Be=[],Gr=new Array(this.certs.length-1);for(let Q=0;Q<this.certs.length-1;Q++)Gr[Q]=!0;Be.push(Gr);let Pt=new Array(this.certs.length-1),Le=new Array(this.certs.length-1),Lt=S?this.certs.length-1:-1;for(let Q=this.certs.length-2;Q>=0;Q--,st++){let ce=this.certs[Q];if(ce.extensions){for(let D=0;D<ce.extensions.length;D++){let fe=ce.extensions[D];if(fe.extnID===Yb){Le[Q]=fe.parsedValue;for(let Ne=0;Ne<Pe.length;Ne++)if(Pe[Ne]===wr){delete Be[Ne][Q];break}for(let Ne=0;Ne<fe.parsedValue.certificatePolicies.length;Ne++){let pe=-1,Wr=fe.parsedValue.certificatePolicies[Ne].policyIdentifier;for(let it=0;it<Pe.length;it++)if(Wr===Pe[it]){pe=it;break}if(pe===-1){Pe.push(Wr);let it=new Array(this.certs.length-1);it[Q]=!0,Be.push(it)}else Be[pe][Q]=!0}}if(fe.extnID===Xb){if(q)return{result:!1,resultCode:98,resultMessage:"Policy mapping prohibited"};Pt[Q]=fe.parsedValue}fe.extnID===Qb&&S===!1&&(fe.parsedValue.requireExplicitPolicy===0?(S=!0,Lt=Q):j[0]===!1?(j[0]=!0,M=fe.parsedValue.requireExplicitPolicy):M=M>fe.parsedValue.requireExplicitPolicy?fe.parsedValue.requireExplicitPolicy:M,fe.parsedValue.inhibitPolicyMapping===0?q=!0:j[1]===!1?(j[1]=!0,$=fe.parsedValue.inhibitPolicyMapping+1):$=$>fe.parsedValue.inhibitPolicyMapping+1?fe.parsedValue.inhibitPolicyMapping+1:$),fe.extnID===cx&&L===!1&&(fe.parsedValue.valueBlock.valueDec===0?L=!0:j[2]===!1?(j[2]=!0,te=fe.parsedValue.valueBlock.valueDec):te=te>fe.parsedValue.valueBlock.valueDec?fe.parsedValue.valueBlock.valueDec:te)}if(L===!0){let D=-1;for(let fe=0;fe<Pe.length;fe++)if(Pe[fe]===wr){D=fe;break}D!==-1&&delete Be[0][Q]}S===!1&&j[0]===!0&&(M--,M===0&&(S=!0,Lt=Q,j[0]=!1)),q===!1&&j[1]===!0&&($--,$===0&&(q=!0,j[1]=!1)),L===!1&&j[2]===!0&&(te--,te===0&&(L=!0,j[2]=!1))}}for(let Q=0;Q<this.certs.length-1;Q++)if(Q<this.certs.length-2&&typeof Pt[Q+1]<"u")for(let ce=0;ce<Pt[Q+1].mappings.length;ce++){if(Pt[Q+1].mappings[ce].issuerDomainPolicy===wr||Pt[Q+1].mappings[ce].subjectDomainPolicy===wr)return{result:!1,resultCode:99,resultMessage:'The "anyPolicy" should not be a part of policy mapping scheme'};let D=-1,fe=-1;for(let Ne=0;Ne<Pe.length;Ne++)Pe[Ne]===Pt[Q+1].mappings[ce].issuerDomainPolicy&&(D=Ne),Pe[Ne]===Pt[Q+1].mappings[ce].subjectDomainPolicy&&(fe=Ne);typeof Be[D][Q]<"u"&&delete Be[D][Q];for(let Ne=0;Ne<Le[Q].certificatePolicies.length;Ne++)if(Pt[Q+1].mappings[ce].subjectDomainPolicy===Le[Q].certificatePolicies[Ne].policyIdentifier&&D!==-1&&fe!==-1)for(let pe=0;pe<=Q;pe++)typeof Be[fe][pe]<"u"&&(Be[D][pe]=!0,delete Be[fe][pe])}for(let Q=0;Q<Pe.length;Q++)if(Pe[Q]===wr)for(let ce=0;ce<Lt;ce++)delete Be[Q][ce];let Ut=[];for(let Q=0;Q<Be.length;Q++){let ce=!0;for(let D=0;D<this.certs.length-1;D++){let fe=!1;if(D<Lt&&Pe[Q]===wr&&Pe.length>1){ce=!1;break}if(typeof Be[Q][D]>"u"){if(D>=Lt){for(let Ne=0;Ne<Pe.length;Ne++)if(Pe[Ne]===wr){Be[Ne][D]===!0&&(fe=!0);break}}if(!fe){ce=!1;break}}}ce===!0&&Ut.push(Pe[Q])}let Qt=[];if(h.length===1&&h[0]===wr&&S===!1)Qt=h;else if(Ut.length===1&&Ut[0]===wr)Qt=h;else for(let Q=0;Q<Ut.length;Q++)for(let ce=0;ce<h.length;ce++)if(h[ce]===Ut[Q]||h[ce]===wr){Qt.push(Ut[Q]);break}let Ge={result:Qt.length>0,resultCode:0,resultMessage:Qt.length>0?f:'Zero "userConstrPolicies" array, no intersections with "authConstrPolicies"',authConstrPolicies:Ut,userConstrPolicies:Qt,explicitPolicyIndicator:S,policyMappings:Pt,certificatePath:this.certs};if(Qt.length===0||Ge.result===!1)return Ge;st=1;for(let Q=this.certs.length-2;Q>=0;Q--,st++){let ce=this.certs[Q],D=[],fe=[],Ne=[];if(ce.extensions)for(let Se=0;Se<ce.extensions.length;Se++){let re=ce.extensions[Se];re.extnID===Wb&&("permittedSubtrees"in re.parsedValue&&(fe=fe.concat(re.parsedValue.permittedSubtrees)),"excludedSubtrees"in re.parsedValue&&(Ne=Ne.concat(re.parsedValue.excludedSubtrees))),re.extnID===$b&&(D=D.concat(re.parsedValue.altNames))}let pe=be.length<=0;for(let Se=0;Se<be.length;Se++)switch(be[Se].base.type){case 4:{if(be[Se].base.value.typesAndValues.length!==ce.subject.typesAndValues.length)continue;pe=!0;for(let re=0;re<ce.subject.typesAndValues.length;re++)if(ce.subject.typesAndValues[re].type!==be[Se].base.value.typesAndValues[re].type){pe=!1;break}if(pe===!0)break}break;default:}if(pe===!1)throw Ge.result=!1,Ge.resultCode=21,Ge.resultMessage="No necessary name form found",Ge;let Wr=[[],[],[],[],[]];for(let Se=0;Se<Ce.length;Se++)switch(Ce[Se].base.type){case 1:Wr[0].push(Ce[Se]);break;case 2:Wr[1].push(Ce[Se]);break;case 4:Wr[2].push(Ce[Se]);break;case 6:Wr[3].push(Ce[Se]);break;case 7:Wr[4].push(Ce[Se]);break;default:}for(let Se=0;Se<5;Se++){let re=!1,Vt=!1,zr=Wr[Se];for(let Zt=0;Zt<zr.length;Zt++){switch(Se){case 0:if(D.length>0)for(let Ue=0;Ue<D.length;Ue++)D[Ue].type===1&&(Vt=!0,re=re||i(D[Ue].value,zr[Zt].base.value));else for(let Ue=0;Ue<ce.subject.typesAndValues.length;Ue++)(ce.subject.typesAndValues[Ue].type==="1.2.840.113549.1.9.1"||ce.subject.typesAndValues[Ue].type==="0.9.2342.19200300.100.1.3")&&(Vt=!0,re=re||i(ce.subject.typesAndValues[Ue].value.valueBlock.value,zr[Zt].base.value));break;case 1:if(D.length>0)for(let Ue=0;Ue<D.length;Ue++)D[Ue].type===2&&(Vt=!0,re=re||s(D[Ue].value,zr[Zt].base.value));break;case 2:Vt=!0,re=c(ce.subject,zr[Zt].base.value);break;case 3:if(D.length>0)for(let Ue=0;Ue<D.length;Ue++)D[Ue].type===6&&(Vt=!0,re=re||n(D[Ue].value,zr[Zt].base.value));break;case 4:if(D.length>0)for(let Ue=0;Ue<D.length;Ue++)D[Ue].type===7&&(Vt=!0,re=re||o(D[Ue].value,zr[Zt].base.value));break;default:}if(re)break}if(re===!1&&zr.length>0&&Vt)throw Ge.result=!1,Ge.resultCode=41,Ge.resultMessage='Failed to meet "permitted sub-trees" name constraint',Ge}let it=!1;for(let Se=0;Se<oe.length;Se++){switch(oe[Se].base.type){case 1:if(D.length>=0)for(let re=0;re<D.length;re++)D[re].type===1&&(it=it||i(D[re].value,oe[Se].base.value));else for(let re=0;re<ce.subject.typesAndValues.length;re++)(ce.subject.typesAndValues[re].type==="1.2.840.113549.1.9.1"||ce.subject.typesAndValues[re].type==="0.9.2342.19200300.100.1.3")&&(it=it||i(ce.subject.typesAndValues[re].value.valueBlock.value,oe[Se].base.value));break;case 2:if(D.length>0)for(let re=0;re<D.length;re++)D[re].type===2&&(it=it||s(D[re].value,oe[Se].base.value));break;case 4:it=it||c(ce.subject,oe[Se].base.value);break;case 6:if(D.length>0)for(let re=0;re<D.length;re++)D[re].type===6&&(it=it||n(D[re].value,oe[Se].base.value));break;case 7:if(D.length>0)for(let re=0;re<D.length;re++)D[re].type===7&&(it=it||o(D[re].value,oe[Se].base.value));break;default:}if(it)break}if(it===!0)throw Ge.result=!1,Ge.resultCode=42,Ge.resultMessage='Failed to meet "excluded sub-trees" name constraint',Ge;Ce=Ce.concat(fe),oe=oe.concat(Ne)}return Ge}catch(l){return l instanceof Error?l instanceof Ci?{result:!1,resultCode:l.code,resultMessage:l.message,error:l}:{result:!1,resultCode:g.ChainValidationCode.unknown,resultMessage:l.message,error:l}:l&&typeof l=="object"&&"resultMessage"in l?l:{result:!1,resultCode:-1,resultMessage:`${l}`}}}},aA="tbsResponseData",Vm="signatureAlgorithm",Rm="signature",_l="certs",vg="BasicOCSPResponse",Pb=`${vg}.${aA}`,Ib=`${vg}.${Vm}`,Eb=`${vg}.${Rm}`,oA=`${vg}.${_l}`,a3=[Pb,Ib,Eb,oA],Yn=class r extends B{constructor(e={}){super(),this.tbsResponseData=u.getParametersValue(e,aA,r.defaultValues(aA)),this.signatureAlgorithm=u.getParametersValue(e,Vm,r.defaultValues(Vm)),this.signature=u.getParametersValue(e,Rm,r.defaultValues(Rm)),_l in e&&(this.certs=u.getParametersValue(e,_l,r.defaultValues(_l))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case aA:return new Vr;case Vm:return new b;case Rm:return new a.BitString;case _l:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case"type":{let s=Vr.compareWithDefault("tbs",t.tbs)&&Vr.compareWithDefault("responderID",t.responderID)&&Vr.compareWithDefault("producedAt",t.producedAt)&&Vr.compareWithDefault("responses",t.responses);return"responseExtensions"in t&&(s=s&&Vr.compareWithDefault("responseExtensions",t.responseExtensions)),s}case Vm:return t.algorithmId===f&&!("algorithmParams"in t);case Rm:return t.isEqual(r.defaultValues(e));case _l:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||vg,value:[Vr.schema(t.tbsResponseData||{names:{blockName:Pb}}),b.schema(t.signatureAlgorithm||{names:{blockName:Ib}}),new a.BitString({name:t.signature||Eb}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Sequence({value:[new a.Repeated({name:oA,value:$t.schema(t.certs||{})})]})]})]})}fromSchema(e){u.clearProps(e,a3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.tbsResponseData=new Vr({schema:t.result[Pb]}),this.signatureAlgorithm=new b({schema:t.result[Ib]}),this.signature=t.result[Eb],oA in t.result&&(this.certs=Array.from(t.result[oA],s=>new $t({schema:s})))}toSchema(){let e=[];return e.push(this.tbsResponseData.toSchema()),e.push(this.signatureAlgorithm.toSchema()),e.push(this.signature),this.certs&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Sequence({value:Array.from(this.certs,t=>t.toSchema())})]})),new a.Sequence({value:e})}toJSON(){let e={tbsResponseData:this.tbsResponseData.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signature:this.signature.toJSON()};return this.certs&&(e.certs=Array.from(this.certs,t=>t.toJSON())),e}async getCertificateStatus(e,t,s=ae(!0)){let i={isForCertificate:!1,status:2},n={},o=[];for(let c of this.tbsResponseData.responses){let l=s.getAlgorithmByOID(c.certID.hashAlgorithm.algorithmId,!0,"CertID.hashAlgorithm");if(!n[l.name]){n[l.name]=1;let h=new Gt;o.push(h),await h.createForCertificate(e,{hashAlgorithm:l.name,issuerCertificate:t},s)}}for(let c of this.tbsResponseData.responses)for(let l of o)if(c.certID.isEqual(l)){i.isForCertificate=!0;try{switch(c.certStatus.idBlock.isConstructed){case!0:c.certStatus.idBlock.tagNumber===1&&(i.status=1);break;case!1:switch(c.certStatus.idBlock.tagNumber){case 0:i.status=0;break;case 2:i.status=2;break;default:}break;default:}}catch{}return i}return i}async sign(e,t="SHA-1",s=ae(!0)){if(!e)throw new Error("Need to provide a private key for signing");let i=await s.getSignatureParameters(e,t),n=i.parameters.algorithm;if(!("name"in n))throw new Error("Empty algorithm");this.signatureAlgorithm=i.signatureAlgorithm,this.tbsResponseData.tbsView=new Uint8Array(this.tbsResponseData.toSchema(!0).toBER());let o=await s.signWithPrivateKey(this.tbsResponseData.tbsView,e,{algorithm:n});this.signature=new a.BitString({valueHex:o})}async verify(e={},t=ae(!0)){let s=null,i=-1,n=e.trustedCerts||[];if(!this.certs)throw new Error("No certificates attached to the BasicOCSPResponse");switch(!0){case this.tbsResponseData.responderID instanceof je:for(let[h,d]of this.certs.entries())if(d.subject.isEqual(this.tbsResponseData.responderID)){i=h;break}break;case this.tbsResponseData.responderID instanceof a.OctetString:for(let[h,d]of this.certs.entries()){let m=await t.digest({name:"sha-1"},d.subjectPublicKeyInfo.subjectPublicKey.valueBlock.valueHexView);if(u.isEqualBuffer(m,this.tbsResponseData.responderID.valueBlock.valueHex)){i=h;break}}break;default:throw new Error("Wrong value for responderID")}if(i===-1)throw new Error("Correct certificate was not found in OCSP response");s=this.certs[i];let o=[s];for(let h of this.certs){let d=await cC(h,s);d&&o.push(d)}if(!(await new gg({certs:o,trustedCerts:n}).verify({},t)).result)throw new Error("Validation of signer's certificate failed");return t.verifyWithPublicKey(this.tbsResponseData.tbsView,this.signature,this.certs[i].subjectPublicKeyInfo,this.signatureAlgorithm)}};Yn.CLASS_NAME="BasicOCSPResponse";var lb="tbs",hb="version",fb="subject",db="subjectPublicKeyInfo",_u="attributes",Dm="signatureAlgorithm",qm="signatureValue",Ah="CertificationRequestInfo",hC=`${Ah}.version`,fC=`${Ah}.subject`,dC=`${Ah}.subjectPublicKeyInfo`,LA=`${Ah}.attributes`,o3=[Ah,hC,fC,dC,LA,Dm,qm];function c3(r={}){let e=u.getParametersValue(r,"names",{});return new a.Sequence({name:e.CertificationRequestInfo||Ah,value:[new a.Integer({name:e.CertificationRequestInfoVersion||hC}),je.schema(e.subject||{names:{blockName:fC}}),cr.schema({names:{blockName:dC}}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({optional:!0,name:e.CertificationRequestInfoAttributes||LA,value:Qe.schema(e.attributes||{})})]})]})}var UA=class r extends B{get tbs(){return ie.BufferSourceConverter.toArrayBuffer(this.tbsView)}set tbs(e){this.tbsView=new Uint8Array(e)}constructor(e={}){super(),this.tbsView=new Uint8Array(u.getParametersValue(e,lb,r.defaultValues(lb))),this.version=u.getParametersValue(e,hb,r.defaultValues(hb)),this.subject=u.getParametersValue(e,fb,r.defaultValues(fb)),this.subjectPublicKeyInfo=u.getParametersValue(e,db,r.defaultValues(db)),_u in e&&(this.attributes=u.getParametersValue(e,_u,r.defaultValues(_u))),this.signatureAlgorithm=u.getParametersValue(e,Dm,r.defaultValues(Dm)),this.signatureValue=u.getParametersValue(e,qm,r.defaultValues(qm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case lb:return ct;case hb:return 0;case fb:return new je;case db:return new cr;case _u:return[];case Dm:return new b;case qm:return new a.BitString;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({value:[c3(t.certificationRequestInfo||{}),new a.Sequence({name:t.signatureAlgorithm||Dm,value:[new a.ObjectIdentifier,new a.Any({optional:!0})]}),new a.BitString({name:t.signatureValue||qm})]})}fromSchema(e){u.clearProps(e,o3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.tbsView=t.result.CertificationRequestInfo.valueBeforeDecodeView,this.version=t.result[hC].valueBlock.valueDec,this.subject=new je({schema:t.result[fC]}),this.subjectPublicKeyInfo=new cr({schema:t.result[dC]}),LA in t.result&&(this.attributes=Array.from(t.result[LA],s=>new Qe({schema:s}))),this.signatureAlgorithm=new b({schema:t.result.signatureAlgorithm}),this.signatureValue=t.result.signatureValue}encodeTBS(){let e=[new a.Integer({value:this.version}),this.subject.toSchema(),this.subjectPublicKeyInfo.toSchema()];return _u in this&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:Array.from(this.attributes||[],t=>t.toSchema())})),new a.Sequence({value:e})}toSchema(e=!1){let t;if(e===!1){if(this.tbsView.byteLength===0)return r.schema();let s=a.fromBER(this.tbsView);I.assert(s,"PKCS#10 Certificate Request"),t=s.result}else t=this.encodeTBS();return new a.Sequence({value:[t,this.signatureAlgorithm.toSchema(),this.signatureValue]})}toJSON(){let e={tbs:ie.Convert.ToHex(this.tbsView),version:this.version,subject:this.subject.toJSON(),subjectPublicKeyInfo:this.subjectPublicKeyInfo.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signatureValue:this.signatureValue.toJSON()};return _u in this&&(e.attributes=Array.from(this.attributes||[],t=>t.toJSON())),e}async sign(e,t="SHA-1",s=ae(!0)){if(!e)throw new Error("Need to provide a private key for signing");let i=await s.getSignatureParameters(e,t),n=i.parameters;this.signatureAlgorithm=i.signatureAlgorithm,this.tbsView=new Uint8Array(this.encodeTBS().toBER());let o=await s.signWithPrivateKey(this.tbsView,e,n);this.signatureValue=new a.BitString({valueHex:o})}async verify(e=ae(!0)){return e.verifyWithPublicKey(this.tbsView,this.signatureValue,this.subjectPublicKeyInfo,this.signatureAlgorithm)}async getPublicKey(e,t=ae(!0)){return t.getPublicKey(this.subjectPublicKeyInfo,this.signatureAlgorithm,e)}};UA.CLASS_NAME="CertificationRequest";var So="digestAlgorithm",Ao="digest",u3=[So,Ao],Os=class r extends B{constructor(e={}){super(),this.digestAlgorithm=u.getParametersValue(e,So,r.defaultValues(So)),this.digest=u.getParametersValue(e,Ao,r.defaultValues(Ao)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case So:return new b;case Ao:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case So:return b.compareWithDefault("algorithmId",t.algorithmId)&&!("algorithmParams"in t);case Ao:return t.isEqual(r.defaultValues(e));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.digestAlgorithm||{names:{blockName:So}}),new a.OctetString({name:t.digest||Ao})]})}fromSchema(e){u.clearProps(e,u3);let t=a.compareSchema(e,e,r.schema({names:{digestAlgorithm:{names:{blockName:So}},digest:Ao}}));I.assertSchema(t,this.className),this.digestAlgorithm=new b({schema:t.result.digestAlgorithm}),this.digest=t.result.digest}toSchema(){return new a.Sequence({value:[this.digestAlgorithm.toSchema(),this.digest]})}toJSON(){return{digestAlgorithm:this.digestAlgorithm.toJSON(),digest:this.digest.toJSON()}}};Os.CLASS_NAME="DigestInfo";var bl="eContentType",es="eContent",l3=[bl,es],Ts=class r extends B{constructor(e={}){if(super(),this.eContentType=u.getParametersValue(e,bl,r.defaultValues(bl)),es in e&&(this.eContent=u.getParametersValue(e,es,r.defaultValues(es)),this.eContent.idBlock.tagClass===1&&this.eContent.idBlock.tagNumber===4&&this.eContent.idBlock.isConstructed===!1)){let t=new a.OctetString({idBlock:{isConstructed:!0},isConstructed:!0}),s=0,i=this.eContent.valueBlock.valueHexView.slice().buffer,n=i.byteLength;for(;n>0;){let o=new Uint8Array(i,s,s+65536>i.byteLength?i.byteLength-s:65536),c=new ArrayBuffer(o.length),l=new Uint8Array(c);for(let h=0;h<l.length;h++)l[h]=o[h];t.valueBlock.value.push(new a.OctetString({valueHex:c})),n-=o.length,s+=o.length}this.eContent=t}e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case bl:return f;case es:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case bl:return t===f;case es:return t.idBlock.tagClass===1&&t.idBlock.tagNumber===4?t.isEqual(r.defaultValues(es)):!1;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.eContentType||f}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Any({name:t.eContent||f})]})]})}fromSchema(e){u.clearProps(e,l3);let t=a.compareSchema(e,e,r.schema({names:{eContentType:bl,eContent:es}}));I.assertSchema(t,this.className),this.eContentType=t.result.eContentType.valueBlock.toString(),es in t.result&&(this.eContent=t.result.eContent)}toSchema(){let e=[];return e.push(new a.ObjectIdentifier({value:this.eContentType})),this.eContent&&r.compareWithDefault(es,this.eContent)===!1&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[this.eContent]})),new a.Sequence({value:e})}toJSON(){let e={eContentType:this.eContentType};return this.eContent&&r.compareWithDefault(es,this.eContent)===!1&&(e.eContent=this.eContent.toJSON()),e}};Ts.CLASS_NAME="EncapsulatedContentInfo";var kb=class extends Ni{constructor(e={}){super(e)}},wo="mac",_o="macSalt",gi="iterations",h3=[wo,_o,gi],ts=class r extends B{constructor(e={}){super(),this.mac=u.getParametersValue(e,wo,r.defaultValues(wo)),this.macSalt=u.getParametersValue(e,_o,r.defaultValues(_o)),gi in e&&(this.iterations=u.getParametersValue(e,gi,r.defaultValues(gi))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case wo:return new Os;case _o:return new a.OctetString;case gi:return 1;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case wo:return Os.compareWithDefault("digestAlgorithm",t.digestAlgorithm)&&Os.compareWithDefault("digest",t.digest);case _o:return t.isEqual(r.defaultValues(e));case gi:return t===r.defaultValues(e);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,optional:t.optional||!0,value:[Os.schema(t.mac||{names:{blockName:wo}}),new a.OctetString({name:t.macSalt||_o}),new a.Integer({optional:!0,name:t.iterations||gi})]})}fromSchema(e){u.clearProps(e,h3);let t=a.compareSchema(e,e,r.schema({names:{mac:{names:{blockName:wo}},macSalt:_o,iterations:gi}}));I.assertSchema(t,this.className),this.mac=new Os({schema:t.result.mac}),this.macSalt=t.result.macSalt,gi in t.result&&(this.iterations=t.result.iterations.valueBlock.valueDec)}toSchema(){let e=[this.mac.toSchema(),this.macSalt];return this.iterations!==void 0&&e.push(new a.Integer({value:this.iterations})),new a.Sequence({value:e})}toJSON(){let e={mac:this.mac.toJSON(),macSalt:this.macSalt.toJSON()};return this.iterations!==void 0&&(e.iterations=this.iterations),e}};ts.CLASS_NAME="MacData";var Ln="hashAlgorithm",Un="hashedMessage",f3=[Ln,Un],or=class r extends B{static async create(e,t,s=ae(!0)){let i=s.getOIDByAlgorithm({name:e},!0,"hashAlgorithm"),n=await s.digest(e,t);return new r({hashAlgorithm:new b({algorithmId:i,algorithmParams:new a.Null}),hashedMessage:new a.OctetString({valueHex:n})})}constructor(e={}){super(),this.hashAlgorithm=u.getParametersValue(e,Ln,r.defaultValues(Ln)),this.hashedMessage=u.getParametersValue(e,Un,r.defaultValues(Un)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ln:return new b;case Un:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Ln:return t.algorithmId===f&&!("algorithmParams"in t);case Un:return t.isEqual(r.defaultValues(e))===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.hashAlgorithm||{}),new a.OctetString({name:t.hashedMessage||f})]})}fromSchema(e){u.clearProps(e,f3);let t=a.compareSchema(e,e,r.schema({names:{hashAlgorithm:{names:{blockName:Ln}},hashedMessage:Un}}));I.assertSchema(t,this.className),this.hashAlgorithm=new b({schema:t.result.hashAlgorithm}),this.hashedMessage=t.result.hashedMessage}toSchema(){return new a.Sequence({value:[this.hashAlgorithm.toSchema(),this.hashedMessage]})}toJSON(){return{hashAlgorithm:this.hashAlgorithm.toJSON(),hashedMessage:this.hashedMessage.toJSON()}}};or.CLASS_NAME="MessageImprint";var Cl="reqCert",Tn="singleRequestExtensions",d3=[Cl,Tn],Fo=class r extends B{constructor(e={}){super(),this.reqCert=u.getParametersValue(e,Cl,r.defaultValues(Cl)),Tn in e&&(this.singleRequestExtensions=u.getParametersValue(e,Tn,r.defaultValues(Tn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Cl:return new Gt;case Tn:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Cl:return t.isEqual(r.defaultValues(e));case Tn:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[Gt.schema(t.reqCert||{}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[ut.schema(t.extensions||{names:{blockName:t.singleRequestExtensions||f}})]})]})}fromSchema(e){u.clearProps(e,d3);let t=a.compareSchema(e,e,r.schema({names:{reqCert:{names:{blockName:Cl}},extensions:{names:{blockName:Tn}}}}));I.assertSchema(t,this.className),this.reqCert=new Gt({schema:t.result.reqCert}),Tn in t.result&&(this.singleRequestExtensions=Array.from(t.result.singleRequestExtensions.valueBlock.value,s=>new tr({schema:s})))}toSchema(){let e=[];return e.push(this.reqCert.toSchema()),this.singleRequestExtensions&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Sequence({value:Array.from(this.singleRequestExtensions,t=>t.toSchema())})]})),new a.Sequence({value:e})}toJSON(){let e={reqCert:this.reqCert.toJSON()};return this.singleRequestExtensions&&(e.singleRequestExtensions=Array.from(this.singleRequestExtensions,t=>t.toJSON())),e}};Fo.CLASS_NAME="Request";var WS="tbs",Pl="version",Il="requestorName",zS="requestList",El="requestExtensions",wh="TBSRequest",cA=`${wh}.${Pl}`,uA=`${wh}.${Il}`,Nb=`${wh}.requests`,lA=`${wh}.${El}`,p3=[wh,cA,uA,Nb,lA],Rr=class r extends B{get tbs(){return ie.BufferSourceConverter.toArrayBuffer(this.tbsView)}set tbs(e){this.tbsView=new Uint8Array(e)}constructor(e={}){super(),this.tbsView=new Uint8Array(u.getParametersValue(e,WS,r.defaultValues(WS))),Pl in e&&(this.version=u.getParametersValue(e,Pl,r.defaultValues(Pl))),Il in e&&(this.requestorName=u.getParametersValue(e,Il,r.defaultValues(Il))),this.requestList=u.getParametersValue(e,zS,r.defaultValues(zS)),El in e&&(this.requestExtensions=u.getParametersValue(e,El,r.defaultValues(El))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case WS:return ct;case Pl:return 0;case Il:return new Oe;case zS:case El:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case WS:return t.byteLength===0;case Pl:return t===r.defaultValues(e);case Il:return t.type===Oe.defaultValues("type")&&Object.keys(t.value).length===0;case zS:case El:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||wh,value:[new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({name:t.TBSRequestVersion||cA})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[Oe.schema(t.requestorName||{names:{blockName:uA}})]}),new a.Sequence({name:t.requestList||"TBSRequest.requestList",value:[new a.Repeated({name:t.requests||Nb,value:Fo.schema(t.requestNames||{})})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:2},value:[ut.schema(t.extensions||{names:{blockName:t.requestExtensions||lA}})]})]})}fromSchema(e){u.clearProps(e,p3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.tbsView=t.result.TBSRequest.valueBeforeDecodeView,cA in t.result&&(this.version=t.result[cA].valueBlock.valueDec),uA in t.result&&(this.requestorName=new Oe({schema:t.result[uA]})),this.requestList=Array.from(t.result[Nb],s=>new Fo({schema:s})),lA in t.result&&(this.requestExtensions=Array.from(t.result[lA].valueBlock.value,s=>new tr({schema:s})))}toSchema(e=!1){let t;if(e===!1){if(this.tbsView.byteLength===0)return r.schema();let s=a.fromBER(this.tbsView);if(I.assert(s,"TBS Request"),!(s.result instanceof a.Sequence))throw new Error("ASN.1 result should be SEQUENCE");t=s.result}else{let s=[];this.version!==void 0&&s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[new a.Integer({value:this.version})]})),this.requestorName&&s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:[this.requestorName.toSchema()]})),s.push(new a.Sequence({value:Array.from(this.requestList,i=>i.toSchema())})),this.requestExtensions&&s.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:2},value:[new a.Sequence({value:Array.from(this.requestExtensions,i=>i.toSchema())})]})),t=new a.Sequence({value:s})}return t}toJSON(){let e={};return this.version!=null&&(e.version=this.version),this.requestorName&&(e.requestorName=this.requestorName.toJSON()),e.requestList=Array.from(this.requestList,t=>t.toJSON()),this.requestExtensions&&(e.requestExtensions=Array.from(this.requestExtensions,t=>t.toJSON())),e}};Rr.CLASS_NAME="TBSRequest";var bu="signatureAlgorithm",Cu="signature",tn="certs",xs=class r extends B{constructor(e={}){super(),this.signatureAlgorithm=u.getParametersValue(e,bu,r.defaultValues(bu)),this.signature=u.getParametersValue(e,Cu,r.defaultValues(Cu)),tn in e&&(this.certs=u.getParametersValue(e,tn,r.defaultValues(tn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case bu:return new b;case Cu:return new a.BitString;case tn:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case bu:return t.algorithmId===f&&!("algorithmParams"in t);case Cu:return t.isEqual(r.defaultValues(e));case tn:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[b.schema(t.signatureAlgorithm||{}),new a.BitString({name:t.signature||f}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Sequence({value:[new a.Repeated({name:t.certs||f,value:$t.schema({})})]})]})]})}fromSchema(e){u.clearProps(e,[bu,Cu,tn]);let t=a.compareSchema(e,e,r.schema({names:{signatureAlgorithm:{names:{blockName:bu}},signature:Cu,certs:tn}}));I.assertSchema(t,this.className),this.signatureAlgorithm=new b({schema:t.result.signatureAlgorithm}),this.signature=t.result.signature,tn in t.result&&(this.certs=Array.from(t.result.certs,s=>new $t({schema:s})))}toSchema(){let e=[];return e.push(this.signatureAlgorithm.toSchema()),e.push(this.signature),this.certs&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Sequence({value:Array.from(this.certs,t=>t.toSchema())})]})),new a.Sequence({value:e})}toJSON(){let e={signatureAlgorithm:this.signatureAlgorithm.toJSON(),signature:this.signature.toJSON()};return this.certs&&(e.certs=Array.from(this.certs,t=>t.toJSON())),e}};xs.CLASS_NAME="Signature";var kl="tbsRequest",Vn="optionalSignature",m3=[kl,Vn],HA=class r extends B{constructor(e={}){super(),this.tbsRequest=u.getParametersValue(e,kl,r.defaultValues(kl)),Vn in e&&(this.optionalSignature=u.getParametersValue(e,Vn,r.defaultValues(Vn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case kl:return new Rr;case Vn:return new xs;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case kl:return Rr.compareWithDefault("tbs",t.tbs)&&Rr.compareWithDefault("version",t.version)&&Rr.compareWithDefault("requestorName",t.requestorName)&&Rr.compareWithDefault("requestList",t.requestList)&&Rr.compareWithDefault("requestExtensions",t.requestExtensions);case Vn:return xs.compareWithDefault("signatureAlgorithm",t.signatureAlgorithm)&&xs.compareWithDefault("signature",t.signature)&&xs.compareWithDefault("certs",t.certs);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||"OCSPRequest",value:[Rr.schema(t.tbsRequest||{names:{blockName:kl}}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[xs.schema(t.optionalSignature||{names:{blockName:Vn}})]})]})}fromSchema(e){u.clearProps(e,m3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.tbsRequest=new Rr({schema:t.result.tbsRequest}),Vn in t.result&&(this.optionalSignature=new xs({schema:t.result.optionalSignature}))}toSchema(e=!1){let t=[];return t.push(this.tbsRequest.toSchema(e)),this.optionalSignature&&t.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[this.optionalSignature.toSchema()]})),new a.Sequence({value:t})}toJSON(){let e={tbsRequest:this.tbsRequest.toJSON()};return this.optionalSignature&&(e.optionalSignature=this.optionalSignature.toJSON()),e}async createForCertificate(e,t,s=ae(!0)){let i=new Gt;await i.createForCertificate(e,t,s),this.tbsRequest.requestList.push(new Fo({reqCert:i}))}async sign(e,t="SHA-1",s=ae(!0)){if(we.assertEmpty(e,"privateKey","OCSPRequest.sign method"),!this.optionalSignature)throw new Error('Need to create "optionalSignature" field before signing');let i=await s.getSignatureParameters(e,t),n=i.parameters;this.optionalSignature.signatureAlgorithm=i.signatureAlgorithm;let o=this.tbsRequest.toSchema(!0).toBER(!1),c=await s.signWithPrivateKey(o,e,n);this.optionalSignature.signature=new a.BitString({valueHex:c})}verify(){}};HA.CLASS_NAME="OCSPRequest";var Nl="responseType",Bl="response",g3=[Nl,Bl],Pi=class r extends B{constructor(e={}){super(),this.responseType=u.getParametersValue(e,Nl,r.defaultValues(Nl)),this.response=u.getParametersValue(e,Bl,r.defaultValues(Bl)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Nl:return f;case Bl:return new a.OctetString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Nl:return t===f;case Bl:return t.isEqual(r.defaultValues(e));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.ObjectIdentifier({name:t.responseType||f}),new a.OctetString({name:t.response||f})]})}fromSchema(e){u.clearProps(e,g3);let t=a.compareSchema(e,e,r.schema({names:{responseType:Nl,response:Bl}}));I.assertSchema(t,this.className),this.responseType=t.result.responseType.valueBlock.toString(),this.response=t.result.response}toSchema(){return new a.Sequence({value:[new a.ObjectIdentifier({value:this.responseType}),this.response]})}toJSON(){return{responseType:this.responseType,response:this.response.toJSON()}}};Pi.CLASS_NAME="ResponseBytes";var Pu="responseStatus",oi="responseBytes",KA=class r extends B{constructor(e={}){super(),this.responseStatus=u.getParametersValue(e,Pu,r.defaultValues(Pu)),oi in e&&(this.responseBytes=u.getParametersValue(e,oi,r.defaultValues(oi))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Pu:return new a.Enumerated;case oi:return new Pi;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Pu:return t.isEqual(r.defaultValues(e));case oi:return Pi.compareWithDefault("responseType",t.responseType)&&Pi.compareWithDefault("response",t.response);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||"OCSPResponse",value:[new a.Enumerated({name:t.responseStatus||Pu}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[Pi.schema(t.responseBytes||{names:{blockName:oi}})]})]})}fromSchema(e){u.clearProps(e,[Pu,oi]);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.responseStatus=t.result.responseStatus,oi in t.result&&(this.responseBytes=new Pi({schema:t.result.responseBytes}))}toSchema(){let e=[];return e.push(this.responseStatus),this.responseBytes&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:[this.responseBytes.toSchema()]})),new a.Sequence({value:e})}toJSON(){let e={responseStatus:this.responseStatus.toJSON()};return this.responseBytes&&(e.responseBytes=this.responseBytes.toJSON()),e}async getCertificateStatus(e,t,s=ae(!0)){let i,n={isForCertificate:!1,status:2};if(!this.responseBytes||this.responseBytes.responseType!==Ym)return n;try{let o=a.fromBER(this.responseBytes.response.valueBlock.valueHexView);I.assert(o,"Basic OCSP response"),i=new Yn({schema:o.result})}catch{return n}return i.getCertificateStatus(e,t,s)}async sign(e,t,s=ae(!0)){var i;if(this.responseBytes&&this.responseBytes.responseType===Ym)return Yn.fromBER(this.responseBytes.response.valueBlock.valueHexView).sign(e,t,s);throw new Error(`Unknown ResponseBytes type: ${((i=this.responseBytes)===null||i===void 0?void 0:i.responseType)||"Unknown"}`)}async verify(e=null,t=ae(!0)){var s;if(!(oi in this))throw new Error("Empty ResponseBytes field");if(this.responseBytes&&this.responseBytes.responseType===Ym){let i=Yn.fromBER(this.responseBytes.response.valueBlock.valueHexView);return e!==null&&(i.certs||(i.certs=[]),i.certs.push(e)),i.verify({},t)}throw new Error(`Unknown ResponseBytes type: ${((s=this.responseBytes)===null||s===void 0?void 0:s.responseType)||"Unknown"}`)}};KA.CLASS_NAME="OCSPResponse";var Ea="type",yi="attributes",YS="encodedValue",y3=[yi],Kt=class r extends B{constructor(e={}){super(),this.type=u.getParametersValue(e,Ea,r.defaultValues(Ea)),this.attributes=u.getParametersValue(e,yi,r.defaultValues(yi)),this.encodedValue=u.getParametersValue(e,YS,r.defaultValues(YS)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ea:return-1;case yi:return[];case YS:return ct;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Ea:return t===r.defaultValues(Ea);case yi:return t.length===0;case YS:return t.byteLength===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Constructed({name:t.blockName||f,optional:!0,idBlock:{tagClass:3,tagNumber:t.tagNumber||0},value:[new a.Repeated({name:t.attributes||f,value:Qe.schema()})]})}fromSchema(e){u.clearProps(e,y3);let t=a.compareSchema(e,e,r.schema({names:{tagNumber:this.type,attributes:yi}}));I.assertSchema(t,this.className),this.type=t.result.idBlock.tagNumber,this.encodedValue=ie.BufferSourceConverter.toArrayBuffer(t.result.valueBeforeDecodeView);let s=new Uint8Array(this.encodedValue);if(s[0]=49,!(yi in t.result)){if(this.type===0)throw new Error("Wrong structure of SignedUnsignedAttributes");return}this.attributes=Array.from(t.result.attributes,i=>new Qe({schema:i}))}toSchema(){if(r.compareWithDefault(Ea,this.type)||r.compareWithDefault(yi,this.attributes))throw new Error('Incorrectly initialized "SignedAndUnsignedAttributes" class');return new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:this.type},value:Array.from(this.attributes,e=>e.toSchema())})}toJSON(){if(r.compareWithDefault(Ea,this.type)||r.compareWithDefault(yi,this.attributes))throw new Error('Incorrectly initialized "SignedAndUnsignedAttributes" class');return{type:this.type,attributes:Array.from(this.attributes,e=>e.toJSON())}}};Kt.CLASS_NAME="SignedAndUnsignedAttributes";var xl="version",bo="sid",Ol="digestAlgorithm",Rn="signedAttrs",Tl="signatureAlgorithm",jm="signature",Dn="unsignedAttrs",Zn="SignerInfo",Bb=`${Zn}.${xl}`,Mm=`${Zn}.${bo}`,xb=`${Zn}.${Ol}`,hA=`${Zn}.${Rn}`,Ob=`${Zn}.${Tl}`,Tb=`${Zn}.${jm}`,fA=`${Zn}.${Dn}`,v3=[Bb,Mm,xb,hA,Ob,Tb,fA],Jo=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,xl,r.defaultValues(xl)),this.sid=u.getParametersValue(e,bo,r.defaultValues(bo)),this.digestAlgorithm=u.getParametersValue(e,Ol,r.defaultValues(Ol)),Rn in e&&(this.signedAttrs=u.getParametersValue(e,Rn,r.defaultValues(Rn))),this.signatureAlgorithm=u.getParametersValue(e,Tl,r.defaultValues(Tl)),this.signature=u.getParametersValue(e,jm,r.defaultValues(jm)),Dn in e&&(this.unsignedAttrs=u.getParametersValue(e,Dn,r.defaultValues(Dn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case xl:return 0;case bo:return new a.Any;case Ol:return new b;case Rn:return new Kt({type:0});case Tl:return new b;case jm:return new a.OctetString;case Dn:return new Kt({type:1});default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case xl:return r.defaultValues(xl)===t;case bo:return t instanceof a.Any;case Ol:return t instanceof b?t.isEqual(r.defaultValues(Ol)):!1;case Rn:return Kt.compareWithDefault("type",t.type)&&Kt.compareWithDefault("attributes",t.attributes)&&Kt.compareWithDefault("encodedValue",t.encodedValue);case Tl:return t instanceof b?t.isEqual(r.defaultValues(Tl)):!1;case jm:case Dn:return Kt.compareWithDefault("type",t.type)&&Kt.compareWithDefault("attributes",t.attributes)&&Kt.compareWithDefault("encodedValue",t.encodedValue);default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:Zn,value:[new a.Integer({name:t.version||Bb}),new a.Choice({value:[_t.schema(t.sidSchema||{names:{blockName:Mm}}),new a.Choice({value:[new a.Constructed({optional:!0,name:t.sid||Mm,idBlock:{tagClass:3,tagNumber:0},value:[new a.OctetString]}),new a.Primitive({optional:!0,name:t.sid||Mm,idBlock:{tagClass:3,tagNumber:0}})]})]}),b.schema(t.digestAlgorithm||{names:{blockName:xb}}),Kt.schema(t.signedAttrs||{names:{blockName:hA,tagNumber:0}}),b.schema(t.signatureAlgorithm||{names:{blockName:Ob}}),new a.OctetString({name:t.signature||Tb}),Kt.schema(t.unsignedAttrs||{names:{blockName:fA,tagNumber:1}})]})}fromSchema(e){u.clearProps(e,v3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.version=t.result[Bb].valueBlock.valueDec;let s=t.result[Mm];s.idBlock.tagClass===1?this.sid=new _t({schema:s}):this.sid=s,this.digestAlgorithm=new b({schema:t.result[xb]}),hA in t.result&&(this.signedAttrs=new Kt({type:0,schema:t.result[hA]})),this.signatureAlgorithm=new b({schema:t.result[Ob]}),this.signature=t.result[Tb],fA in t.result&&(this.unsignedAttrs=new Kt({type:1,schema:t.result[fA]}))}toSchema(){if(r.compareWithDefault(bo,this.sid))throw new Error('Incorrectly initialized "SignerInfo" class');let e=[];return e.push(new a.Integer({value:this.version})),this.sid instanceof _t?e.push(this.sid.toSchema()):e.push(this.sid),e.push(this.digestAlgorithm.toSchema()),this.signedAttrs&&r.compareWithDefault(Rn,this.signedAttrs)===!1&&e.push(this.signedAttrs.toSchema()),e.push(this.signatureAlgorithm.toSchema()),e.push(this.signature),this.unsignedAttrs&&r.compareWithDefault(Dn,this.unsignedAttrs)===!1&&e.push(this.unsignedAttrs.toSchema()),new a.Sequence({value:e})}toJSON(){if(r.compareWithDefault(bo,this.sid))throw new Error('Incorrectly initialized "SignerInfo" class');let e={version:this.version,digestAlgorithm:this.digestAlgorithm.toJSON(),signatureAlgorithm:this.signatureAlgorithm.toJSON(),signature:this.signature.toJSON()};return this.sid instanceof a.Any||(e.sid=this.sid.toJSON()),this.signedAttrs&&r.compareWithDefault(Rn,this.signedAttrs)===!1&&(e.signedAttrs=this.signedAttrs.toJSON()),this.unsignedAttrs&&r.compareWithDefault(Dn,this.unsignedAttrs)===!1&&(e.unsignedAttrs=this.unsignedAttrs.toJSON()),e}};Jo.CLASS_NAME="SignerInfo";var Lm="version",Um="policy",Hm="messageImprint",Km="serialNumber",$m="genTime",Co="ordering",Po="nonce",Vl="accuracy",Rl="tsa",Dl="extensions",is="TSTInfo",Vb=`${is}.${Lm}`,Rb=`${is}.${Um}`,Db=`${is}.${Hm}`,qb=`${is}.${Km}`,jb=`${is}.${$m}`,dA=`${is}.${Vl}`,pA=`${is}.${Co}`,mA=`${is}.${Po}`,gA=`${is}.${Rl}`,yA=`${is}.${Dl}`,S3=[Vb,Rb,Db,qb,jb,dA,pA,mA,gA,yA],yg=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Lm,r.defaultValues(Lm)),this.policy=u.getParametersValue(e,Um,r.defaultValues(Um)),this.messageImprint=u.getParametersValue(e,Hm,r.defaultValues(Hm)),this.serialNumber=u.getParametersValue(e,Km,r.defaultValues(Km)),this.genTime=u.getParametersValue(e,$m,r.defaultValues($m)),Vl in e&&(this.accuracy=u.getParametersValue(e,Vl,r.defaultValues(Vl))),Co in e&&(this.ordering=u.getParametersValue(e,Co,r.defaultValues(Co))),Po in e&&(this.nonce=u.getParametersValue(e,Po,r.defaultValues(Po))),Rl in e&&(this.tsa=u.getParametersValue(e,Rl,r.defaultValues(Rl))),Dl in e&&(this.extensions=u.getParametersValue(e,Dl,r.defaultValues(Dl))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Lm:return 0;case Um:return f;case Hm:return new or;case Km:return new a.Integer;case $m:return new Date(0,0,0);case Vl:return new Ns;case Co:return!1;case Po:return new a.Integer;case Rl:return new Oe;case Dl:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Lm:case Um:case $m:case Co:return t===r.defaultValues(Co);case Hm:return or.compareWithDefault(Ln,t.hashAlgorithm)&&or.compareWithDefault(Un,t.hashedMessage);case Km:case Po:return t.isEqual(r.defaultValues(Po));case Vl:return Ns.compareWithDefault(Ai,t.seconds)&&Ns.compareWithDefault(wi,t.millis)&&Ns.compareWithDefault(_i,t.micros);case Rl:return Oe.compareWithDefault(Jl,t.type)&&Oe.compareWithDefault(Gl,t.value);case Dl:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||is,value:[new a.Integer({name:t.version||Vb}),new a.ObjectIdentifier({name:t.policy||Rb}),or.schema(t.messageImprint||{names:{blockName:Db}}),new a.Integer({name:t.serialNumber||qb}),new a.GeneralizedTime({name:t.genTime||jb}),Ns.schema(t.accuracy||{names:{blockName:dA}}),new a.Boolean({name:t.ordering||pA,optional:!0}),new a.Integer({name:t.nonce||mA,optional:!0}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[Oe.schema(t.tsa||{names:{blockName:gA}})]}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:[new a.Repeated({name:t.extensions||yA,value:tr.schema(t.extension||{})})]})]})}fromSchema(e){u.clearProps(e,S3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.version=t.result[Vb].valueBlock.valueDec,this.policy=t.result[Rb].valueBlock.toString(),this.messageImprint=new or({schema:t.result[Db]}),this.serialNumber=t.result[qb],this.genTime=t.result[jb].toDate(),dA in t.result&&(this.accuracy=new Ns({schema:t.result[dA]})),pA in t.result&&(this.ordering=t.result[pA].valueBlock.value),mA in t.result&&(this.nonce=t.result[mA]),gA in t.result&&(this.tsa=new Oe({schema:t.result[gA]})),yA in t.result&&(this.extensions=Array.from(t.result[yA],s=>new tr({schema:s})))}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),e.push(new a.ObjectIdentifier({value:this.policy})),e.push(this.messageImprint.toSchema()),e.push(this.serialNumber),e.push(new a.GeneralizedTime({valueDate:this.genTime})),this.accuracy&&e.push(this.accuracy.toSchema()),this.ordering!==void 0&&e.push(new a.Boolean({value:this.ordering})),this.nonce&&e.push(this.nonce),this.tsa&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[this.tsa.toSchema()]})),this.extensions&&e.push(new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:Array.from(this.extensions,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={version:this.version,policy:this.policy,messageImprint:this.messageImprint.toJSON(),serialNumber:this.serialNumber.toJSON(),genTime:this.genTime};return this.accuracy&&(e.accuracy=this.accuracy.toJSON()),this.ordering!==void 0&&(e.ordering=this.ordering),this.nonce&&(e.nonce=this.nonce.toJSON()),this.tsa&&(e.tsa=this.tsa.toJSON()),this.extensions&&(e.extensions=Array.from(this.extensions,t=>t.toJSON())),e}async verify(e,t=ae(!0)){if(!e.data)throw new Error('"data" is a mandatory attribute for TST_INFO verification');let s=e.data;if(e.notBefore&&this.genTime<e.notBefore)throw new Error("Generation time for TSTInfo object is less than notBefore value");if(e.notAfter&&this.genTime>e.notAfter)throw new Error("Generation time for TSTInfo object is more than notAfter value");let i=t.getAlgorithmByOID(this.messageImprint.hashAlgorithm.algorithmId,!0,"MessageImprint.hashAlgorithm"),n=await t.digest(i.name,new Uint8Array(s));return ie.BufferSourceConverter.isEqual(n,this.messageImprint.hashedMessage.valueBlock.valueHexView)}};yg.CLASS_NAME="TSTInfo";var ql="version",Fm="digestAlgorithms",Jm="encapContentInfo",jl="certificates",Ml="crls",Gm="signerInfos",tp="ocsps",Wo="SignedData",Mb=`${Wo}.${ql}`,vA=`${Wo}.${Fm}`,Lb=`${Wo}.${Jm}`,SA=`${Wo}.${jl}`,AA=`${Wo}.${Ml}`,wA=`${Wo}.${Gm}`,A3=[Mb,vA,Lb,SA,AA,wA],kt=class extends Error{constructor({message:e,code:t=0,date:s=new Date,signatureVerified:i=null,signerCertificate:n=null,signerCertificateVerified:o=null,timestampSerial:c=null,certificatePath:l=[]}){super(e),this.name="SignedDataVerifyError",this.date=s,this.code=t,this.timestampSerial=c,this.signatureVerified=i,this.signerCertificate=n,this.signerCertificateVerified=o,this.certificatePath=l}},Bi=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,ql,r.defaultValues(ql)),this.digestAlgorithms=u.getParametersValue(e,Fm,r.defaultValues(Fm)),this.encapContentInfo=u.getParametersValue(e,Jm,r.defaultValues(Jm)),jl in e&&(this.certificates=u.getParametersValue(e,jl,r.defaultValues(jl))),Ml in e&&(this.crls=u.getParametersValue(e,Ml,r.defaultValues(Ml))),tp in e&&(this.ocsps=u.getParametersValue(e,tp,r.defaultValues(tp))),this.signerInfos=u.getParametersValue(e,Gm,r.defaultValues(Gm)),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case ql:return 0;case Fm:return[];case Jm:return new Ts;case jl:return[];case Ml:return[];case tp:return[];case Gm:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case ql:return t===r.defaultValues(ql);case Jm:return Ts.compareWithDefault("eContentType",t.eContentType)&&Ts.compareWithDefault("eContent",t.eContent);case Fm:case jl:case Ml:case tp:case Gm:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return t.optional===void 0&&(t.optional=!1),new a.Sequence({name:t.blockName||Wo,optional:t.optional,value:[new a.Integer({name:t.version||Mb}),new a.Set({value:[new a.Repeated({name:t.digestAlgorithms||vA,value:b.schema()})]}),Ts.schema(t.encapContentInfo||{names:{blockName:Lb}}),new a.Constructed({name:t.certificates||SA,optional:!0,idBlock:{tagClass:3,tagNumber:0},value:Ds.schema().valueBlock.value}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:1},value:Jn.schema(t.crls||{names:{crls:AA}}).valueBlock.value}),new a.Set({value:[new a.Repeated({name:t.signerInfos||wA,value:Jo.schema()})]})]})}fromSchema(e){u.clearProps(e,A3);let t=a.compareSchema(e,e,r.schema());if(I.assertSchema(t,this.className),this.version=t.result[Mb].valueBlock.valueDec,vA in t.result&&(this.digestAlgorithms=Array.from(t.result[vA],s=>new b({schema:s}))),this.encapContentInfo=new Ts({schema:t.result[Lb]}),SA in t.result){let s=new Ds({schema:new a.Set({value:t.result[SA].valueBlock.value})});this.certificates=s.certificates.slice(0)}AA in t.result&&(this.crls=Array.from(t.result[AA],s=>s.idBlock.tagClass===1?new Xn({schema:s}):(s.idBlock.tagClass=1,s.idBlock.tagNumber=16,new Fn({schema:s})))),wA in t.result&&(this.signerInfos=Array.from(t.result[wA],s=>new Jo({schema:s})))}toSchema(e=!1){let t=[];if(this.certificates&&this.certificates.length&&this.certificates.some(s=>s instanceof To)||this.crls&&this.crls.length&&this.crls.some(s=>s instanceof Fn)?this.version=5:this.certificates&&this.certificates.length&&this.certificates.some(s=>s instanceof rs)?this.version=4:this.certificates&&this.certificates.length&&this.certificates.some(s=>s instanceof qo)||this.signerInfos.some(s=>s.version===3)||this.encapContentInfo.eContentType!==r.ID_DATA?this.version=3:this.version=1,t.push(new a.Integer({value:this.version})),t.push(new a.Set({value:Array.from(this.digestAlgorithms,s=>s.toSchema())})),t.push(this.encapContentInfo.toSchema()),this.certificates){let i=new Ds({certificates:this.certificates}).toSchema();t.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:i.valueBlock.value}))}return this.crls&&t.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:1},value:Array.from(this.crls,s=>{if(s instanceof Fn){let i=s.toSchema();return i.idBlock.tagClass=3,i.idBlock.tagNumber=1,i}return s.toSchema(e)})})),t.push(new a.Set({value:Array.from(this.signerInfos,s=>s.toSchema())})),new a.Sequence({value:t})}toJSON(){let e={version:this.version,digestAlgorithms:Array.from(this.digestAlgorithms,t=>t.toJSON()),encapContentInfo:this.encapContentInfo.toJSON(),signerInfos:Array.from(this.signerInfos,t=>t.toJSON())};return this.certificates&&(e.certificates=Array.from(this.certificates,t=>t.toJSON())),this.crls&&(e.crls=Array.from(this.crls,t=>t.toJSON())),e}async verify({signer:e=-1,data:t=ct,trustedCerts:s=[],checkDate:i=new Date,checkChain:n=!1,passedWhenNotRevValues:o=!1,extendedMode:c=!1,findOrigin:l=null,findIssuer:h=null}={},d=ae(!0)){let m=null,p=null;try{let A=ct,w=f,C=[],S=this.signerInfos[e];if(!S)throw new kt({date:i,code:1,message:"Unable to get signer by supplied index"});if(!this.certificates)throw new kt({date:i,code:2,message:"No certificates attached to this signed data"});if(S.sid instanceof _t){for(let M of this.certificates)if(M instanceof $t&&M.issuer.isEqual(S.sid.issuer)&&M.serialNumber.isEqual(S.sid.serialNumber)){m=M;break}}else{let M=S.sid,$=M.idBlock.isConstructed?M.valueBlock.value[0].valueBlock.valueHex:M.valueBlock.valueHex;for(let te of this.certificates){if(!(te instanceof $t))continue;let Ce=await d.digest({name:"sha-1"},te.subjectPublicKeyInfo.subjectPublicKey.valueBlock.valueHexView);if(u.isEqualBuffer(Ce,$)){m=te;break}}}if(!m)throw new kt({date:i,code:3,message:"Unable to find signer certificate"});if(this.encapContentInfo.eContentType===dx){if(!this.encapContentInfo.eContent)throw new kt({date:i,code:15,message:"Error during verification: TSTInfo eContent is empty",signatureVerified:null,signerCertificate:m,timestampSerial:p,signerCertificateVerified:!0});let M;try{M=yg.fromBER(this.encapContentInfo.eContent.valueBlock.valueHexView)}catch{throw new kt({date:i,code:15,message:"Error during verification: TSTInfo wrong ASN.1 schema ",signatureVerified:null,signerCertificate:m,timestampSerial:p,signerCertificateVerified:!0})}if(i=M.genTime,p=M.serialNumber.valueBlock.valueHexView.slice().buffer,t.byteLength===0)throw new kt({date:i,code:4,message:"Missed detached data input array"});if(!await M.verify({data:t},d))throw new kt({date:i,code:15,message:"Error during verification: TSTInfo verification is failed",signatureVerified:!1,signerCertificate:m,timestampSerial:p,signerCertificateVerified:!0})}if(n){let M=this.certificates.filter(oe=>oe instanceof $t&&!!cC(oe,m)),$={checkDate:i,certs:M,trustedCerts:s};h&&($.findIssuer=h),l&&($.findOrigin=l);let te=new gg($);if(te.certs.push(m),this.crls)for(let oe of this.crls)"thisUpdate"in oe?te.crls.push(oe):oe.otherRevInfoFormat===Ym&&te.ocsps.push(new Yn({schema:oe.otherRevInfo}));this.ocsps&&te.ocsps.push(...this.ocsps);let Ce=await te.verify({passedWhenNotRevValues:o},d).catch(oe=>{throw new kt({date:i,code:5,message:`Validation of signer's certificate failed with error: ${oe instanceof Object?oe.resultMessage:oe}`,signerCertificate:m,signerCertificateVerified:!1})});if(Ce.certificatePath&&(C=Ce.certificatePath),!Ce.result)throw new kt({date:i,code:5,message:`Validation of signer's certificate failed: ${Ce.resultMessage}`,signerCertificate:m,signerCertificateVerified:!1})}let q=d.getAlgorithmByOID(S.digestAlgorithm.algorithmId);if(!("name"in q))throw new kt({date:i,code:7,message:`Unsupported signature algorithm: ${S.digestAlgorithm.algorithmId}`,signerCertificate:m,signerCertificateVerified:!0});w=q.name;let L=this.encapContentInfo.eContent;if(L)L.idBlock.tagClass===1&&L.idBlock.tagNumber===4?t=L.getValue():t=L.valueBlock.valueBeforeDecodeView.slice().buffer;else if(t.byteLength===0)throw new kt({date:i,code:8,message:"Missed detached data input array",signerCertificate:m,signerCertificateVerified:!0});if(S.signedAttrs){let M=!1,$=!1;for(let te of S.signedAttrs.attributes)if(te.type==="1.2.840.113549.1.9.3"&&(M=!0),te.type==="1.2.840.113549.1.9.4"&&($=!0,A=te.values[0].valueBlock.valueHex),M&&$)break;if(M===!1)throw new kt({date:i,code:9,message:'Attribute "content-type" is a mandatory attribute for "signed attributes"',signerCertificate:m,signerCertificateVerified:!0});if($===!1)throw new kt({date:i,code:10,message:'Attribute "message-digest" is a mandatory attribute for "signed attributes"',signatureVerified:null,signerCertificate:m,signerCertificateVerified:!0})}if(S.signedAttrs){let M=await d.digest(w,new Uint8Array(t));if(!u.isEqualBuffer(M,A))throw new kt({date:i,code:15,message:"Error during verification: Message digest doesn't match",signatureVerified:null,signerCertificate:m,timestampSerial:p,signerCertificateVerified:!0});t=S.signedAttrs.encodedValue}let j=S.signatureAlgorithm.algorithmId==="1.2.840.113549.1.1.1"?await d.verifyWithPublicKey(t,S.signature,m.subjectPublicKeyInfo,S.signatureAlgorithm,w):await d.verifyWithPublicKey(t,S.signature,m.subjectPublicKeyInfo,S.signatureAlgorithm);return c?{date:i,code:14,message:f,signatureVerified:j,signerCertificate:m,timestampSerial:p,signerCertificateVerified:!0,certificatePath:C}:j}catch(A){throw A instanceof kt?A:new kt({date:i,code:15,message:`Error during verification: ${A instanceof Error?A.message:A}`,signatureVerified:null,signerCertificate:m,timestampSerial:p,signerCertificateVerified:!0})}}async sign(e,t,s="SHA-1",i=ct,n=ae(!0)){var o;if(!e)throw new Error("Need to provide a private key for signing");let c=this.signerInfos[t];if(!c)throw new RangeError("SignerInfo index is out of range");!(!((o=c.signedAttrs)===null||o===void 0)&&o.attributes.length)&&"hash"in e.algorithm&&"hash"in e.algorithm&&e.algorithm.hash&&(s=e.algorithm.hash.name);let l=n.getOIDByAlgorithm({name:s},!0,"hashAlgorithm");this.digestAlgorithms.filter(p=>p.algorithmId===l).length===0&&this.digestAlgorithms.push(new b({algorithmId:l,algorithmParams:new a.Null})),c.digestAlgorithm=new b({algorithmId:l,algorithmParams:new a.Null});let h=await n.getSignatureParameters(e,s),d=h.parameters;if(c.signatureAlgorithm=h.signatureAlgorithm,c.signedAttrs)if(c.signedAttrs.encodedValue.byteLength!==0)i=c.signedAttrs.encodedValue;else{i=c.signedAttrs.toSchema().toBER();let p=ie.BufferSourceConverter.toUint8Array(i);p[0]=49}else{let p=this.encapContentInfo.eContent;if(p)p.idBlock.tagClass===1&&p.idBlock.tagNumber===4?i=p.getValue():i=p.valueBlock.valueBeforeDecodeView.slice().buffer;else if(i.byteLength===0)throw new Error("Missed detached data input array")}let m=await n.signWithPrivateKey(i,e,d);c.signature=new a.OctetString({valueHex:m})}};Bi.CLASS_NAME="SignedData";Bi.ID_DATA=QA;var Io="version",Eo="authSafe",vi="macData",rp="parsedValue",w3=[Io,Eo,vi],$A=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Io,r.defaultValues(Io)),this.authSafe=u.getParametersValue(e,Eo,r.defaultValues(Eo)),vi in e&&(this.macData=u.getParametersValue(e,vi,r.defaultValues(vi))),rp in e&&(this.parsedValue=u.getParametersValue(e,rp,r.defaultValues(rp))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Io:return 3;case Eo:return new We;case vi:return new ts;case rp:return{};default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Io:return t===r.defaultValues(e);case Eo:return We.compareWithDefault("contentType",t.contentType)&&We.compareWithDefault("content",t.content);case vi:return ts.compareWithDefault("mac",t.mac)&&ts.compareWithDefault("macSalt",t.macSalt)&&ts.compareWithDefault("iterations",t.iterations);case rp:return t instanceof Object&&Object.keys(t).length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.version||Io}),We.schema(t.authSafe||{names:{blockName:Eo}}),ts.schema(t.macData||{names:{blockName:vi,optional:!0}})]})}fromSchema(e){u.clearProps(e,w3);let t=a.compareSchema(e,e,r.schema({names:{version:Io,authSafe:{names:{blockName:Eo}},macData:{names:{blockName:vi}}}}));I.assertSchema(t,this.className),this.version=t.result.version.valueBlock.valueDec,this.authSafe=new We({schema:t.result.authSafe}),vi in t.result&&(this.macData=new ts({schema:t.result.macData}))}toSchema(){let e=[new a.Integer({value:this.version}),this.authSafe.toSchema()];return this.macData&&e.push(this.macData.toSchema()),new a.Sequence({value:e})}toJSON(){let e={version:this.version,authSafe:this.authSafe.toJSON()};return this.macData&&(e.macData=this.macData.toJSON()),e}async makeInternalValues(e={},t=ae(!0)){if(xe.assert(e,"parameters","object"),!this.parsedValue)throw new Error('Please call "parseValues" function first in order to make "parsedValue" data');switch(we.assertEmpty(this.parsedValue.integrityMode,"integrityMode","parsedValue"),we.assertEmpty(this.parsedValue.authenticatedSafe,"authenticatedSafe","parsedValue"),this.parsedValue.integrityMode){case 0:{if(!("iterations"in e))throw new we("iterations");we.assertEmpty(e.pbkdf2HashAlgorithm,"pbkdf2HashAlgorithm"),we.assertEmpty(e.hmacHashAlgorithm,"hmacHashAlgorithm"),we.assertEmpty(e.password,"password");let s=new ArrayBuffer(64),i=new Uint8Array(s);t.getRandomValues(i);let n=this.parsedValue.authenticatedSafe.toSchema().toBER(!1);this.authSafe=new We({contentType:We.DATA,content:new a.OctetString({valueHex:n})});let o=await t.stampDataWithPassword({password:e.password,hashAlgorithm:e.hmacHashAlgorithm,salt:s,iterationCount:e.iterations,contentToStamp:n});this.macData=new ts({mac:new Os({digestAlgorithm:new b({algorithmId:t.getOIDByAlgorithm({name:e.hmacHashAlgorithm},!0,"hmacHashAlgorithm")}),digest:new a.OctetString({valueHex:o})}),macSalt:new a.OctetString({valueHex:s}),iterations:e.iterations})}break;case 1:{if(!("signingCertificate"in e))throw new we("signingCertificate");we.assertEmpty(e.privateKey,"privateKey"),we.assertEmpty(e.hashAlgorithm,"hashAlgorithm");let s=this.parsedValue.authenticatedSafe.toSchema().toBER(!1),i=new Bi({version:1,encapContentInfo:new Ts({eContentType:"1.2.840.113549.1.7.1",eContent:new a.OctetString({valueHex:s})}),certificates:[e.signingCertificate]}),n=await t.digest({name:e.hashAlgorithm},new Uint8Array(s)),o=[];o.push(new Qe({type:"1.2.840.113549.1.9.3",values:[new a.ObjectIdentifier({value:"1.2.840.113549.1.7.1"})]})),o.push(new Qe({type:"1.2.840.113549.1.9.5",values:[new a.UTCTime({valueDate:new Date})]})),o.push(new Qe({type:"1.2.840.113549.1.9.4",values:[new a.OctetString({valueHex:n})]})),i.signerInfos.push(new Jo({version:1,sid:new _t({issuer:e.signingCertificate.issuer,serialNumber:e.signingCertificate.serialNumber}),signedAttrs:new Kt({type:0,attributes:o})})),await i.sign(e.privateKey,0,e.hashAlgorithm,void 0,t),this.authSafe=new We({contentType:"1.2.840.113549.1.7.2",content:i.toSchema(!0)})}break;default:throw new Error(`Parameter "integrityMode" has unknown value: ${this.parsedValue.integrityMode}`)}}async parseInternalValues(e,t=ae(!0)){switch(xe.assert(e,"parameters","object"),e.checkIntegrity===void 0&&(e.checkIntegrity=!0),this.parsedValue={},this.authSafe.contentType){case We.DATA:{we.assertEmpty(e.password,"password"),this.parsedValue.integrityMode=0,xe.assert(this.authSafe.content,"authSafe.content",a.OctetString);let s=this.authSafe.content.getValue();if(this.parsedValue.authenticatedSafe=vh.fromBER(s),e.checkIntegrity){if(!this.macData)throw new Error('Absent "macData" value, can not check PKCS#12 data integrity');let i=t.getAlgorithmByOID(this.macData.mac.digestAlgorithm.algorithmId,!0,"digestAlgorithm");if(!await t.verifyDataStampedWithPassword({password:e.password,hashAlgorithm:i.name,salt:zl.BufferSourceConverter.toArrayBuffer(this.macData.macSalt.valueBlock.valueHexView),iterationCount:this.macData.iterations||1,contentToVerify:s,signatureToVerify:zl.BufferSourceConverter.toArrayBuffer(this.macData.mac.digest.valueBlock.valueHexView)}))throw new Error("Integrity for the PKCS#12 data is broken!")}}break;case We.SIGNED_DATA:{this.parsedValue.integrityMode=1;let s=new Bi({schema:this.authSafe.content}),i=s.encapContentInfo.eContent;we.assert(i,"eContent","cmsSigned.encapContentInfo"),xe.assert(i,"eContent",a.OctetString);let n=i.getValue();if(this.parsedValue.authenticatedSafe=vh.fromBER(n),!await s.verify({signer:0,checkChain:!1},t))throw new Error("Integrity for the PKCS#12 data is broken!")}break;default:throw new Error(`Incorrect value for "this.authSafe.contentType": ${this.authSafe.contentType}`)}}};$A.CLASS_NAME="PFX";var Ll="status",qn="statusStrings",jn="failInfo",_3=[Ll,qn,jn];g.PKIStatus=void 0;(function(r){r[r.granted=0]="granted",r[r.grantedWithMods=1]="grantedWithMods",r[r.rejection=2]="rejection",r[r.waiting=3]="waiting",r[r.revocationWarning=4]="revocationWarning",r[r.revocationNotification=5]="revocationNotification"})(g.PKIStatus||(g.PKIStatus={}));var $n=class r extends B{constructor(e={}){super(),this.status=u.getParametersValue(e,Ll,r.defaultValues(Ll)),qn in e&&(this.statusStrings=u.getParametersValue(e,qn,r.defaultValues(qn))),jn in e&&(this.failInfo=u.getParametersValue(e,jn,r.defaultValues(jn))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Ll:return 2;case qn:return[];case jn:return new a.BitString;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Ll:return t===r.defaultValues(e);case qn:return t.length===0;case jn:return t.isEqual(r.defaultValues(e));default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||f,value:[new a.Integer({name:t.status||f}),new a.Sequence({optional:!0,value:[new a.Repeated({name:t.statusStrings||f,value:new a.Utf8String})]}),new a.BitString({name:t.failInfo||f,optional:!0})]})}fromSchema(e){u.clearProps(e,_3);let t=a.compareSchema(e,e,r.schema({names:{status:Ll,statusStrings:qn,failInfo:jn}}));I.assertSchema(t,this.className);let s=t.result.status;if(s.valueBlock.isHexOnly===!0||s.valueBlock.valueDec<0||s.valueBlock.valueDec>5)throw new Error('PKIStatusInfo "status" has invalid value');this.status=s.valueBlock.valueDec,qn in t.result&&(this.statusStrings=t.result.statusStrings),jn in t.result&&(this.failInfo=t.result.failInfo)}toSchema(){let e=[];return e.push(new a.Integer({value:this.status})),this.statusStrings&&e.push(new a.Sequence({optional:!0,value:this.statusStrings})),this.failInfo&&e.push(this.failInfo),new a.Sequence({value:e})}toJSON(){let e={status:this.status};return this.statusStrings&&(e.statusStrings=Array.from(this.statusStrings,t=>t.toJSON())),this.failInfo&&(e.failInfo=this.failInfo.toJSON()),e}};$n.CLASS_NAME="PKIStatusInfo";var Wm="version",zm="messageImprint",Ul="reqPolicy",Hl="nonce",Si="certReq",Kl="extensions",zo="TimeStampReq",Ub=`${zo}.${Wm}`,Hb=`${zo}.${zm}`,_A=`${zo}.${Ul}`,bA=`${zo}.${Hl}`,CA=`${zo}.${Si}`,PA=`${zo}.${Kl}`,b3=[Ub,Hb,_A,bA,CA,PA],FA=class r extends B{constructor(e={}){super(),this.version=u.getParametersValue(e,Wm,r.defaultValues(Wm)),this.messageImprint=u.getParametersValue(e,zm,r.defaultValues(zm)),Ul in e&&(this.reqPolicy=u.getParametersValue(e,Ul,r.defaultValues(Ul))),Hl in e&&(this.nonce=u.getParametersValue(e,Hl,r.defaultValues(Hl))),Si in e&&(this.certReq=u.getParametersValue(e,Si,r.defaultValues(Si))),Kl in e&&(this.extensions=u.getParametersValue(e,Kl,r.defaultValues(Kl))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case Wm:return 0;case zm:return new or;case Ul:return f;case Hl:return new a.Integer;case Si:return!1;case Kl:return[];default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case Wm:case Ul:case Si:return t===r.defaultValues(e);case zm:return or.compareWithDefault("hashAlgorithm",t.hashAlgorithm)&&or.compareWithDefault("hashedMessage",t.hashedMessage);case Hl:return t.isEqual(r.defaultValues(e));case Kl:return t.length===0;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||zo,value:[new a.Integer({name:t.version||Ub}),or.schema(t.messageImprint||{names:{blockName:Hb}}),new a.ObjectIdentifier({name:t.reqPolicy||_A,optional:!0}),new a.Integer({name:t.nonce||bA,optional:!0}),new a.Boolean({name:t.certReq||CA,optional:!0}),new a.Constructed({optional:!0,idBlock:{tagClass:3,tagNumber:0},value:[new a.Repeated({name:t.extensions||PA,value:tr.schema()})]})]})}fromSchema(e){u.clearProps(e,b3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.version=t.result[Ub].valueBlock.valueDec,this.messageImprint=new or({schema:t.result[Hb]}),_A in t.result&&(this.reqPolicy=t.result[_A].valueBlock.toString()),bA in t.result&&(this.nonce=t.result[bA]),CA in t.result&&(this.certReq=t.result[CA].valueBlock.value),PA in t.result&&(this.extensions=Array.from(t.result[PA],s=>new tr({schema:s})))}toSchema(){let e=[];return e.push(new a.Integer({value:this.version})),e.push(this.messageImprint.toSchema()),this.reqPolicy&&e.push(new a.ObjectIdentifier({value:this.reqPolicy})),this.nonce&&e.push(this.nonce),Si in this&&r.compareWithDefault(Si,this.certReq)===!1&&e.push(new a.Boolean({value:this.certReq})),this.extensions&&e.push(new a.Constructed({idBlock:{tagClass:3,tagNumber:0},value:Array.from(this.extensions,t=>t.toSchema())})),new a.Sequence({value:e})}toJSON(){let e={version:this.version,messageImprint:this.messageImprint.toJSON()};return this.reqPolicy!==void 0&&(e.reqPolicy=this.reqPolicy),this.nonce!==void 0&&(e.nonce=this.nonce.toJSON()),this.certReq!==void 0&&r.compareWithDefault(Si,this.certReq)===!1&&(e.certReq=this.certReq),this.extensions&&(e.extensions=Array.from(this.extensions,t=>t.toJSON())),e}};FA.CLASS_NAME="TimeStampReq";var $l="status",Fl="timeStampToken",pC="TimeStampResp",Kb=`${pC}.${$l}`,IA=`${pC}.${Fl}`,C3=[Kb,IA],JA=class r extends B{constructor(e={}){super(),this.status=u.getParametersValue(e,$l,r.defaultValues($l)),Fl in e&&(this.timeStampToken=u.getParametersValue(e,Fl,r.defaultValues(Fl))),e.schema&&this.fromSchema(e.schema)}static defaultValues(e){switch(e){case $l:return new $n;case Fl:return new We;default:return super.defaultValues(e)}}static compareWithDefault(e,t){switch(e){case $l:return $n.compareWithDefault($l,t.status)&&!("statusStrings"in t)&&!("failInfo"in t);case Fl:return t.contentType===f&&t.content instanceof a.Any;default:return super.defaultValues(e)}}static schema(e={}){let t=u.getParametersValue(e,"names",{});return new a.Sequence({name:t.blockName||pC,value:[$n.schema(t.status||{names:{blockName:Kb}}),We.schema(t.timeStampToken||{names:{blockName:IA,optional:!0}})]})}fromSchema(e){u.clearProps(e,C3);let t=a.compareSchema(e,e,r.schema());I.assertSchema(t,this.className),this.status=new $n({schema:t.result[Kb]}),IA in t.result&&(this.timeStampToken=new We({schema:t.result[IA]}))}toSchema(){let e=[];return e.push(this.status.toSchema()),this.timeStampToken&&e.push(this.timeStampToken.toSchema()),new a.Sequence({value:e})}toJSON(){let e={status:this.status.toJSON()};return this.timeStampToken&&(e.timeStampToken=this.timeStampToken.toJSON()),e}async sign(e,t,s=ae(!0)){return this.assertContentType(),new Bi({schema:this.timeStampToken.content}).sign(e,0,t,void 0,s)}async verify(e={signer:0,trustedCerts:[],data:ct},t=ae(!0)){return this.assertContentType(),new Bi({schema:this.timeStampToken.content}).verify(e,t)}assertContentType(){if(!this.timeStampToken)throw new Error("timeStampToken is absent in TSP response");if(this.timeStampToken.contentType!==eC)throw new Error(`Wrong format of timeStampToken: ${this.timeStampToken.contentType}`)}};JA.CLASS_NAME="TimeStampResp";function P3(){if(typeof globalThis<"u"&&"crypto"in globalThis){let r="webcrypto";"webkitSubtle"in globalThis.crypto&&(r="safari"),Sb(r,new Do({name:r,crypto:globalThis.crypto}))}else if(typeof crypto<"u"&&"webcrypto"in crypto){let r="NodeJS ^15",e=crypto.webcrypto;Sb(r,new Do({name:r,crypto:e}))}}P3();g.AbstractCryptoEngine=kA;g.AccessDescription=Xl;g.Accuracy=Ns;g.AlgorithmIdentifier=b;g.AltName=Ql;g.ArgumentError=xe;g.AsnError=I;g.AttCertValidityPeriod=Vs;g.Attribute=Qe;g.AttributeCertificateInfoV1=Bo;g.AttributeCertificateInfoV2=Oo;g.AttributeCertificateV1=qo;g.AttributeCertificateV2=rs;g.AttributeTypeAndValue=Yl;g.AuthenticatedSafe=vh;g.AuthorityKeyIdentifier=Zl;g.BasicConstraints=eh;g.BasicOCSPResponse=Yn;g.CAVersion=Qm;g.CRLBag=fg;g.CRLDistributionPoints=nh;g.CertBag=ug;g.CertID=Gt;g.Certificate=$t;g.CertificateChainValidationEngine=gg;g.CertificatePolicies=sh;g.CertificateRevocationList=Xn;g.CertificateSet=Ds;g.CertificateTemplate=EA;g.CertificationRequest=UA;g.ChainValidationError=Ci;g.ContentInfo=We;g.CryptoEngine=Do;g.DigestInfo=Os;g.DistributionPoint=ih;g.ECCCMSSharedInfo=gh;g.ECNamedCurves=ss;g.ECPrivateKey=lh;g.ECPublicKey=Dr;g.EncapsulatedContentInfo=Ts;g.EncryptedContentInfo=Nt;g.EncryptedData=Qn;g.EnvelopedData=yh;g.ExtKeyUsage=Zm;g.Extension=tr;g.ExtensionValueFactory=NA;g.Extensions=ut;g.GeneralName=Oe;g.GeneralNames=At;g.GeneralSubtree=Kn;g.HASHED_MESSAGE=Un;g.HASH_ALGORITHM=Ln;g.Holder=xo;g.InfoAccess=ah;g.IssuerAndSerialNumber=_t;g.IssuerSerial=_r;g.IssuingDistributionPoint=eg;g.KEKIdentifier=zn;g.KEKRecipientInfo=Ko;g.KeyAgreeRecipientIdentifier=ki;g.KeyAgreeRecipientInfo=Ho;g.KeyBag=kb;g.KeyTransRecipientInfo=jo;g.MICROS=_i;g.MILLIS=wi;g.MacData=ts;g.MessageImprint=or;g.NameConstraints=tg;g.OCSPRequest=HA;g.OCSPResponse=KA;g.ObjectDigestInfo=Rs;g.OriginatorIdentifierOrKey=Gn;g.OriginatorInfo=Vo;g.OriginatorPublicKey=Mo;g.OtherCertificateFormat=To;g.OtherKeyAttribute=qs;g.OtherPrimeInfo=ko;g.OtherRecipientInfo=mh;g.OtherRevocationInfoFormat=Fn;g.PBES2Params=fh;g.PBKDF2Params=Ei;g.PFX=$A;g.PKCS8ShroudedKeyBag=dg;g.PKIStatusInfo=$n;g.POLICY_IDENTIFIER=Wl;g.POLICY_QUALIFIERS=Mn;g.ParameterError=we;g.PasswordRecipientinfo=$o;g.PkiObject=B;g.PolicyConstraints=rg;g.PolicyInformation=rh;g.PolicyMapping=oh;g.PolicyMappings=sg;g.PolicyQualifierInfo=th;g.PrivateKeyInfo=Ni;g.PrivateKeyUsagePeriod=ig;g.PublicKeyInfo=cr;g.QCStatement=ch;g.QCStatements=ng;g.RDN=pb;g.RSAESOAEPParams=Ro;g.RSAPrivateKey=hh;g.RSAPublicKey=uh;g.RSASSAPSSParams=No;g.RecipientEncryptedKey=Uo;g.RecipientEncryptedKeys=Wn;g.RecipientIdentifier=mg;g.RecipientInfo=Bs;g.RecipientKeyIdentifier=Lo;g.RelativeDistinguishedNames=je;g.Request=Fo;g.ResponseBytes=Pi;g.ResponseData=Vr;g.RevocationInfoChoices=Jn;g.RevokedCertificate=lg;g.SECONDS=Ai;g.SafeBag=ph;g.SafeBagValueFactory=MA;g.SafeContents=Ii;g.SecretBag=pg;g.Signature=xs;g.SignedAndUnsignedAttributes=Kt;g.SignedCertificateTimestamp=ag;g.SignedCertificateTimestampList=og;g.SignedData=Bi;g.SignedDataVerifyError=kt;g.SignerInfo=Jo;g.SingleResponse=Sh;g.SubjectDirectoryAttributes=cg;g.TBSRequest=Rr;g.TSTInfo=yg;g.TYPE=Jl;g.TYPE_AND_VALUES=rn;g.Time=wt;g.TimeStampReq=FA;g.TimeStampResp=JA;g.V2Form=dh;g.VALUE=Gl;g.VALUE_BEFORE_DECODE=sp;g.checkCA=cC;g.createCMSECDSASignature=wx;g.createECDSASignatureFromCMS=_x;g.getAlgorithmByOID=rj;g.getAlgorithmParameters=tj;g.getCrypto=ae;g.getEngine=Ax;g.getHashAlgorithm=sj;g.getOIDByAlgorithm=ej;g.getRandomValues=Zq;g.id_AnyPolicy=wr;g.id_AuthorityInfoAccess=XA;g.id_AuthorityKeyIdentifier=YA;g.id_BaseCRLNumber=sx;g.id_BasicConstraints=WA;g.id_CRLBag_X509CRL=vb;g.id_CRLDistributionPoints=zb;g.id_CRLNumber=rx;g.id_CRLReason=ix;g.id_CertBag_AttributeCertificate=yb;g.id_CertBag_SDSICertificate=px;g.id_CertBag_X509Certificate=gb;g.id_CertificateIssuer=Gb;g.id_CertificatePolicies=Yb;g.id_ContentType_Data=QA;g.id_ContentType_EncryptedData=rC;g.id_ContentType_EnvelopedData=tC;g.id_ContentType_SignedData=eC;g.id_ExtKeyUsage=ox;g.id_FreshestCRL=zA;g.id_InhibitAnyPolicy=cx;g.id_InvalidityDate=nx;g.id_IssuerAltName=Fb;g.id_IssuingDistributionPoint=Jb;g.id_KeyUsage=ex;g.id_MicrosoftAppPolicies=ax;g.id_MicrosoftCaVersion=hx;g.id_MicrosoftCertTemplateV1=vq;g.id_MicrosoftCertTemplateV2=lx;g.id_MicrosoftPrevCaCertHash=Sq;g.id_NameConstraints=Wb;g.id_PKIX_OCSP_Basic=Ym;g.id_PolicyConstraints=Qb;g.id_PolicyMappings=Xb;g.id_PrivateKeyUsagePeriod=tx;g.id_QCStatements=fx;g.id_SignedCertificateTimestampList=Zb;g.id_SubjectAltName=$b;g.id_SubjectDirectoryAttributes=QB;g.id_SubjectInfoAccess=ux;g.id_SubjectKeyIdentifier=ZB;g.id_ad=ZA;g.id_ad_caIssuers=Aq;g.id_ad_ocsp=wq;g.id_eContentType_TSTInfo=dx;g.id_pkix=mx;g.id_sha1=_q;g.id_sha256=bq;g.id_sha384=Cq;g.id_sha512=Pq;g.kdf=Ab;g.setEngine=Sb;g.stringPrep=bi;g.verifySCTsForCertificate=nj});var k={};o_(k,{__addDisposableResource:()=>zx,__assign:()=>e0,__asyncDelegator:()=>Ux,__asyncGenerator:()=>Lx,__asyncValues:()=>Hx,__await:()=>_h,__awaiter:()=>Vx,__classPrivateFieldGet:()=>Jx,__classPrivateFieldIn:()=>Wx,__classPrivateFieldSet:()=>Gx,__createBinding:()=>r0,__decorate:()=>Ex,__disposeResources:()=>Yx,__esDecorate:()=>Nx,__exportStar:()=>Dx,__extends:()=>Px,__generator:()=>Rx,__importDefault:()=>Fx,__importStar:()=>$x,__makeTemplateObject:()=>Kx,__metadata:()=>Tx,__param:()=>kx,__propKey:()=>xx,__read:()=>yC,__rest:()=>Ix,__rewriteRelativeImportExtension:()=>Xx,__runInitializers:()=>Bx,__setFunctionName:()=>Ox,__spread:()=>qx,__spreadArray:()=>Mx,__spreadArrays:()=>jx,__values:()=>t0,default:()=>k3});function Px(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");mC(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function Ix(r,e){var t={};for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&e.indexOf(s)<0&&(t[s]=r[s]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,s=Object.getOwnPropertySymbols(r);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(r,s[i])&&(t[s[i]]=r[s[i]]);return t}function Ex(r,e,t,s){var i=arguments.length,n=i<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,t):s,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(r,e,t,s);else for(var c=r.length-1;c>=0;c--)(o=r[c])&&(n=(i<3?o(n):i>3?o(e,t,n):o(e,t))||n);return i>3&&n&&Object.defineProperty(e,t,n),n}function kx(r,e){return function(t,s){e(t,s,r)}}function Nx(r,e,t,s,i,n){function o(q){if(q!==void 0&&typeof q!="function")throw new TypeError("Function expected");return q}for(var c=s.kind,l=c==="getter"?"get":c==="setter"?"set":"value",h=!e&&r?s.static?r:r.prototype:null,d=e||(h?Object.getOwnPropertyDescriptor(h,s.name):{}),m,p=!1,A=t.length-1;A>=0;A--){var w={};for(var C in s)w[C]=C==="access"?{}:s[C];for(var C in s.access)w.access[C]=s.access[C];w.addInitializer=function(q){if(p)throw new TypeError("Cannot add initializers after decoration has completed");n.push(o(q||null))};var S=(0,t[A])(c==="accessor"?{get:d.get,set:d.set}:d[l],w);if(c==="accessor"){if(S===void 0)continue;if(S===null||typeof S!="object")throw new TypeError("Object expected");(m=o(S.get))&&(d.get=m),(m=o(S.set))&&(d.set=m),(m=o(S.init))&&i.unshift(m)}else(m=o(S))&&(c==="field"?i.unshift(m):d[l]=m)}h&&Object.defineProperty(h,s.name,d),p=!0}function Bx(r,e,t){for(var s=arguments.length>2,i=0;i<e.length;i++)t=s?e[i].call(r,t):e[i].call(r);return s?t:void 0}function xx(r){return typeof r=="symbol"?r:"".concat(r)}function Ox(r,e,t){return typeof e=="symbol"&&(e=e.description?"[".concat(e.description,"]"):""),Object.defineProperty(r,"name",{configurable:!0,value:t?"".concat(t," ",e):e})}function Tx(r,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,e)}function Vx(r,e,t,s){function i(n){return n instanceof t?n:new t(function(o){o(n)})}return new(t||(t=Promise))(function(n,o){function c(d){try{h(s.next(d))}catch(m){o(m)}}function l(d){try{h(s.throw(d))}catch(m){o(m)}}function h(d){d.done?n(d.value):i(d.value).then(c,l)}h((s=s.apply(r,e||[])).next())})}function Rx(r,e){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},s,i,n,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=c(0),o.throw=c(1),o.return=c(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(h){return function(d){return l([h,d])}}function l(h){if(s)throw new TypeError("Generator is already executing.");for(;o&&(o=0,h[0]&&(t=0)),t;)try{if(s=1,i&&(n=h[0]&2?i.return:h[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,h[1])).done)return n;switch(i=0,n&&(h=[h[0]&2,n.value]),h[0]){case 0:case 1:n=h;break;case 4:return t.label++,{value:h[1],done:!1};case 5:t.label++,i=h[1],h=[0];continue;case 7:h=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(h[0]===6||h[0]===2)){t=0;continue}if(h[0]===3&&(!n||h[1]>n[0]&&h[1]<n[3])){t.label=h[1];break}if(h[0]===6&&t.label<n[1]){t.label=n[1],n=h;break}if(n&&t.label<n[2]){t.label=n[2],t.ops.push(h);break}n[2]&&t.ops.pop(),t.trys.pop();continue}h=e.call(r,t)}catch(d){h=[6,d],i=0}finally{s=n=0}if(h[0]&5)throw h[1];return{value:h[0]?h[1]:void 0,done:!0}}}function Dx(r,e){for(var t in r)t!=="default"&&!Object.prototype.hasOwnProperty.call(e,t)&&r0(e,r,t)}function t0(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],s=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&s>=r.length&&(r=void 0),{value:r&&r[s++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function yC(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var s=t.call(r),i,n=[],o;try{for(;(e===void 0||e-- >0)&&!(i=s.next()).done;)n.push(i.value)}catch(c){o={error:c}}finally{try{i&&!i.done&&(t=s.return)&&t.call(s)}finally{if(o)throw o.error}}return n}function qx(){for(var r=[],e=0;e<arguments.length;e++)r=r.concat(yC(arguments[e]));return r}function jx(){for(var r=0,e=0,t=arguments.length;e<t;e++)r+=arguments[e].length;for(var s=Array(r),i=0,e=0;e<t;e++)for(var n=arguments[e],o=0,c=n.length;o<c;o++,i++)s[i]=n[o];return s}function Mx(r,e,t){if(t||arguments.length===2)for(var s=0,i=e.length,n;s<i;s++)(n||!(s in e))&&(n||(n=Array.prototype.slice.call(e,0,s)),n[s]=e[s]);return r.concat(n||Array.prototype.slice.call(e))}function _h(r){return this instanceof _h?(this.v=r,this):new _h(r)}function Lx(r,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var s=t.apply(r,e||[]),i,n=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",o),i[Symbol.asyncIterator]=function(){return this},i;function o(A){return function(w){return Promise.resolve(w).then(A,m)}}function c(A,w){s[A]&&(i[A]=function(C){return new Promise(function(S,q){n.push([A,C,S,q])>1||l(A,C)})},w&&(i[A]=w(i[A])))}function l(A,w){try{h(s[A](w))}catch(C){p(n[0][3],C)}}function h(A){A.value instanceof _h?Promise.resolve(A.value.v).then(d,m):p(n[0][2],A)}function d(A){l("next",A)}function m(A){l("throw",A)}function p(A,w){A(w),n.shift(),n.length&&l(n[0][0],n[0][1])}}function Ux(r){var e,t;return e={},s("next"),s("throw",function(i){throw i}),s("return"),e[Symbol.iterator]=function(){return this},e;function s(i,n){e[i]=r[i]?function(o){return(t=!t)?{value:_h(r[i](o)),done:!1}:n?n(o):o}:n}}function Hx(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=r[Symbol.asyncIterator],t;return e?e.call(r):(r=typeof t0=="function"?t0(r):r[Symbol.iterator](),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(n){t[n]=r[n]&&function(o){return new Promise(function(c,l){o=r[n](o),i(c,l,o.done,o.value)})}}function i(n,o,c,l){Promise.resolve(l).then(function(h){n({value:h,done:c})},o)}}function Kx(r,e){return Object.defineProperty?Object.defineProperty(r,"raw",{value:e}):r.raw=e,r}function $x(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t=gC(r),s=0;s<t.length;s++)t[s]!=="default"&&r0(e,r,t[s]);return I3(e,r),e}function Fx(r){return r&&r.__esModule?r:{default:r}}function Jx(r,e,t,s){if(t==="a"&&!s)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!s:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?s:t==="a"?s.call(r):s?s.value:e.get(r)}function Gx(r,e,t,s,i){if(s==="m")throw new TypeError("Private method is not writable");if(s==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?r!==e||!i:!e.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return s==="a"?i.call(r,t):i?i.value=t:e.set(r,t),t}function Wx(r,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof r=="function"?e===r:r.has(e)}function zx(r,e,t){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var s,i;if(t){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");s=e[Symbol.asyncDispose]}if(s===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");s=e[Symbol.dispose],t&&(i=s)}if(typeof s!="function")throw new TypeError("Object not disposable.");i&&(s=function(){try{i.call(this)}catch(n){return Promise.reject(n)}}),r.stack.push({value:e,dispose:s,async:t})}else t&&r.stack.push({async:!0});return e}function Yx(r){function e(n){r.error=r.hasError?new E3(n,r.error,"An error was suppressed during disposal."):n,r.hasError=!0}var t,s=0;function i(){for(;t=r.stack.pop();)try{if(!t.async&&s===1)return s=0,r.stack.push(t),Promise.resolve().then(i);if(t.dispose){var n=t.dispose.call(t.value);if(t.async)return s|=2,Promise.resolve(n).then(i,function(o){return e(o),i()})}else s|=1}catch(o){e(o)}if(s===1)return r.hasError?Promise.reject(r.error):Promise.resolve();if(r.hasError)throw r.error}return i()}function Xx(r,e){return typeof r=="string"&&/^\.\.?\//.test(r)?r.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(t,s,i,n,o){return s?e?".jsx":".js":i&&(!n||!o)?t:i+n+"."+o.toLowerCase()+"js"}):r}var mC,e0,r0,I3,gC,E3,k3,N=eN(()=>{mC=function(r,e){return mC=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,s){t.__proto__=s}||function(t,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(t[i]=s[i])},mC(r,e)};e0=function(){return e0=Object.assign||function(e){for(var t,s=1,i=arguments.length;s<i;s++){t=arguments[s];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},e0.apply(this,arguments)};r0=Object.create?(function(r,e,t,s){s===void 0&&(s=t);var i=Object.getOwnPropertyDescriptor(e,t);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[t]}}),Object.defineProperty(r,s,i)}):(function(r,e,t,s){s===void 0&&(s=t),r[s]=e[t]});I3=Object.create?(function(r,e){Object.defineProperty(r,"default",{enumerable:!0,value:e})}):function(r,e){r.default=e},gC=function(r){return gC=Object.getOwnPropertyNames||function(e){var t=[];for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&(t[t.length]=s);return t},gC(r)};E3=typeof SuppressedError=="function"?SuppressedError:function(r,e,t){var s=new Error(t);return s.name="SuppressedError",s.error=r,s.suppressed=e,s};k3={__extends:Px,__assign:e0,__rest:Ix,__decorate:Ex,__param:kx,__esDecorate:Nx,__runInitializers:Bx,__propKey:xx,__setFunctionName:Ox,__metadata:Tx,__awaiter:Vx,__generator:Rx,__createBinding:r0,__exportStar:Dx,__values:t0,__read:yC,__spread:qx,__spreadArrays:jx,__spreadArray:Mx,__await:_h,__asyncGenerator:Lx,__asyncDelegator:Ux,__asyncValues:Hx,__makeTemplateObject:Kx,__importStar:$x,__importDefault:Fx,__classPrivateFieldGet:Jx,__classPrivateFieldSet:Gx,__classPrivateFieldIn:Wx,__addDisposableResource:zx,__disposeResources:Yx,__rewriteRelativeImportExtension:Xx}});var Yo=v(bh=>{"use strict";Object.defineProperty(bh,"__esModule",{value:!0});bh.AsnPropTypes=bh.AsnTypeTypes=void 0;var Qx;(function(r){r[r.Sequence=0]="Sequence",r[r.Set=1]="Set",r[r.Choice=2]="Choice"})(Qx||(bh.AsnTypeTypes=Qx={}));var Zx;(function(r){r[r.Any=1]="Any",r[r.Boolean=2]="Boolean",r[r.OctetString=3]="OctetString",r[r.BitString=4]="BitString",r[r.Integer=5]="Integer",r[r.Enumerated=6]="Enumerated",r[r.ObjectIdentifier=7]="ObjectIdentifier",r[r.Utf8String=8]="Utf8String",r[r.BmpString=9]="BmpString",r[r.UniversalString=10]="UniversalString",r[r.NumericString=11]="NumericString",r[r.PrintableString=12]="PrintableString",r[r.TeletexString=13]="TeletexString",r[r.VideotexString=14]="VideotexString",r[r.IA5String=15]="IA5String",r[r.GraphicString=16]="GraphicString",r[r.VisibleString=17]="VisibleString",r[r.GeneralString=18]="GeneralString",r[r.CharacterString=19]="CharacterString",r[r.UTCTime=20]="UTCTime",r[r.GeneralizedTime=21]="GeneralizedTime",r[r.DATE=22]="DATE",r[r.TimeOfDay=23]="TimeOfDay",r[r.DateTime=24]="DateTime",r[r.Duration=25]="Duration",r[r.TIME=26]="TIME",r[r.Null=27]="Null"})(Zx||(bh.AsnPropTypes=Zx={}))});var tO=v(s0=>{"use strict";Object.defineProperty(s0,"__esModule",{value:!0});s0.BitString=void 0;var vC=ni(),eO=_s(),SC=class{constructor(e,t=0){if(this.unusedBits=0,this.value=new ArrayBuffer(0),e)if(typeof e=="number")this.fromNumber(e);else if(eO.BufferSourceConverter.isBufferSource(e))this.unusedBits=t,this.value=eO.BufferSourceConverter.toArrayBuffer(e);else throw TypeError("Unsupported type of 'params' argument for BitString")}fromASN(e){if(!(e instanceof vC.BitString))throw new TypeError("Argument 'asn' is not instance of ASN.1 BitString");return this.unusedBits=e.valueBlock.unusedBits,this.value=e.valueBlock.valueHex,this}toASN(){return new vC.BitString({unusedBits:this.unusedBits,valueHex:this.value})}toSchema(e){return new vC.BitString({name:e})}toNumber(){let e="",t=new Uint8Array(this.value);for(let s of t)e+=s.toString(2).padStart(8,"0");return e=e.split("").reverse().join(""),this.unusedBits&&(e=e.slice(this.unusedBits).padStart(this.unusedBits,"0")),parseInt(e,2)}fromNumber(e){let t=e.toString(2),s=t.length+7>>3;this.unusedBits=(s<<3)-t.length;let i=new Uint8Array(s);t=t.padStart(s<<3,"0").split("").reverse().join("");let n=0;for(;n<s;)i[n]=parseInt(t.slice(n<<3,(n<<3)+8),2),n++;this.value=i.buffer}};s0.BitString=SC});var sO=v(i0=>{"use strict";Object.defineProperty(i0,"__esModule",{value:!0});i0.OctetString=void 0;var AC=ni(),rO=_s(),wC=class{get byteLength(){return this.buffer.byteLength}get byteOffset(){return 0}constructor(e){typeof e=="number"?this.buffer=new ArrayBuffer(e):rO.BufferSourceConverter.isBufferSource(e)?this.buffer=rO.BufferSourceConverter.toArrayBuffer(e):Array.isArray(e)?this.buffer=new Uint8Array(e):this.buffer=new ArrayBuffer(0)}fromASN(e){if(!(e instanceof AC.OctetString))throw new TypeError("Argument 'asn' is not instance of ASN.1 OctetString");return this.buffer=e.valueBlock.valueHex,this}toASN(){return new AC.OctetString({valueHex:this.buffer})}toSchema(e){return new AC.OctetString({name:e})}};i0.OctetString=wC});var _C=v(n0=>{"use strict";Object.defineProperty(n0,"__esModule",{value:!0});var iO=(N(),E(k));iO.__exportStar(tO(),n0);iO.__exportStar(sO(),n0)});var Sg=v(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.AsnNullConverter=F.AsnGeneralizedTimeConverter=F.AsnUTCTimeConverter=F.AsnCharacterStringConverter=F.AsnGeneralStringConverter=F.AsnVisibleStringConverter=F.AsnGraphicStringConverter=F.AsnIA5StringConverter=F.AsnVideotexStringConverter=F.AsnTeletexStringConverter=F.AsnPrintableStringConverter=F.AsnNumericStringConverter=F.AsnUniversalStringConverter=F.AsnBmpStringConverter=F.AsnUtf8StringConverter=F.AsnConstructedOctetStringConverter=F.AsnOctetStringConverter=F.AsnBooleanConverter=F.AsnObjectIdentifierConverter=F.AsnBitStringConverter=F.AsnIntegerBigIntConverter=F.AsnIntegerArrayBufferConverter=F.AsnEnumeratedConverter=F.AsnIntegerConverter=F.AsnAnyConverter=void 0;F.defaultConverter=B3;var ze=ni(),lt=Yo(),N3=_C();F.AsnAnyConverter={fromASN:r=>r instanceof ze.Null?null:r.valueBeforeDecodeView,toASN:r=>{if(r===null)return new ze.Null;let e=ze.fromBER(r);if(e.result.error)throw new Error(e.result.error);return e.result}};F.AsnIntegerConverter={fromASN:r=>r.valueBlock.valueHexView.byteLength>=4?r.valueBlock.toString():r.valueBlock.valueDec,toASN:r=>new ze.Integer({value:+r})};F.AsnEnumeratedConverter={fromASN:r=>r.valueBlock.valueDec,toASN:r=>new ze.Enumerated({value:r})};F.AsnIntegerArrayBufferConverter={fromASN:r=>r.valueBlock.valueHexView,toASN:r=>new ze.Integer({valueHex:r})};F.AsnIntegerBigIntConverter={fromASN:r=>r.toBigInt(),toASN:r=>ze.Integer.fromBigInt(r)};F.AsnBitStringConverter={fromASN:r=>r.valueBlock.valueHexView,toASN:r=>new ze.BitString({valueHex:r})};F.AsnObjectIdentifierConverter={fromASN:r=>r.valueBlock.toString(),toASN:r=>new ze.ObjectIdentifier({value:r})};F.AsnBooleanConverter={fromASN:r=>r.valueBlock.value,toASN:r=>new ze.Boolean({value:r})};F.AsnOctetStringConverter={fromASN:r=>r.valueBlock.valueHexView,toASN:r=>new ze.OctetString({valueHex:r})};F.AsnConstructedOctetStringConverter={fromASN:r=>new N3.OctetString(r.getValue()),toASN:r=>r.toASN()};function qr(r){return{fromASN:e=>e.valueBlock.value,toASN:e=>new r({value:e})}}F.AsnUtf8StringConverter=qr(ze.Utf8String);F.AsnBmpStringConverter=qr(ze.BmpString);F.AsnUniversalStringConverter=qr(ze.UniversalString);F.AsnNumericStringConverter=qr(ze.NumericString);F.AsnPrintableStringConverter=qr(ze.PrintableString);F.AsnTeletexStringConverter=qr(ze.TeletexString);F.AsnVideotexStringConverter=qr(ze.VideotexString);F.AsnIA5StringConverter=qr(ze.IA5String);F.AsnGraphicStringConverter=qr(ze.GraphicString);F.AsnVisibleStringConverter=qr(ze.VisibleString);F.AsnGeneralStringConverter=qr(ze.GeneralString);F.AsnCharacterStringConverter=qr(ze.CharacterString);F.AsnUTCTimeConverter={fromASN:r=>r.toDate(),toASN:r=>new ze.UTCTime({valueDate:r})};F.AsnGeneralizedTimeConverter={fromASN:r=>r.toDate(),toASN:r=>new ze.GeneralizedTime({valueDate:r})};F.AsnNullConverter={fromASN:()=>null,toASN:()=>new ze.Null};function B3(r){switch(r){case lt.AsnPropTypes.Any:return F.AsnAnyConverter;case lt.AsnPropTypes.BitString:return F.AsnBitStringConverter;case lt.AsnPropTypes.BmpString:return F.AsnBmpStringConverter;case lt.AsnPropTypes.Boolean:return F.AsnBooleanConverter;case lt.AsnPropTypes.CharacterString:return F.AsnCharacterStringConverter;case lt.AsnPropTypes.Enumerated:return F.AsnEnumeratedConverter;case lt.AsnPropTypes.GeneralString:return F.AsnGeneralStringConverter;case lt.AsnPropTypes.GeneralizedTime:return F.AsnGeneralizedTimeConverter;case lt.AsnPropTypes.GraphicString:return F.AsnGraphicStringConverter;case lt.AsnPropTypes.IA5String:return F.AsnIA5StringConverter;case lt.AsnPropTypes.Integer:return F.AsnIntegerConverter;case lt.AsnPropTypes.Null:return F.AsnNullConverter;case lt.AsnPropTypes.NumericString:return F.AsnNumericStringConverter;case lt.AsnPropTypes.ObjectIdentifier:return F.AsnObjectIdentifierConverter;case lt.AsnPropTypes.OctetString:return F.AsnOctetStringConverter;case lt.AsnPropTypes.PrintableString:return F.AsnPrintableStringConverter;case lt.AsnPropTypes.TeletexString:return F.AsnTeletexStringConverter;case lt.AsnPropTypes.UTCTime:return F.AsnUTCTimeConverter;case lt.AsnPropTypes.UniversalString:return F.AsnUniversalStringConverter;case lt.AsnPropTypes.Utf8String:return F.AsnUtf8StringConverter;case lt.AsnPropTypes.VideotexString:return F.AsnVideotexStringConverter;case lt.AsnPropTypes.VisibleString:return F.AsnVisibleStringConverter;default:return null}}});var a0=v(Ag=>{"use strict";Object.defineProperty(Ag,"__esModule",{value:!0});Ag.isConvertible=nO;Ag.isTypeOfArray=aO;Ag.isArrayEqual=x3;function nO(r){return typeof r=="function"&&r.prototype?r.prototype.toASN&&r.prototype.fromASN?!0:nO(r.prototype):!!(r&&typeof r=="object"&&"toASN"in r&&"fromASN"in r)}function aO(r){var e;if(r){let t=Object.getPrototypeOf(r);return((e=t?.prototype)===null||e===void 0?void 0:e.constructor)===Array?!0:aO(t)}return!1}function x3(r,e){if(!(r&&e)||r.byteLength!==e.byteLength)return!1;let t=new Uint8Array(r),s=new Uint8Array(e);for(let i=0;i<r.byteLength;i++)if(t[i]!==s[i])return!1;return!0}});var cO=v(o0=>{"use strict";Object.defineProperty(o0,"__esModule",{value:!0});o0.AsnSchemaStorage=void 0;var Cr=ni(),Ch=Yo(),oO=a0(),bC=class{constructor(){this.items=new WeakMap}has(e){return this.items.has(e)}get(e,t=!1){let s=this.items.get(e);if(!s)throw new Error(`Cannot get schema for '${e.prototype.constructor.name}' target`);if(t&&!s.schema)throw new Error(`Schema '${e.prototype.constructor.name}' doesn't contain ASN.1 schema. Call 'AsnSchemaStorage.cache'.`);return s}cache(e){let t=this.get(e);t.schema||(t.schema=this.create(e,!0))}createDefault(e){let t={type:Ch.AsnTypeTypes.Sequence,items:{}},s=this.findParentSchema(e);return s&&(Object.assign(t,s),t.items=Object.assign({},t.items,s.items)),t}create(e,t){let s=this.items.get(e)||this.createDefault(e),i=[];for(let n in s.items){let o=s.items[n],c=t?n:"",l;if(typeof o.type=="number"){let d=Ch.AsnPropTypes[o.type],m=Cr[d];if(!m)throw new Error(`Cannot get ASN1 class by name '${d}'`);l=new m({name:c})}else(0,oO.isConvertible)(o.type)?l=new o.type().toSchema(c):o.optional?this.get(o.type).type===Ch.AsnTypeTypes.Choice?l=new Cr.Any({name:c}):(l=this.create(o.type,!1),l.name=c):l=new Cr.Any({name:c});let h=!!o.optional||o.defaultValue!==void 0;if(o.repeated){l.name="";let d=o.repeated==="set"?Cr.Set:Cr.Sequence;l=new d({name:"",value:[new Cr.Repeated({name:c,value:l})]})}if(o.context!==null&&o.context!==void 0)if(o.implicit)if(typeof o.type=="number"||(0,oO.isConvertible)(o.type)){let d=o.repeated?Cr.Constructed:Cr.Primitive;i.push(new d({name:c,optional:h,idBlock:{tagClass:3,tagNumber:o.context}}))}else{this.cache(o.type);let d=!!o.repeated,m=d?l:this.get(o.type,!0).schema;m="valueBlock"in m?m.valueBlock.value:m.value,i.push(new Cr.Constructed({name:d?"":c,optional:h,idBlock:{tagClass:3,tagNumber:o.context},value:m}))}else i.push(new Cr.Constructed({optional:h,idBlock:{tagClass:3,tagNumber:o.context},value:[l]}));else l.optional=h,i.push(l)}switch(s.type){case Ch.AsnTypeTypes.Sequence:return new Cr.Sequence({value:i,name:""});case Ch.AsnTypeTypes.Set:return new Cr.Set({value:i,name:""});case Ch.AsnTypeTypes.Choice:return new Cr.Choice({value:i,name:""});default:throw new Error("Unsupported ASN1 type in use")}}set(e,t){return this.items.set(e,t),this}findParentSchema(e){let t=Object.getPrototypeOf(e);return t?this.items.get(t)||this.findParentSchema(t):null}};o0.AsnSchemaStorage=bC});var u0=v(c0=>{"use strict";Object.defineProperty(c0,"__esModule",{value:!0});c0.schemaStorage=void 0;var O3=cO();c0.schemaStorage=new O3.AsnSchemaStorage});var uO=v(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.AsnProp=rr.AsnSequenceType=rr.AsnSetType=rr.AsnChoiceType=rr.AsnType=void 0;var T3=Sg(),CC=Yo(),ea=u0(),V3=r=>e=>{let t;ea.schemaStorage.has(e)?t=ea.schemaStorage.get(e):(t=ea.schemaStorage.createDefault(e),ea.schemaStorage.set(e,t)),Object.assign(t,r)};rr.AsnType=V3;var R3=()=>(0,rr.AsnType)({type:CC.AsnTypeTypes.Choice});rr.AsnChoiceType=R3;var D3=r=>(0,rr.AsnType)({type:CC.AsnTypeTypes.Set,...r});rr.AsnSetType=D3;var q3=r=>(0,rr.AsnType)({type:CC.AsnTypeTypes.Sequence,...r});rr.AsnSequenceType=q3;var j3=r=>(e,t)=>{let s;ea.schemaStorage.has(e.constructor)?s=ea.schemaStorage.get(e.constructor):(s=ea.schemaStorage.createDefault(e.constructor),ea.schemaStorage.set(e.constructor,s));let i=Object.assign({},r);if(typeof i.type=="number"&&!i.converter){let n=T3.defaultConverter(r.type);if(!n)throw new Error(`Cannot get default converter for property '${t}' of ${e.constructor.name}`);i.converter=n}i.raw=r.raw,s.items[t]=i};rr.AsnProp=j3});var lO=v(l0=>{"use strict";Object.defineProperty(l0,"__esModule",{value:!0});l0.AsnSchemaValidationError=void 0;var PC=class extends Error{constructor(){super(...arguments),this.schemas=[]}};l0.AsnSchemaValidationError=PC});var EC=v(IC=>{"use strict";Object.defineProperty(IC,"__esModule",{value:!0});var M3=(N(),E(k));M3.__exportStar(lO(),IC)});var BC=v(h0=>{"use strict";Object.defineProperty(h0,"__esModule",{value:!0});h0.AsnParser=void 0;var ur=ni(),ta=Yo(),kC=Sg(),wg=EC(),_g=a0(),Xo=u0(),NC=class{static parse(e,t){let s=ur.fromBER(e);if(s.result.error)throw new Error(s.result.error);return this.fromASN(s.result,t)}static fromASN(e,t){try{if((0,_g.isConvertible)(t))return new t().fromASN(e);let s=Xo.schemaStorage.get(t);Xo.schemaStorage.cache(t);let i=s.schema,n=this.handleChoiceTypes(e,s,t,i);if(n?.result)return n.result;n?.targetSchema&&(i=n.targetSchema);let o=this.handleSequenceTypes(e,s,t,i),c=new t;return(0,_g.isTypeOfArray)(t)?this.handleArrayTypes(e,s,t):(this.processSchemaItems(s,o,c),c)}catch(s){throw s instanceof wg.AsnSchemaValidationError&&s.schemas.push(t.name),s}}static handleChoiceTypes(e,t,s,i){if(e.constructor===ur.Constructed&&t.type===ta.AsnTypeTypes.Choice&&e.idBlock.tagClass===3)for(let n in t.items){let o=t.items[n];if(o.context===e.idBlock.tagNumber&&o.implicit&&typeof o.type=="function"&&Xo.schemaStorage.has(o.type)){let c=Xo.schemaStorage.get(o.type);if(c&&c.type===ta.AsnTypeTypes.Sequence){let l=new ur.Sequence;if("value"in e.valueBlock&&Array.isArray(e.valueBlock.value)&&"value"in l.valueBlock){l.valueBlock.value=e.valueBlock.value;let h=this.fromASN(l,o.type),d=new s;return d[n]=h,{result:d}}}}}else if(e.constructor===ur.Constructed&&t.type!==ta.AsnTypeTypes.Choice){let n=new ur.Constructed({idBlock:{tagClass:3,tagNumber:e.idBlock.tagNumber},value:t.schema.valueBlock.value});for(let o in t.items)delete e[o];return{targetSchema:n}}return null}static handleSequenceTypes(e,t,s,i){if(t.type===ta.AsnTypeTypes.Sequence){let n=ur.compareSchema({},e,i);if(!n.verified)throw new wg.AsnSchemaValidationError(`Data does not match to ${s.name} ASN1 schema.${n.result.error?` ${n.result.error}`:""}`);return n}else{let n=ur.compareSchema({},e,i);if(!n.verified)throw new wg.AsnSchemaValidationError(`Data does not match to ${s.name} ASN1 schema.${n.result.error?` ${n.result.error}`:""}`);return n}}static processRepeatedField(e,t,s){let i=e.slice(t);if(i.length===1&&i[0].constructor.name==="Sequence"){let n=i[0];n.valueBlock&&n.valueBlock.value&&Array.isArray(n.valueBlock.value)&&(i=n.valueBlock.value)}if(typeof s.type=="number"){let n=kC.defaultConverter(s.type);if(!n)throw new Error(`No converter for ASN.1 type ${s.type}`);return i.filter(o=>o&&o.valueBlock).map(o=>{try{return n.fromASN(o)}catch{return}}).filter(o=>o!==void 0)}else return i.filter(n=>n&&n.valueBlock).map(n=>{try{return this.fromASN(n,s.type)}catch{return}}).filter(n=>n!==void 0)}static processPrimitiveField(e,t){let s=kC.defaultConverter(t.type);if(!s)throw new Error(`No converter for ASN.1 type ${t.type}`);return s.fromASN(e)}static isOptionalChoiceField(e){return e.optional&&typeof e.type=="function"&&Xo.schemaStorage.has(e.type)&&Xo.schemaStorage.get(e.type).type===ta.AsnTypeTypes.Choice}static processOptionalChoiceField(e,t){try{return{processed:!0,value:this.fromASN(e,t.type)}}catch(s){if(s instanceof wg.AsnSchemaValidationError&&/Wrong values for Choice type/.test(s.message))return{processed:!1};throw s}}static handleArrayTypes(e,t,s){if(!("value"in e.valueBlock&&Array.isArray(e.valueBlock.value)))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");let i=t.itemType;if(typeof i=="number"){let n=kC.defaultConverter(i);if(!n)throw new Error(`Cannot get default converter for array item of ${s.name} ASN1 schema`);return s.from(e.valueBlock.value,o=>n.fromASN(o))}else return s.from(e.valueBlock.value,n=>this.fromASN(n,i))}static processSchemaItems(e,t,s){for(let i in e.items){let n=t.result[i];if(!n)continue;let o=e.items[i],c=o.type,l;typeof c=="number"||(0,_g.isConvertible)(c)?l=this.processPrimitiveSchemaItem(n,o,c):l=this.processComplexSchemaItem(n,o,c),l&&typeof l=="object"&&"value"in l&&"raw"in l?(s[i]=l.value,s[`${i}Raw`]=l.raw):s[i]=l}}static processPrimitiveSchemaItem(e,t,s){var i;let n=(i=t.converter)!==null&&i!==void 0?i:(0,_g.isConvertible)(s)?new s:null;if(!n)throw new Error("Converter is empty");return t.repeated?this.processRepeatedPrimitiveItem(e,t,n):this.processSinglePrimitiveItem(e,t,s,n)}static processRepeatedPrimitiveItem(e,t,s){if(t.implicit){let i=t.repeated==="sequence"?ur.Sequence:ur.Set,n=new i;n.valueBlock=e.valueBlock;let o=ur.fromBER(n.toBER(!1));if(o.offset===-1)throw new Error(`Cannot parse the child item. ${o.result.error}`);if(!("value"in o.result.valueBlock&&Array.isArray(o.result.valueBlock.value)))throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.");let c=o.result.valueBlock.value;return Array.from(c,l=>s.fromASN(l))}else return Array.from(e,i=>s.fromASN(i))}static processSinglePrimitiveItem(e,t,s,i){let n=e;if(t.implicit){let o;if((0,_g.isConvertible)(s))o=new s().toSchema("");else{let c=ta.AsnPropTypes[s],l=ur[c];if(!l)throw new Error(`Cannot get '${c}' class from asn1js module`);o=new l}o.valueBlock=n.valueBlock,n=ur.fromBER(o.toBER(!1)).result}return i.fromASN(n)}static processComplexSchemaItem(e,t,s){if(t.repeated){if(!Array.isArray(e))throw new Error("Cannot get list of items from the ASN.1 parsed value. ASN.1 value should be iterable.");return Array.from(e,i=>this.fromASN(i,s))}else{let i=this.handleImplicitTagging(e,t,s);if(this.isOptionalChoiceField(t))try{return this.fromASN(i,s)}catch(n){if(n instanceof wg.AsnSchemaValidationError&&/Wrong values for Choice type/.test(n.message))return;throw n}else{let n=this.fromASN(i,s);return t.raw?{value:n,raw:e.valueBeforeDecodeView}:n}}}static handleImplicitTagging(e,t,s){if(t.implicit&&typeof t.context=="number"){let i=Xo.schemaStorage.get(s);if(i.type===ta.AsnTypeTypes.Sequence){let n=new ur.Sequence;if("value"in e.valueBlock&&Array.isArray(e.valueBlock.value)&&"value"in n.valueBlock)return n.valueBlock.value=e.valueBlock.value,n}else if(i.type===ta.AsnTypeTypes.Set){let n=new ur.Set;if("value"in e.valueBlock&&Array.isArray(e.valueBlock.value)&&"value"in n.valueBlock)return n.valueBlock.value=e.valueBlock.value,n}}return e}};h0.AsnParser=NC});var TC=v(d0=>{"use strict";Object.defineProperty(d0,"__esModule",{value:!0});d0.AsnSerializer=void 0;var ns=ni(),L3=Sg(),f0=Yo(),xC=a0(),hO=u0(),OC=class r{static serialize(e){return e instanceof ns.BaseBlock?e.toBER(!1):this.toASN(e).toBER(!1)}static toASN(e){if(e&&typeof e=="object"&&(0,xC.isConvertible)(e))return e.toASN();if(!(e&&typeof e=="object"))throw new TypeError("Parameter 1 should be type of Object.");let t=e.constructor,s=hO.schemaStorage.get(t);hO.schemaStorage.cache(t);let i=[];if(s.itemType){if(!Array.isArray(e))throw new TypeError("Parameter 1 should be type of Array.");if(typeof s.itemType=="number"){let o=L3.defaultConverter(s.itemType);if(!o)throw new Error(`Cannot get default converter for array item of ${t.name} ASN1 schema`);i=e.map(c=>o.toASN(c))}else i=e.map(o=>this.toAsnItem({type:s.itemType},"[]",t,o))}else for(let o in s.items){let c=s.items[o],l=e[o];if(l===void 0||c.defaultValue===l||typeof c.defaultValue=="object"&&typeof l=="object"&&(0,xC.isArrayEqual)(this.serialize(c.defaultValue),this.serialize(l)))continue;let h=r.toAsnItem(c,o,t,l);if(typeof c.context=="number")if(c.implicit)if(!c.repeated&&(typeof c.type=="number"||(0,xC.isConvertible)(c.type))){let d={};d.valueHex=h instanceof ns.Null?h.valueBeforeDecodeView:h.valueBlock.toBER(),i.push(new ns.Primitive({optional:c.optional,idBlock:{tagClass:3,tagNumber:c.context},...d}))}else i.push(new ns.Constructed({optional:c.optional,idBlock:{tagClass:3,tagNumber:c.context},value:h.valueBlock.value}));else i.push(new ns.Constructed({optional:c.optional,idBlock:{tagClass:3,tagNumber:c.context},value:[h]}));else c.repeated?i=i.concat(h):i.push(h)}let n;switch(s.type){case f0.AsnTypeTypes.Sequence:n=new ns.Sequence({value:i});break;case f0.AsnTypeTypes.Set:n=new ns.Set({value:i});break;case f0.AsnTypeTypes.Choice:if(!i[0])throw new Error(`Schema '${t.name}' has wrong data. Choice cannot be empty.`);n=i[0];break}return n}static toAsnItem(e,t,s,i){let n;if(typeof e.type=="number"){let o=e.converter;if(!o)throw new Error(`Property '${t}' doesn't have converter for type ${f0.AsnPropTypes[e.type]} in schema '${s.name}'`);if(e.repeated){if(!Array.isArray(i))throw new TypeError("Parameter 'objProp' should be type of Array.");let c=Array.from(i,h=>o.toASN(h)),l=e.repeated==="sequence"?ns.Sequence:ns.Set;n=new l({value:c})}else n=o.toASN(i)}else if(e.repeated){if(!Array.isArray(i))throw new TypeError("Parameter 'objProp' should be type of Array.");let o=Array.from(i,l=>this.toASN(l)),c=e.repeated==="sequence"?ns.Sequence:ns.Set;n=new c({value:o})}else n=this.toASN(i);return n}};d0.AsnSerializer=OC});var fO=v(p0=>{"use strict";Object.defineProperty(p0,"__esModule",{value:!0});p0.AsnArray=void 0;var VC=class extends Array{constructor(e=[]){if(typeof e=="number")super(e);else{super();for(let t of e)this.push(t)}}};p0.AsnArray=VC});var pO=v(m0=>{"use strict";Object.defineProperty(m0,"__esModule",{value:!0});m0.AsnConvert=void 0;var U3=ni(),dO=_s(),H3=BC(),K3=TC(),RC=class r{static serialize(e){return K3.AsnSerializer.serialize(e)}static parse(e,t){return H3.AsnParser.parse(e,t)}static toString(e){let t=dO.BufferSourceConverter.isBufferSource(e)?dO.BufferSourceConverter.toArrayBuffer(e):r.serialize(e),s=U3.fromBER(t);if(s.offset===-1)throw new Error(`Cannot decode ASN.1 data. ${s.result.error}`);return s.result.toString()}};m0.AsnConvert=RC});var V=v(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.AsnSerializer=Ze.AsnParser=Ze.AsnPropTypes=Ze.AsnTypeTypes=Ze.AsnSetType=Ze.AsnSequenceType=Ze.AsnChoiceType=Ze.AsnType=Ze.AsnProp=void 0;var bg=(N(),E(k));bg.__exportStar(Sg(),Ze);bg.__exportStar(_C(),Ze);var Cg=uO();Object.defineProperty(Ze,"AsnProp",{enumerable:!0,get:function(){return Cg.AsnProp}});Object.defineProperty(Ze,"AsnType",{enumerable:!0,get:function(){return Cg.AsnType}});Object.defineProperty(Ze,"AsnChoiceType",{enumerable:!0,get:function(){return Cg.AsnChoiceType}});Object.defineProperty(Ze,"AsnSequenceType",{enumerable:!0,get:function(){return Cg.AsnSequenceType}});Object.defineProperty(Ze,"AsnSetType",{enumerable:!0,get:function(){return Cg.AsnSetType}});var mO=Yo();Object.defineProperty(Ze,"AsnTypeTypes",{enumerable:!0,get:function(){return mO.AsnTypeTypes}});Object.defineProperty(Ze,"AsnPropTypes",{enumerable:!0,get:function(){return mO.AsnPropTypes}});var $3=BC();Object.defineProperty(Ze,"AsnParser",{enumerable:!0,get:function(){return $3.AsnParser}});var F3=TC();Object.defineProperty(Ze,"AsnSerializer",{enumerable:!0,get:function(){return F3.AsnSerializer}});bg.__exportStar(EC(),Ze);bg.__exportStar(fO(),Ze);bg.__exportStar(pO(),Ze)});var gO=v(g0=>{"use strict";Object.defineProperty(g0,"__esModule",{value:!0});g0.IpConverter=void 0;var J3=_s(),DC=class{static isIPv4(e){return/^(\d{1,3}\.){3}\d{1,3}$/.test(e)}static parseIPv4(e){let t=e.split(".");if(t.length!==4)throw new Error("Invalid IPv4 address");return t.map(s=>{let i=parseInt(s,10);if(isNaN(i)||i<0||i>255)throw new Error("Invalid IPv4 address part");return i})}static parseIPv6(e){let s=this.expandIPv6(e).split(":");if(s.length!==8)throw new Error("Invalid IPv6 address");return s.reduce((i,n)=>{let o=parseInt(n,16);if(isNaN(o)||o<0||o>65535)throw new Error("Invalid IPv6 address part");return i.push(o>>8&255),i.push(o&255),i},[])}static expandIPv6(e){if(!e.includes("::"))return e;let t=e.split("::");if(t.length>2)throw new Error("Invalid IPv6 address");let s=t[0]?t[0].split(":"):[],i=t[1]?t[1].split(":"):[],n=8-(s.length+i.length);if(n<0)throw new Error("Invalid IPv6 address");return[...s,...Array(n).fill("0"),...i].join(":")}static formatIPv6(e){let t=[];for(let s=0;s<16;s+=2)t.push((e[s]<<8|e[s+1]).toString(16));return this.compressIPv6(t.join(":"))}static compressIPv6(e){let t=e.split(":"),s=-1,i=0,n=-1,o=0;for(let c=0;c<t.length;c++)t[c]==="0"?(n===-1&&(n=c),o++):(o>i&&(s=n,i=o),n=-1,o=0);if(o>i&&(s=n,i=o),i>1){let c=t.slice(0,s).join(":"),l=t.slice(s+i).join(":");return`${c}::${l}`}return e}static parseCIDR(e){let[t,s]=e.split("/"),i=parseInt(s,10);if(this.isIPv4(t)){if(i<0||i>32)throw new Error("Invalid IPv4 prefix length");return[this.parseIPv4(t),i]}else{if(i<0||i>128)throw new Error("Invalid IPv6 prefix length");return[this.parseIPv6(t),i]}}static decodeIP(e){if(e.length===64&&parseInt(e,16)===0)return"::/0";if(e.length!==16)return e;let t=parseInt(e.slice(8),16).toString(2).split("").reduce((i,n)=>i+ +n,0),s=e.slice(0,8).replace(/(.{2})/g,i=>`${parseInt(i,16)}.`);return s=s.slice(0,-1),`${s}/${t}`}static toString(e){let t=new Uint8Array(e);if(t.length===4)return Array.from(t).join(".");if(t.length===16)return this.formatIPv6(t);if(t.length===8||t.length===32){let s=t.length/2,i=t.slice(0,s),n=t.slice(s);if(t.every(l=>l===0))return t.length===8?"0.0.0.0/0":"::/0";let c=n.reduce((l,h)=>l+(h.toString(2).match(/1/g)||[]).length,0);return t.length===8?`${Array.from(i).join(".")}/${c}`:`${this.formatIPv6(i)}/${c}`}return this.decodeIP(J3.Convert.ToHex(e))}static fromString(e){if(e.includes("/")){let[s,i]=this.parseCIDR(e),n=new Uint8Array(s.length),o=i;for(let l=0;l<n.length;l++)o>=8?(n[l]=255,o-=8):o>0&&(n[l]=255<<8-o,o=0);let c=new Uint8Array(s.length*2);return c.set(s,0),c.set(n,s.length),c.buffer}let t=this.isIPv4(e)?this.parseIPv4(e):this.parseIPv6(e);return new Uint8Array(t).buffer}};g0.IpConverter=DC});var Ih=v(Bt=>{"use strict";var qC,jC,MC;Object.defineProperty(Bt,"__esModule",{value:!0});Bt.Name=Bt.RDNSequence=Bt.RelativeDistinguishedName=Bt.AttributeTypeAndValue=Bt.AttributeValue=Bt.DirectoryString=void 0;var lr=(N(),E(k)),Me=V(),G3=_s(),Oi=class{constructor(e={}){Object.assign(this,e)}toString(){return this.bmpString||this.printableString||this.teletexString||this.universalString||this.utf8String||""}};Bt.DirectoryString=Oi;lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.TeletexString})],Oi.prototype,"teletexString",void 0);lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.PrintableString})],Oi.prototype,"printableString",void 0);lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.UniversalString})],Oi.prototype,"universalString",void 0);lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.Utf8String})],Oi.prototype,"utf8String",void 0);lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.BmpString})],Oi.prototype,"bmpString",void 0);Bt.DirectoryString=Oi=lr.__decorate([(0,Me.AsnType)({type:Me.AsnTypeTypes.Choice})],Oi);var Qo=class extends Oi{constructor(e={}){super(e),Object.assign(this,e)}toString(){return this.ia5String||(this.anyValue?G3.Convert.ToHex(this.anyValue):super.toString())}};Bt.AttributeValue=Qo;lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.IA5String})],Qo.prototype,"ia5String",void 0);lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.Any})],Qo.prototype,"anyValue",void 0);Bt.AttributeValue=Qo=lr.__decorate([(0,Me.AsnType)({type:Me.AsnTypeTypes.Choice})],Qo);var Ph=class{constructor(e={}){this.type="",this.value=new Qo,Object.assign(this,e)}};Bt.AttributeTypeAndValue=Ph;lr.__decorate([(0,Me.AsnProp)({type:Me.AsnPropTypes.ObjectIdentifier})],Ph.prototype,"type",void 0);lr.__decorate([(0,Me.AsnProp)({type:Qo})],Ph.prototype,"value",void 0);var y0=qC=class extends Me.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,qC.prototype)}};Bt.RelativeDistinguishedName=y0;Bt.RelativeDistinguishedName=y0=qC=lr.__decorate([(0,Me.AsnType)({type:Me.AsnTypeTypes.Set,itemType:Ph})],y0);var v0=jC=class extends Me.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,jC.prototype)}};Bt.RDNSequence=v0;Bt.RDNSequence=v0=jC=lr.__decorate([(0,Me.AsnType)({type:Me.AsnTypeTypes.Sequence,itemType:y0})],v0);var LC=MC=class extends v0{constructor(e){super(e),Object.setPrototypeOf(this,MC.prototype)}};Bt.Name=LC;Bt.Name=LC=MC=lr.__decorate([(0,Me.AsnType)({type:Me.AsnTypeTypes.Sequence})],LC)});var Zo=v(jr=>{"use strict";Object.defineProperty(jr,"__esModule",{value:!0});jr.GeneralName=jr.EDIPartyName=jr.OtherName=jr.AsnIpConverter=void 0;var hr=(N(),E(k)),et=V(),yO=gO(),S0=Ih();jr.AsnIpConverter={fromASN:r=>yO.IpConverter.toString(et.AsnOctetStringConverter.fromASN(r)),toASN:r=>et.AsnOctetStringConverter.toASN(yO.IpConverter.fromString(r))};var Eh=class{constructor(e={}){this.typeId="",this.value=new ArrayBuffer(0),Object.assign(this,e)}};jr.OtherName=Eh;hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.ObjectIdentifier})],Eh.prototype,"typeId",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.Any,context:0})],Eh.prototype,"value",void 0);var kh=class{constructor(e={}){this.partyName=new S0.DirectoryString,Object.assign(this,e)}};jr.EDIPartyName=kh;hr.__decorate([(0,et.AsnProp)({type:S0.DirectoryString,optional:!0,context:0,implicit:!0})],kh.prototype,"nameAssigner",void 0);hr.__decorate([(0,et.AsnProp)({type:S0.DirectoryString,context:1,implicit:!0})],kh.prototype,"partyName",void 0);var Mr=class{constructor(e={}){Object.assign(this,e)}};jr.GeneralName=Mr;hr.__decorate([(0,et.AsnProp)({type:Eh,context:0,implicit:!0})],Mr.prototype,"otherName",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.IA5String,context:1,implicit:!0})],Mr.prototype,"rfc822Name",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.IA5String,context:2,implicit:!0})],Mr.prototype,"dNSName",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.Any,context:3,implicit:!0})],Mr.prototype,"x400Address",void 0);hr.__decorate([(0,et.AsnProp)({type:S0.Name,context:4,implicit:!1})],Mr.prototype,"directoryName",void 0);hr.__decorate([(0,et.AsnProp)({type:kh,context:5})],Mr.prototype,"ediPartyName",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.IA5String,context:6,implicit:!0})],Mr.prototype,"uniformResourceIdentifier",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.OctetString,context:7,implicit:!0,converter:jr.AsnIpConverter})],Mr.prototype,"iPAddress",void 0);hr.__decorate([(0,et.AsnProp)({type:et.AsnPropTypes.ObjectIdentifier,context:8,implicit:!0})],Mr.prototype,"registeredID",void 0);jr.GeneralName=Mr=hr.__decorate([(0,et.AsnType)({type:et.AsnTypeTypes.Choice})],Mr)});var Ye=v(_e=>{"use strict";Object.defineProperty(_e,"__esModule",{value:!0});_e.id_ce=_e.id_ad_caRepository=_e.id_ad_timeStamping=_e.id_ad_caIssuers=_e.id_ad_ocsp=_e.id_qt_unotice=_e.id_qt_csp=_e.id_ad=_e.id_kp=_e.id_qt=_e.id_pe=_e.id_pkix=void 0;_e.id_pkix="1.3.6.1.5.5.7";_e.id_pe=`${_e.id_pkix}.1`;_e.id_qt=`${_e.id_pkix}.2`;_e.id_kp=`${_e.id_pkix}.3`;_e.id_ad=`${_e.id_pkix}.48`;_e.id_qt_csp=`${_e.id_qt}.1`;_e.id_qt_unotice=`${_e.id_qt}.2`;_e.id_ad_ocsp=`${_e.id_ad}.1`;_e.id_ad_caIssuers=`${_e.id_ad}.2`;_e.id_ad_timeStamping=`${_e.id_ad}.3`;_e.id_ad_caRepository=`${_e.id_ad}.5`;_e.id_ce="2.5.29"});var $C=v(Ti=>{"use strict";var UC;Object.defineProperty(Ti,"__esModule",{value:!0});Ti.AuthorityInfoAccessSyntax=Ti.AccessDescription=Ti.id_pe_authorityInfoAccess=void 0;var KC=(N(),E(k)),Nh=V(),vO=Zo(),W3=Ye();Ti.id_pe_authorityInfoAccess=`${W3.id_pe}.1`;var Bh=class{constructor(e={}){this.accessMethod="",this.accessLocation=new vO.GeneralName,Object.assign(this,e)}};Ti.AccessDescription=Bh;KC.__decorate([(0,Nh.AsnProp)({type:Nh.AsnPropTypes.ObjectIdentifier})],Bh.prototype,"accessMethod",void 0);KC.__decorate([(0,Nh.AsnProp)({type:vO.GeneralName})],Bh.prototype,"accessLocation",void 0);var HC=UC=class extends Nh.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,UC.prototype)}};Ti.AuthorityInfoAccessSyntax=HC;Ti.AuthorityInfoAccessSyntax=HC=UC=KC.__decorate([(0,Nh.AsnType)({type:Nh.AsnTypeTypes.Sequence,itemType:Bh})],HC)});var JC=v(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.AuthorityKeyIdentifier=ra.KeyIdentifier=ra.id_ce_authorityKeyIdentifier=void 0;var FC=(N(),E(k)),xh=V(),z3=Zo(),Y3=Ye();ra.id_ce_authorityKeyIdentifier=`${Y3.id_ce}.35`;var A0=class extends xh.OctetString{};ra.KeyIdentifier=A0;var Oh=class{constructor(e={}){e&&Object.assign(this,e)}};ra.AuthorityKeyIdentifier=Oh;FC.__decorate([(0,xh.AsnProp)({type:A0,context:0,optional:!0,implicit:!0})],Oh.prototype,"keyIdentifier",void 0);FC.__decorate([(0,xh.AsnProp)({type:z3.GeneralName,context:1,optional:!0,implicit:!0,repeated:"sequence"})],Oh.prototype,"authorityCertIssuer",void 0);FC.__decorate([(0,xh.AsnProp)({type:xh.AsnPropTypes.Integer,context:2,optional:!0,implicit:!0,converter:xh.AsnIntegerArrayBufferConverter})],Oh.prototype,"authorityCertSerialNumber",void 0)});var AO=v(Th=>{"use strict";Object.defineProperty(Th,"__esModule",{value:!0});Th.BasicConstraints=Th.id_ce_basicConstraints=void 0;var SO=(N(),E(k)),w0=V(),X3=Ye();Th.id_ce_basicConstraints=`${X3.id_ce}.19`;var Pg=class{constructor(e={}){this.cA=!1,Object.assign(this,e)}};Th.BasicConstraints=Pg;SO.__decorate([(0,w0.AsnProp)({type:w0.AsnPropTypes.Boolean,defaultValue:!1})],Pg.prototype,"cA",void 0);SO.__decorate([(0,w0.AsnProp)({type:w0.AsnPropTypes.Integer,optional:!0})],Pg.prototype,"pathLenConstraint",void 0)});var Eg=v(Ig=>{"use strict";var GC;Object.defineProperty(Ig,"__esModule",{value:!0});Ig.GeneralNames=void 0;var Q3=(N(),E(k)),wO=V(),Z3=Zo(),e4=V(),WC=GC=class extends e4.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,GC.prototype)}};Ig.GeneralNames=WC;Ig.GeneralNames=WC=GC=Q3.__decorate([(0,wO.AsnType)({type:wO.AsnTypeTypes.Sequence,itemType:Z3.GeneralName})],WC)});var bO=v(ec=>{"use strict";var zC;Object.defineProperty(ec,"__esModule",{value:!0});ec.CertificateIssuer=ec.id_ce_certificateIssuer=void 0;var t4=(N(),E(k)),_O=V(),r4=Eg(),s4=Ye();ec.id_ce_certificateIssuer=`${s4.id_ce}.29`;var YC=zC=class extends r4.GeneralNames{constructor(e){super(e),Object.setPrototypeOf(this,zC.prototype)}};ec.CertificateIssuer=YC;ec.CertificateIssuer=YC=zC=t4.__decorate([(0,_O.AsnType)({type:_O.AsnTypeTypes.Sequence})],YC)});var CO=v(nt=>{"use strict";var XC;Object.defineProperty(nt,"__esModule",{value:!0});nt.CertificatePolicies=nt.PolicyInformation=nt.PolicyQualifierInfo=nt.Qualifier=nt.UserNotice=nt.NoticeReference=nt.DisplayText=nt.id_ce_certificatePolicies_anyPolicy=nt.id_ce_certificatePolicies=void 0;var Ft=(N(),E(k)),Ve=V(),i4=Ye();nt.id_ce_certificatePolicies=`${i4.id_ce}.32`;nt.id_ce_certificatePolicies_anyPolicy=`${nt.id_ce_certificatePolicies}.0`;var js=class{constructor(e={}){Object.assign(this,e)}toString(){return this.ia5String||this.visibleString||this.bmpString||this.utf8String||""}};nt.DisplayText=js;Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.IA5String})],js.prototype,"ia5String",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.VisibleString})],js.prototype,"visibleString",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.BmpString})],js.prototype,"bmpString",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.Utf8String})],js.prototype,"utf8String",void 0);nt.DisplayText=js=Ft.__decorate([(0,Ve.AsnType)({type:Ve.AsnTypeTypes.Choice})],js);var Vh=class{constructor(e={}){this.organization=new js,this.noticeNumbers=[],Object.assign(this,e)}};nt.NoticeReference=Vh;Ft.__decorate([(0,Ve.AsnProp)({type:js})],Vh.prototype,"organization",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.Integer,repeated:"sequence"})],Vh.prototype,"noticeNumbers",void 0);var Rh=class{constructor(e={}){Object.assign(this,e)}};nt.UserNotice=Rh;Ft.__decorate([(0,Ve.AsnProp)({type:Vh,optional:!0})],Rh.prototype,"noticeRef",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:js,optional:!0})],Rh.prototype,"explicitText",void 0);var kg=class{constructor(e={}){Object.assign(this,e)}};nt.Qualifier=kg;Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.IA5String})],kg.prototype,"cPSuri",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Rh})],kg.prototype,"userNotice",void 0);nt.Qualifier=kg=Ft.__decorate([(0,Ve.AsnType)({type:Ve.AsnTypeTypes.Choice})],kg);var Dh=class{constructor(e={}){this.policyQualifierId="",this.qualifier=new ArrayBuffer(0),Object.assign(this,e)}};nt.PolicyQualifierInfo=Dh;Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.ObjectIdentifier})],Dh.prototype,"policyQualifierId",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.Any})],Dh.prototype,"qualifier",void 0);var qh=class{constructor(e={}){this.policyIdentifier="",Object.assign(this,e)}};nt.PolicyInformation=qh;Ft.__decorate([(0,Ve.AsnProp)({type:Ve.AsnPropTypes.ObjectIdentifier})],qh.prototype,"policyIdentifier",void 0);Ft.__decorate([(0,Ve.AsnProp)({type:Dh,repeated:"sequence",optional:!0})],qh.prototype,"policyQualifiers",void 0);var QC=XC=class extends Ve.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,XC.prototype)}};nt.CertificatePolicies=QC;nt.CertificatePolicies=QC=XC=Ft.__decorate([(0,Ve.AsnType)({type:Ve.AsnTypeTypes.Sequence,itemType:qh})],QC)});var ZC=v(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.CRLNumber=tc.id_ce_cRLNumber=void 0;var PO=(N(),E(k)),_0=V(),n4=Ye();tc.id_ce_cRLNumber=`${n4.id_ce}.20`;var b0=class{constructor(e=0){this.value=e}};tc.CRLNumber=b0;PO.__decorate([(0,_0.AsnProp)({type:_0.AsnPropTypes.Integer})],b0.prototype,"value",void 0);tc.CRLNumber=b0=PO.__decorate([(0,_0.AsnType)({type:_0.AsnTypeTypes.Choice})],b0)});var EO=v(rc=>{"use strict";Object.defineProperty(rc,"__esModule",{value:!0});rc.BaseCRLNumber=rc.id_ce_deltaCRLIndicator=void 0;var a4=(N(),E(k)),IO=V(),o4=Ye(),c4=ZC();rc.id_ce_deltaCRLIndicator=`${o4.id_ce}.27`;var eP=class extends c4.CRLNumber{};rc.BaseCRLNumber=eP;rc.BaseCRLNumber=eP=a4.__decorate([(0,IO.AsnType)({type:IO.AsnTypeTypes.Choice})],eP)});var P0=v(Wt=>{"use strict";var tP;Object.defineProperty(Wt,"__esModule",{value:!0});Wt.CRLDistributionPoints=Wt.DistributionPoint=Wt.DistributionPointName=Wt.Reason=Wt.ReasonFlags=Wt.id_ce_cRLDistributionPoints=void 0;var ic=(N(),E(k)),os=V(),u4=Ih(),kO=Zo(),l4=Ye();Wt.id_ce_cRLDistributionPoints=`${l4.id_ce}.31`;var as;(function(r){r[r.unused=1]="unused",r[r.keyCompromise=2]="keyCompromise",r[r.cACompromise=4]="cACompromise",r[r.affiliationChanged=8]="affiliationChanged",r[r.superseded=16]="superseded",r[r.cessationOfOperation=32]="cessationOfOperation",r[r.certificateHold=64]="certificateHold",r[r.privilegeWithdrawn=128]="privilegeWithdrawn",r[r.aACompromise=256]="aACompromise"})(as||(Wt.ReasonFlags=as={}));var C0=class extends os.BitString{toJSON(){let e=[],t=this.toNumber();return t&as.aACompromise&&e.push("aACompromise"),t&as.affiliationChanged&&e.push("affiliationChanged"),t&as.cACompromise&&e.push("cACompromise"),t&as.certificateHold&&e.push("certificateHold"),t&as.cessationOfOperation&&e.push("cessationOfOperation"),t&as.keyCompromise&&e.push("keyCompromise"),t&as.privilegeWithdrawn&&e.push("privilegeWithdrawn"),t&as.superseded&&e.push("superseded"),t&as.unused&&e.push("unused"),e}toString(){return`[${this.toJSON().join(", ")}]`}};Wt.Reason=C0;var jh=class{constructor(e={}){Object.assign(this,e)}};Wt.DistributionPointName=jh;ic.__decorate([(0,os.AsnProp)({type:kO.GeneralName,context:0,repeated:"sequence",implicit:!0})],jh.prototype,"fullName",void 0);ic.__decorate([(0,os.AsnProp)({type:u4.RelativeDistinguishedName,context:1,implicit:!0})],jh.prototype,"nameRelativeToCRLIssuer",void 0);Wt.DistributionPointName=jh=ic.__decorate([(0,os.AsnType)({type:os.AsnTypeTypes.Choice})],jh);var sc=class{constructor(e={}){Object.assign(this,e)}};Wt.DistributionPoint=sc;ic.__decorate([(0,os.AsnProp)({type:jh,context:0,optional:!0})],sc.prototype,"distributionPoint",void 0);ic.__decorate([(0,os.AsnProp)({type:C0,context:1,optional:!0,implicit:!0})],sc.prototype,"reasons",void 0);ic.__decorate([(0,os.AsnProp)({type:kO.GeneralName,context:2,optional:!0,repeated:"sequence",implicit:!0})],sc.prototype,"cRLIssuer",void 0);var rP=tP=class extends os.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,tP.prototype)}};Wt.CRLDistributionPoints=rP;Wt.CRLDistributionPoints=rP=tP=ic.__decorate([(0,os.AsnType)({type:os.AsnTypeTypes.Sequence,itemType:sc})],rP)});var xO=v(nc=>{"use strict";var sP;Object.defineProperty(nc,"__esModule",{value:!0});nc.FreshestCRL=nc.id_ce_freshestCRL=void 0;var h4=(N(),E(k)),NO=V(),f4=Ye(),BO=P0();nc.id_ce_freshestCRL=`${f4.id_ce}.46`;var iP=sP=class extends BO.CRLDistributionPoints{constructor(e){super(e),Object.setPrototypeOf(this,sP.prototype)}};nc.FreshestCRL=iP;nc.FreshestCRL=iP=sP=h4.__decorate([(0,NO.AsnType)({type:NO.AsnTypeTypes.Sequence,itemType:BO.DistributionPoint})],iP)});var TO=v(Mh=>{"use strict";Object.defineProperty(Mh,"__esModule",{value:!0});Mh.IssuingDistributionPoint=Mh.id_ce_issuingDistributionPoint=void 0;var Lh=(N(),E(k)),Uh=V(),OO=P0(),d4=Ye(),I0=V();Mh.id_ce_issuingDistributionPoint=`${d4.id_ce}.28`;var fr=class r{constructor(e={}){this.onlyContainsUserCerts=r.ONLY,this.onlyContainsCACerts=r.ONLY,this.indirectCRL=r.ONLY,this.onlyContainsAttributeCerts=r.ONLY,Object.assign(this,e)}};Mh.IssuingDistributionPoint=fr;fr.ONLY=!1;Lh.__decorate([(0,Uh.AsnProp)({type:OO.DistributionPointName,context:0,optional:!0})],fr.prototype,"distributionPoint",void 0);Lh.__decorate([(0,Uh.AsnProp)({type:I0.AsnPropTypes.Boolean,context:1,defaultValue:fr.ONLY,implicit:!0})],fr.prototype,"onlyContainsUserCerts",void 0);Lh.__decorate([(0,Uh.AsnProp)({type:I0.AsnPropTypes.Boolean,context:2,defaultValue:fr.ONLY,implicit:!0})],fr.prototype,"onlyContainsCACerts",void 0);Lh.__decorate([(0,Uh.AsnProp)({type:OO.Reason,context:3,optional:!0,implicit:!0})],fr.prototype,"onlySomeReasons",void 0);Lh.__decorate([(0,Uh.AsnProp)({type:I0.AsnPropTypes.Boolean,context:4,defaultValue:fr.ONLY,implicit:!0})],fr.prototype,"indirectCRL",void 0);Lh.__decorate([(0,Uh.AsnProp)({type:I0.AsnPropTypes.Boolean,context:5,defaultValue:fr.ONLY,implicit:!0})],fr.prototype,"onlyContainsAttributeCerts",void 0)});var RO=v(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.CRLReason=Vi.CRLReasons=Vi.id_ce_cRLReasons=void 0;var VO=(N(),E(k)),E0=V(),p4=Ye();Vi.id_ce_cRLReasons=`${p4.id_ce}.21`;var Ng;(function(r){r[r.unspecified=0]="unspecified",r[r.keyCompromise=1]="keyCompromise",r[r.cACompromise=2]="cACompromise",r[r.affiliationChanged=3]="affiliationChanged",r[r.superseded=4]="superseded",r[r.cessationOfOperation=5]="cessationOfOperation",r[r.certificateHold=6]="certificateHold",r[r.removeFromCRL=8]="removeFromCRL",r[r.privilegeWithdrawn=9]="privilegeWithdrawn",r[r.aACompromise=10]="aACompromise"})(Ng||(Vi.CRLReasons=Ng={}));var k0=class{constructor(e=Ng.unspecified){this.reason=Ng.unspecified,this.reason=e}toJSON(){return Ng[this.reason]}toString(){return this.toJSON()}};Vi.CRLReason=k0;VO.__decorate([(0,E0.AsnProp)({type:E0.AsnPropTypes.Enumerated})],k0.prototype,"reason",void 0);Vi.CRLReason=k0=VO.__decorate([(0,E0.AsnType)({type:E0.AsnTypeTypes.Choice})],k0)});var DO=v(ht=>{"use strict";var nP;Object.defineProperty(ht,"__esModule",{value:!0});ht.id_kp_OCSPSigning=ht.id_kp_timeStamping=ht.id_kp_emailProtection=ht.id_kp_codeSigning=ht.id_kp_clientAuth=ht.id_kp_serverAuth=ht.anyExtendedKeyUsage=ht.ExtendedKeyUsage=ht.id_ce_extKeyUsage=void 0;var m4=(N(),E(k)),N0=V(),ac=Ye();ht.id_ce_extKeyUsage=`${ac.id_ce}.37`;var aP=nP=class extends N0.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,nP.prototype)}};ht.ExtendedKeyUsage=aP;ht.ExtendedKeyUsage=aP=nP=m4.__decorate([(0,N0.AsnType)({type:N0.AsnTypeTypes.Sequence,itemType:N0.AsnPropTypes.ObjectIdentifier})],aP);ht.anyExtendedKeyUsage=`${ht.id_ce_extKeyUsage}.0`;ht.id_kp_serverAuth=`${ac.id_kp}.1`;ht.id_kp_clientAuth=`${ac.id_kp}.2`;ht.id_kp_codeSigning=`${ac.id_kp}.3`;ht.id_kp_emailProtection=`${ac.id_kp}.4`;ht.id_kp_timeStamping=`${ac.id_kp}.8`;ht.id_kp_OCSPSigning=`${ac.id_kp}.9`});var jO=v(oc=>{"use strict";Object.defineProperty(oc,"__esModule",{value:!0});oc.InhibitAnyPolicy=oc.id_ce_inhibitAnyPolicy=void 0;var qO=(N(),E(k)),Bg=V(),g4=Ye();oc.id_ce_inhibitAnyPolicy=`${g4.id_ce}.54`;var B0=class{constructor(e=new ArrayBuffer(0)){this.value=e}};oc.InhibitAnyPolicy=B0;qO.__decorate([(0,Bg.AsnProp)({type:Bg.AsnPropTypes.Integer,converter:Bg.AsnIntegerArrayBufferConverter})],B0.prototype,"value",void 0);oc.InhibitAnyPolicy=B0=qO.__decorate([(0,Bg.AsnType)({type:Bg.AsnTypeTypes.Choice})],B0)});var LO=v(cc=>{"use strict";Object.defineProperty(cc,"__esModule",{value:!0});cc.InvalidityDate=cc.id_ce_invalidityDate=void 0;var MO=(N(),E(k)),x0=V(),y4=Ye();cc.id_ce_invalidityDate=`${y4.id_ce}.24`;var O0=class{constructor(e){this.value=new Date,e&&(this.value=e)}};cc.InvalidityDate=O0;MO.__decorate([(0,x0.AsnProp)({type:x0.AsnPropTypes.GeneralizedTime})],O0.prototype,"value",void 0);cc.InvalidityDate=O0=MO.__decorate([(0,x0.AsnType)({type:x0.AsnTypeTypes.Choice})],O0)});var HO=v(uc=>{"use strict";var oP;Object.defineProperty(uc,"__esModule",{value:!0});uc.IssueAlternativeName=uc.id_ce_issuerAltName=void 0;var v4=(N(),E(k)),UO=V(),S4=Eg(),A4=Ye();uc.id_ce_issuerAltName=`${A4.id_ce}.18`;var cP=oP=class extends S4.GeneralNames{constructor(e){super(e),Object.setPrototypeOf(this,oP.prototype)}};uc.IssueAlternativeName=cP;uc.IssueAlternativeName=cP=oP=v4.__decorate([(0,UO.AsnType)({type:UO.AsnTypeTypes.Sequence})],cP)});var KO=v(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.KeyUsage=sa.KeyUsageFlags=sa.id_ce_keyUsage=void 0;var w4=V(),_4=Ye();sa.id_ce_keyUsage=`${_4.id_ce}.15`;var cs;(function(r){r[r.digitalSignature=1]="digitalSignature",r[r.nonRepudiation=2]="nonRepudiation",r[r.keyEncipherment=4]="keyEncipherment",r[r.dataEncipherment=8]="dataEncipherment",r[r.keyAgreement=16]="keyAgreement",r[r.keyCertSign=32]="keyCertSign",r[r.cRLSign=64]="cRLSign",r[r.encipherOnly=128]="encipherOnly",r[r.decipherOnly=256]="decipherOnly"})(cs||(sa.KeyUsageFlags=cs={}));var uP=class extends w4.BitString{toJSON(){let e=this.toNumber(),t=[];return e&cs.cRLSign&&t.push("crlSign"),e&cs.dataEncipherment&&t.push("dataEncipherment"),e&cs.decipherOnly&&t.push("decipherOnly"),e&cs.digitalSignature&&t.push("digitalSignature"),e&cs.encipherOnly&&t.push("encipherOnly"),e&cs.keyAgreement&&t.push("keyAgreement"),e&cs.keyCertSign&&t.push("keyCertSign"),e&cs.keyEncipherment&&t.push("keyEncipherment"),e&cs.nonRepudiation&&t.push("nonRepudiation"),t}toString(){return`[${this.toJSON().join(", ")}]`}};sa.KeyUsage=uP});var FO=v(us=>{"use strict";var lP;Object.defineProperty(us,"__esModule",{value:!0});us.NameConstraints=us.GeneralSubtrees=us.GeneralSubtree=us.id_ce_nameConstraints=void 0;var Hh=(N(),E(k)),Ms=V(),$O=Zo(),b4=Ye();us.id_ce_nameConstraints=`${b4.id_ce}.30`;var lc=class{constructor(e={}){this.base=new $O.GeneralName,this.minimum=0,Object.assign(this,e)}};us.GeneralSubtree=lc;Hh.__decorate([(0,Ms.AsnProp)({type:$O.GeneralName})],lc.prototype,"base",void 0);Hh.__decorate([(0,Ms.AsnProp)({type:Ms.AsnPropTypes.Integer,context:0,defaultValue:0,implicit:!0})],lc.prototype,"minimum",void 0);Hh.__decorate([(0,Ms.AsnProp)({type:Ms.AsnPropTypes.Integer,context:1,optional:!0,implicit:!0})],lc.prototype,"maximum",void 0);var xg=lP=class extends Ms.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,lP.prototype)}};us.GeneralSubtrees=xg;us.GeneralSubtrees=xg=lP=Hh.__decorate([(0,Ms.AsnType)({type:Ms.AsnTypeTypes.Sequence,itemType:lc})],xg);var Og=class{constructor(e={}){Object.assign(this,e)}};us.NameConstraints=Og;Hh.__decorate([(0,Ms.AsnProp)({type:xg,context:0,optional:!0,implicit:!0})],Og.prototype,"permittedSubtrees",void 0);Hh.__decorate([(0,Ms.AsnProp)({type:xg,context:1,optional:!0,implicit:!0})],Og.prototype,"excludedSubtrees",void 0)});var GO=v($h=>{"use strict";Object.defineProperty($h,"__esModule",{value:!0});$h.PolicyConstraints=$h.id_ce_policyConstraints=void 0;var JO=(N(),E(k)),Kh=V(),C4=Ye();$h.id_ce_policyConstraints=`${C4.id_ce}.36`;var Tg=class{constructor(e={}){Object.assign(this,e)}};$h.PolicyConstraints=Tg;JO.__decorate([(0,Kh.AsnProp)({type:Kh.AsnPropTypes.Integer,context:0,implicit:!0,optional:!0,converter:Kh.AsnIntegerArrayBufferConverter})],Tg.prototype,"requireExplicitPolicy",void 0);JO.__decorate([(0,Kh.AsnProp)({type:Kh.AsnPropTypes.Integer,context:1,implicit:!0,optional:!0,converter:Kh.AsnIntegerArrayBufferConverter})],Tg.prototype,"inhibitPolicyMapping",void 0)});var WO=v(Ri=>{"use strict";var hP;Object.defineProperty(Ri,"__esModule",{value:!0});Ri.PolicyMappings=Ri.PolicyMapping=Ri.id_ce_policyMappings=void 0;var dP=(N(),E(k)),hc=V(),P4=Ye();Ri.id_ce_policyMappings=`${P4.id_ce}.33`;var Fh=class{constructor(e={}){this.issuerDomainPolicy="",this.subjectDomainPolicy="",Object.assign(this,e)}};Ri.PolicyMapping=Fh;dP.__decorate([(0,hc.AsnProp)({type:hc.AsnPropTypes.ObjectIdentifier})],Fh.prototype,"issuerDomainPolicy",void 0);dP.__decorate([(0,hc.AsnProp)({type:hc.AsnPropTypes.ObjectIdentifier})],Fh.prototype,"subjectDomainPolicy",void 0);var fP=hP=class extends hc.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,hP.prototype)}};Ri.PolicyMappings=fP;Ri.PolicyMappings=fP=hP=dP.__decorate([(0,hc.AsnType)({type:hc.AsnTypeTypes.Sequence,itemType:Fh})],fP)});var YO=v(fc=>{"use strict";var pP;Object.defineProperty(fc,"__esModule",{value:!0});fc.SubjectAlternativeName=fc.id_ce_subjectAltName=void 0;var I4=(N(),E(k)),zO=V(),E4=Eg(),k4=Ye();fc.id_ce_subjectAltName=`${k4.id_ce}.17`;var mP=pP=class extends E4.GeneralNames{constructor(e){super(e),Object.setPrototypeOf(this,pP.prototype)}};fc.SubjectAlternativeName=mP;fc.SubjectAlternativeName=mP=pP=I4.__decorate([(0,zO.AsnType)({type:zO.AsnTypeTypes.Sequence})],mP)});var gP=v(V0=>{"use strict";Object.defineProperty(V0,"__esModule",{value:!0});V0.Attribute=void 0;var XO=(N(),E(k)),T0=V(),Vg=class{constructor(e={}){this.type="",this.values=[],Object.assign(this,e)}};V0.Attribute=Vg;XO.__decorate([(0,T0.AsnProp)({type:T0.AsnPropTypes.ObjectIdentifier})],Vg.prototype,"type",void 0);XO.__decorate([(0,T0.AsnProp)({type:T0.AsnPropTypes.Any,repeated:"set"})],Vg.prototype,"values",void 0)});var QO=v(dc=>{"use strict";var yP;Object.defineProperty(dc,"__esModule",{value:!0});dc.SubjectDirectoryAttributes=dc.id_ce_subjectDirectoryAttributes=void 0;var N4=(N(),E(k)),vP=V(),B4=gP(),x4=Ye();dc.id_ce_subjectDirectoryAttributes=`${x4.id_ce}.9`;var SP=yP=class extends vP.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,yP.prototype)}};dc.SubjectDirectoryAttributes=SP;dc.SubjectDirectoryAttributes=SP=yP=N4.__decorate([(0,vP.AsnType)({type:vP.AsnTypeTypes.Sequence,itemType:B4.Attribute})],SP)});var ZO=v(Jh=>{"use strict";Object.defineProperty(Jh,"__esModule",{value:!0});Jh.SubjectKeyIdentifier=Jh.id_ce_subjectKeyIdentifier=void 0;var O4=Ye(),T4=JC();Jh.id_ce_subjectKeyIdentifier=`${O4.id_ce}.14`;var AP=class extends T4.KeyIdentifier{};Jh.SubjectKeyIdentifier=AP});var tT=v(Gh=>{"use strict";Object.defineProperty(Gh,"__esModule",{value:!0});Gh.PrivateKeyUsagePeriod=Gh.id_ce_privateKeyUsagePeriod=void 0;var eT=(N(),E(k)),R0=V(),V4=Ye();Gh.id_ce_privateKeyUsagePeriod=`${V4.id_ce}.16`;var Rg=class{constructor(e={}){Object.assign(this,e)}};Gh.PrivateKeyUsagePeriod=Rg;eT.__decorate([(0,R0.AsnProp)({type:R0.AsnPropTypes.GeneralizedTime,context:0,implicit:!0,optional:!0})],Rg.prototype,"notBefore",void 0);eT.__decorate([(0,R0.AsnProp)({type:R0.AsnPropTypes.GeneralizedTime,context:1,implicit:!0,optional:!0})],Rg.prototype,"notAfter",void 0)});var sT=v(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.EntrustVersionInfo=Ls.EntrustInfo=Ls.EntrustInfoFlags=Ls.id_entrust_entrustVersInfo=void 0;var rT=(N(),E(k)),D0=V();Ls.id_entrust_entrustVersInfo="1.2.840.113533.7.65.0";var Dg;(function(r){r[r.keyUpdateAllowed=1]="keyUpdateAllowed",r[r.newExtensions=2]="newExtensions",r[r.pKIXCertificate=4]="pKIXCertificate"})(Dg||(Ls.EntrustInfoFlags=Dg={}));var qg=class extends D0.BitString{toJSON(){let e=[],t=this.toNumber();return t&Dg.pKIXCertificate&&e.push("pKIXCertificate"),t&Dg.newExtensions&&e.push("newExtensions"),t&Dg.keyUpdateAllowed&&e.push("keyUpdateAllowed"),e}toString(){return`[${this.toJSON().join(", ")}]`}};Ls.EntrustInfo=qg;var jg=class{constructor(e={}){this.entrustVers="",this.entrustInfoFlags=new qg,Object.assign(this,e)}};Ls.EntrustVersionInfo=jg;rT.__decorate([(0,D0.AsnProp)({type:D0.AsnPropTypes.GeneralString})],jg.prototype,"entrustVers",void 0);rT.__decorate([(0,D0.AsnProp)({type:qg})],jg.prototype,"entrustInfoFlags",void 0)});var iT=v(pc=>{"use strict";var wP;Object.defineProperty(pc,"__esModule",{value:!0});pc.SubjectInfoAccessSyntax=pc.id_pe_subjectInfoAccess=void 0;var R4=(N(),E(k)),_P=V(),D4=Ye(),q4=$C();pc.id_pe_subjectInfoAccess=`${D4.id_pe}.11`;var bP=wP=class extends _P.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,wP.prototype)}};pc.SubjectInfoAccessSyntax=bP;pc.SubjectInfoAccessSyntax=bP=wP=R4.__decorate([(0,_P.AsnType)({type:_P.AsnTypeTypes.Sequence,itemType:q4.AccessDescription})],bP)});var nT=v(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});var tt=(N(),E(k));tt.__exportStar($C(),Ke);tt.__exportStar(JC(),Ke);tt.__exportStar(AO(),Ke);tt.__exportStar(bO(),Ke);tt.__exportStar(CO(),Ke);tt.__exportStar(EO(),Ke);tt.__exportStar(P0(),Ke);tt.__exportStar(xO(),Ke);tt.__exportStar(TO(),Ke);tt.__exportStar(ZC(),Ke);tt.__exportStar(RO(),Ke);tt.__exportStar(DO(),Ke);tt.__exportStar(jO(),Ke);tt.__exportStar(LO(),Ke);tt.__exportStar(HO(),Ke);tt.__exportStar(KO(),Ke);tt.__exportStar(FO(),Ke);tt.__exportStar(GO(),Ke);tt.__exportStar(WO(),Ke);tt.__exportStar(YO(),Ke);tt.__exportStar(QO(),Ke);tt.__exportStar(ZO(),Ke);tt.__exportStar(tT(),Ke);tt.__exportStar(sT(),Ke);tt.__exportStar(iT(),Ke)});var mc=v(j0=>{"use strict";Object.defineProperty(j0,"__esModule",{value:!0});j0.AlgorithmIdentifier=void 0;var aT=(N(),E(k)),q0=V(),j4=_s(),Mg=class r{constructor(e={}){this.algorithm="",Object.assign(this,e)}isEqual(e){return e instanceof r&&e.algorithm==this.algorithm&&(e.parameters&&this.parameters&&j4.isEqual(e.parameters,this.parameters)||e.parameters===this.parameters)}};j0.AlgorithmIdentifier=Mg;aT.__decorate([(0,q0.AsnProp)({type:q0.AsnPropTypes.ObjectIdentifier})],Mg.prototype,"algorithm",void 0);aT.__decorate([(0,q0.AsnProp)({type:q0.AsnPropTypes.Any,optional:!0})],Mg.prototype,"parameters",void 0)});var PP=v(M0=>{"use strict";Object.defineProperty(M0,"__esModule",{value:!0});M0.SubjectPublicKeyInfo=void 0;var oT=(N(),E(k)),CP=V(),cT=mc(),Lg=class{constructor(e={}){this.algorithm=new cT.AlgorithmIdentifier,this.subjectPublicKey=new ArrayBuffer(0),Object.assign(this,e)}};M0.SubjectPublicKeyInfo=Lg;oT.__decorate([(0,CP.AsnProp)({type:cT.AlgorithmIdentifier})],Lg.prototype,"algorithm",void 0);oT.__decorate([(0,CP.AsnProp)({type:CP.AsnPropTypes.BitString})],Lg.prototype,"subjectPublicKey",void 0)});var L0=v(Hg=>{"use strict";Object.defineProperty(Hg,"__esModule",{value:!0});Hg.Time=void 0;var IP=(N(),E(k)),Wh=V(),Ug=class{constructor(e){if(e)if(typeof e=="string"||typeof e=="number"||e instanceof Date){let t=new Date(e);t.setMilliseconds(0),t.getUTCFullYear()>2049?this.generalTime=t:this.utcTime=t}else Object.assign(this,e)}getTime(){let e=this.utcTime||this.generalTime;if(!e)throw new Error("Cannot get time from CHOICE object");return e}};Hg.Time=Ug;IP.__decorate([(0,Wh.AsnProp)({type:Wh.AsnPropTypes.UTCTime})],Ug.prototype,"utcTime",void 0);IP.__decorate([(0,Wh.AsnProp)({type:Wh.AsnPropTypes.GeneralizedTime})],Ug.prototype,"generalTime",void 0);Hg.Time=Ug=IP.__decorate([(0,Wh.AsnType)({type:Wh.AsnTypeTypes.Choice})],Ug)});var EP=v(U0=>{"use strict";Object.defineProperty(U0,"__esModule",{value:!0});U0.Validity=void 0;var uT=(N(),E(k)),lT=V(),zh=L0(),Kg=class{constructor(e){this.notBefore=new zh.Time(new Date),this.notAfter=new zh.Time(new Date),e&&(this.notBefore=new zh.Time(e.notBefore),this.notAfter=new zh.Time(e.notAfter))}};U0.Validity=Kg;uT.__decorate([(0,lT.AsnProp)({type:zh.Time})],Kg.prototype,"notBefore",void 0);uT.__decorate([(0,lT.AsnProp)({type:zh.Time})],Kg.prototype,"notAfter",void 0)});var K0=v(gc=>{"use strict";var kP;Object.defineProperty(gc,"__esModule",{value:!0});gc.Extensions=gc.Extension=void 0;var H0=(N(),E(k)),Us=V(),Di=class r{constructor(e={}){this.extnID="",this.critical=r.CRITICAL,this.extnValue=new Us.OctetString,Object.assign(this,e)}};gc.Extension=Di;Di.CRITICAL=!1;H0.__decorate([(0,Us.AsnProp)({type:Us.AsnPropTypes.ObjectIdentifier})],Di.prototype,"extnID",void 0);H0.__decorate([(0,Us.AsnProp)({type:Us.AsnPropTypes.Boolean,defaultValue:Di.CRITICAL})],Di.prototype,"critical",void 0);H0.__decorate([(0,Us.AsnProp)({type:Us.OctetString})],Di.prototype,"extnValue",void 0);var NP=kP=class extends Us.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,kP.prototype)}};gc.Extensions=NP;gc.Extensions=NP=kP=H0.__decorate([(0,Us.AsnType)({type:Us.AsnTypeTypes.Sequence,itemType:Di})],NP)});var BP=v($0=>{"use strict";Object.defineProperty($0,"__esModule",{value:!0});$0.Version=void 0;var hT;(function(r){r[r.v1=0]="v1",r[r.v2=1]="v2",r[r.v3=2]="v3"})(hT||($0.Version=hT={}))});var xP=v(J0=>{"use strict";Object.defineProperty(J0,"__esModule",{value:!0});J0.TBSCertificate=void 0;var Hs=(N(),E(k)),sr=V(),fT=mc(),F0=Ih(),dT=PP(),pT=EP(),M4=K0(),mT=BP(),Pr=class{constructor(e={}){this.version=mT.Version.v1,this.serialNumber=new ArrayBuffer(0),this.signature=new fT.AlgorithmIdentifier,this.issuer=new F0.Name,this.validity=new pT.Validity,this.subject=new F0.Name,this.subjectPublicKeyInfo=new dT.SubjectPublicKeyInfo,Object.assign(this,e)}};J0.TBSCertificate=Pr;Hs.__decorate([(0,sr.AsnProp)({type:sr.AsnPropTypes.Integer,context:0,defaultValue:mT.Version.v1})],Pr.prototype,"version",void 0);Hs.__decorate([(0,sr.AsnProp)({type:sr.AsnPropTypes.Integer,converter:sr.AsnIntegerArrayBufferConverter})],Pr.prototype,"serialNumber",void 0);Hs.__decorate([(0,sr.AsnProp)({type:fT.AlgorithmIdentifier})],Pr.prototype,"signature",void 0);Hs.__decorate([(0,sr.AsnProp)({type:F0.Name})],Pr.prototype,"issuer",void 0);Hs.__decorate([(0,sr.AsnProp)({type:pT.Validity})],Pr.prototype,"validity",void 0);Hs.__decorate([(0,sr.AsnProp)({type:F0.Name})],Pr.prototype,"subject",void 0);Hs.__decorate([(0,sr.AsnProp)({type:dT.SubjectPublicKeyInfo})],Pr.prototype,"subjectPublicKeyInfo",void 0);Hs.__decorate([(0,sr.AsnProp)({type:sr.AsnPropTypes.BitString,context:1,implicit:!0,optional:!0})],Pr.prototype,"issuerUniqueID",void 0);Hs.__decorate([(0,sr.AsnProp)({type:sr.AsnPropTypes.BitString,context:2,implicit:!0,optional:!0})],Pr.prototype,"subjectUniqueID",void 0);Hs.__decorate([(0,sr.AsnProp)({type:M4.Extensions,context:3,optional:!0})],Pr.prototype,"extensions",void 0)});var vT=v(W0=>{"use strict";Object.defineProperty(W0,"__esModule",{value:!0});W0.Certificate=void 0;var OP=(N(),E(k)),G0=V(),gT=mc(),yT=xP(),Yh=class{constructor(e={}){this.tbsCertificate=new yT.TBSCertificate,this.signatureAlgorithm=new gT.AlgorithmIdentifier,this.signatureValue=new ArrayBuffer(0),Object.assign(this,e)}};W0.Certificate=Yh;OP.__decorate([(0,G0.AsnProp)({type:yT.TBSCertificate,raw:!0})],Yh.prototype,"tbsCertificate",void 0);OP.__decorate([(0,G0.AsnProp)({type:gT.AlgorithmIdentifier})],Yh.prototype,"signatureAlgorithm",void 0);OP.__decorate([(0,G0.AsnProp)({type:G0.AsnPropTypes.BitString})],Yh.prototype,"signatureValue",void 0)});var TP=v(Xh=>{"use strict";Object.defineProperty(Xh,"__esModule",{value:!0});Xh.TBSCertList=Xh.RevokedCertificate=void 0;var $s=(N(),E(k)),Ir=V(),ST=mc(),AT=Ih(),$g=L0(),wT=K0(),yc=class{constructor(e={}){this.userCertificate=new ArrayBuffer(0),this.revocationDate=new $g.Time,Object.assign(this,e)}};Xh.RevokedCertificate=yc;$s.__decorate([(0,Ir.AsnProp)({type:Ir.AsnPropTypes.Integer,converter:Ir.AsnIntegerArrayBufferConverter})],yc.prototype,"userCertificate",void 0);$s.__decorate([(0,Ir.AsnProp)({type:$g.Time})],yc.prototype,"revocationDate",void 0);$s.__decorate([(0,Ir.AsnProp)({type:wT.Extension,optional:!0,repeated:"sequence"})],yc.prototype,"crlEntryExtensions",void 0);var Ks=class{constructor(e={}){this.signature=new ST.AlgorithmIdentifier,this.issuer=new AT.Name,this.thisUpdate=new $g.Time,Object.assign(this,e)}};Xh.TBSCertList=Ks;$s.__decorate([(0,Ir.AsnProp)({type:Ir.AsnPropTypes.Integer,optional:!0})],Ks.prototype,"version",void 0);$s.__decorate([(0,Ir.AsnProp)({type:ST.AlgorithmIdentifier})],Ks.prototype,"signature",void 0);$s.__decorate([(0,Ir.AsnProp)({type:AT.Name})],Ks.prototype,"issuer",void 0);$s.__decorate([(0,Ir.AsnProp)({type:$g.Time})],Ks.prototype,"thisUpdate",void 0);$s.__decorate([(0,Ir.AsnProp)({type:$g.Time,optional:!0})],Ks.prototype,"nextUpdate",void 0);$s.__decorate([(0,Ir.AsnProp)({type:yc,repeated:"sequence",optional:!0})],Ks.prototype,"revokedCertificates",void 0);$s.__decorate([(0,Ir.AsnProp)({type:wT.Extension,optional:!0,context:0,repeated:"sequence"})],Ks.prototype,"crlExtensions",void 0)});var CT=v(Y0=>{"use strict";Object.defineProperty(Y0,"__esModule",{value:!0});Y0.CertificateList=void 0;var VP=(N(),E(k)),z0=V(),_T=mc(),bT=TP(),Qh=class{constructor(e={}){this.tbsCertList=new bT.TBSCertList,this.signatureAlgorithm=new _T.AlgorithmIdentifier,this.signature=new ArrayBuffer(0),Object.assign(this,e)}};Y0.CertificateList=Qh;VP.__decorate([(0,z0.AsnProp)({type:bT.TBSCertList,raw:!0})],Qh.prototype,"tbsCertList",void 0);VP.__decorate([(0,z0.AsnProp)({type:_T.AlgorithmIdentifier})],Qh.prototype,"signatureAlgorithm",void 0);VP.__decorate([(0,z0.AsnProp)({type:z0.AsnPropTypes.BitString})],Qh.prototype,"signature",void 0)});var Ie=v(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});var zt=(N(),E(k));zt.__exportStar(nT(),Dt);zt.__exportStar(mc(),Dt);zt.__exportStar(gP(),Dt);zt.__exportStar(vT(),Dt);zt.__exportStar(CT(),Dt);zt.__exportStar(K0(),Dt);zt.__exportStar(Zo(),Dt);zt.__exportStar(Eg(),Dt);zt.__exportStar(Ih(),Dt);zt.__exportStar(Ye(),Dt);zt.__exportStar(PP(),Dt);zt.__exportStar(TP(),Dt);zt.__exportStar(xP(),Dt);zt.__exportStar(L0(),Dt);zt.__exportStar(BP(),Dt);zt.__exportStar(EP(),Dt)});var Jg=v(Q0=>{"use strict";Object.defineProperty(Q0,"__esModule",{value:!0});Q0.IssuerAndSerialNumber=void 0;var PT=(N(),E(k)),X0=V(),IT=Ie(),Fg=class{constructor(e={}){this.issuer=new IT.Name,this.serialNumber=new ArrayBuffer(0),Object.assign(this,e)}};Q0.IssuerAndSerialNumber=Fg;PT.__decorate([(0,X0.AsnProp)({type:IT.Name})],Fg.prototype,"issuer",void 0);PT.__decorate([(0,X0.AsnProp)({type:X0.AsnPropTypes.Integer,converter:X0.AsnIntegerArrayBufferConverter})],Fg.prototype,"serialNumber",void 0)});var DP=v(Wg=>{"use strict";Object.defineProperty(Wg,"__esModule",{value:!0});Wg.SignerIdentifier=void 0;var RP=(N(),E(k)),Z0=V(),L4=Jg(),U4=Ie(),Gg=class{constructor(e={}){Object.assign(this,e)}};Wg.SignerIdentifier=Gg;RP.__decorate([(0,Z0.AsnProp)({type:U4.SubjectKeyIdentifier,context:0,implicit:!0})],Gg.prototype,"subjectKeyIdentifier",void 0);RP.__decorate([(0,Z0.AsnProp)({type:L4.IssuerAndSerialNumber})],Gg.prototype,"issuerAndSerialNumber",void 0);Wg.SignerIdentifier=Gg=RP.__decorate([(0,Z0.AsnType)({type:Z0.AsnTypeTypes.Choice})],Gg)});var Fs=v(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.KeyDerivationAlgorithmIdentifier=ft.MessageAuthenticationCodeAlgorithm=ft.ContentEncryptionAlgorithmIdentifier=ft.KeyEncryptionAlgorithmIdentifier=ft.SignatureAlgorithmIdentifier=ft.DigestAlgorithmIdentifier=ft.CMSVersion=void 0;var Zh=(N(),E(k)),ef=Ie(),Lr=V(),ET;(function(r){r[r.v0=0]="v0",r[r.v1=1]="v1",r[r.v2=2]="v2",r[r.v3=3]="v3",r[r.v4=4]="v4",r[r.v5=5]="v5"})(ET||(ft.CMSVersion=ET={}));var qP=class extends ef.AlgorithmIdentifier{};ft.DigestAlgorithmIdentifier=qP;ft.DigestAlgorithmIdentifier=qP=Zh.__decorate([(0,Lr.AsnType)({type:Lr.AsnTypeTypes.Sequence})],qP);var jP=class extends ef.AlgorithmIdentifier{};ft.SignatureAlgorithmIdentifier=jP;ft.SignatureAlgorithmIdentifier=jP=Zh.__decorate([(0,Lr.AsnType)({type:Lr.AsnTypeTypes.Sequence})],jP);var MP=class extends ef.AlgorithmIdentifier{};ft.KeyEncryptionAlgorithmIdentifier=MP;ft.KeyEncryptionAlgorithmIdentifier=MP=Zh.__decorate([(0,Lr.AsnType)({type:Lr.AsnTypeTypes.Sequence})],MP);var LP=class extends ef.AlgorithmIdentifier{};ft.ContentEncryptionAlgorithmIdentifier=LP;ft.ContentEncryptionAlgorithmIdentifier=LP=Zh.__decorate([(0,Lr.AsnType)({type:Lr.AsnTypeTypes.Sequence})],LP);var UP=class extends ef.AlgorithmIdentifier{};ft.MessageAuthenticationCodeAlgorithm=UP;ft.MessageAuthenticationCodeAlgorithm=UP=Zh.__decorate([(0,Lr.AsnType)({type:Lr.AsnTypeTypes.Sequence})],UP);var HP=class extends ef.AlgorithmIdentifier{};ft.KeyDerivationAlgorithmIdentifier=HP;ft.KeyDerivationAlgorithmIdentifier=HP=Zh.__decorate([(0,Lr.AsnType)({type:Lr.AsnTypeTypes.Sequence})],HP)});var r1=v(t1=>{"use strict";Object.defineProperty(t1,"__esModule",{value:!0});t1.Attribute=void 0;var kT=(N(),E(k)),e1=V(),zg=class{constructor(e={}){this.attrType="",this.attrValues=[],Object.assign(this,e)}};t1.Attribute=zg;kT.__decorate([(0,e1.AsnProp)({type:e1.AsnPropTypes.ObjectIdentifier})],zg.prototype,"attrType",void 0);kT.__decorate([(0,e1.AsnProp)({type:e1.AsnPropTypes.Any,repeated:"set"})],zg.prototype,"attrValues",void 0)});var s1=v(vc=>{"use strict";var KP;Object.defineProperty(vc,"__esModule",{value:!0});vc.SignerInfos=vc.SignerInfo=void 0;var ia=(N(),E(k)),Er=V(),NT=DP(),Yg=Fs(),BT=r1(),ls=class{constructor(e={}){this.version=Yg.CMSVersion.v0,this.sid=new NT.SignerIdentifier,this.digestAlgorithm=new Yg.DigestAlgorithmIdentifier,this.signatureAlgorithm=new Yg.SignatureAlgorithmIdentifier,this.signature=new Er.OctetString,Object.assign(this,e)}};vc.SignerInfo=ls;ia.__decorate([(0,Er.AsnProp)({type:Er.AsnPropTypes.Integer})],ls.prototype,"version",void 0);ia.__decorate([(0,Er.AsnProp)({type:NT.SignerIdentifier})],ls.prototype,"sid",void 0);ia.__decorate([(0,Er.AsnProp)({type:Yg.DigestAlgorithmIdentifier})],ls.prototype,"digestAlgorithm",void 0);ia.__decorate([(0,Er.AsnProp)({type:BT.Attribute,repeated:"set",context:0,implicit:!0,optional:!0,raw:!0})],ls.prototype,"signedAttrs",void 0);ia.__decorate([(0,Er.AsnProp)({type:Yg.SignatureAlgorithmIdentifier})],ls.prototype,"signatureAlgorithm",void 0);ia.__decorate([(0,Er.AsnProp)({type:Er.OctetString})],ls.prototype,"signature",void 0);ia.__decorate([(0,Er.AsnProp)({type:BT.Attribute,repeated:"set",context:1,implicit:!0,optional:!0})],ls.prototype,"unsignedAttrs",void 0);var $P=KP=class extends Er.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,KP.prototype)}};vc.SignerInfos=$P;vc.SignerInfos=$P=KP=ia.__decorate([(0,Er.AsnType)({type:Er.AsnTypeTypes.Set,itemType:ls})],$P)});var OT=v(Sc=>{"use strict";Object.defineProperty(Sc,"__esModule",{value:!0});Sc.CounterSignature=Sc.id_counterSignature=void 0;var H4=(N(),E(k)),xT=V(),K4=s1();Sc.id_counterSignature="1.2.840.113549.1.9.6";var FP=class extends K4.SignerInfo{};Sc.CounterSignature=FP;Sc.CounterSignature=FP=H4.__decorate([(0,xT.AsnType)({type:xT.AsnTypeTypes.Sequence})],FP)});var TT=v(tf=>{"use strict";Object.defineProperty(tf,"__esModule",{value:!0});tf.MessageDigest=tf.id_messageDigest=void 0;var $4=V();tf.id_messageDigest="1.2.840.113549.1.9.4";var JP=class extends $4.OctetString{};tf.MessageDigest=JP});var RT=v(Ac=>{"use strict";Object.defineProperty(Ac,"__esModule",{value:!0});Ac.SigningTime=Ac.id_signingTime=void 0;var F4=(N(),E(k)),J4=Ie(),VT=V();Ac.id_signingTime="1.2.840.113549.1.9.5";var GP=class extends J4.Time{};Ac.SigningTime=GP;Ac.SigningTime=GP=F4.__decorate([(0,VT.AsnType)({type:VT.AsnTypeTypes.Choice})],GP)});var DT=v(wc=>{"use strict";Object.defineProperty(wc,"__esModule",{value:!0});wc.id_contentType=void 0;var WP=(N(),E(k));WP.__exportStar(OT(),wc);WP.__exportStar(TT(),wc);WP.__exportStar(RT(),wc);wc.id_contentType="1.2.840.113549.1.9.3"});var qT=v(n1=>{"use strict";Object.defineProperty(n1,"__esModule",{value:!0});n1.ACClearAttrs=void 0;var zP=(N(),E(k)),i1=V(),YP=Ie(),rf=class{constructor(e={}){this.acIssuer=new YP.GeneralName,this.acSerial=0,this.attrs=[],Object.assign(this,e)}};n1.ACClearAttrs=rf;zP.__decorate([(0,i1.AsnProp)({type:YP.GeneralName})],rf.prototype,"acIssuer",void 0);zP.__decorate([(0,i1.AsnProp)({type:i1.AsnPropTypes.Integer})],rf.prototype,"acSerial",void 0);zP.__decorate([(0,i1.AsnProp)({type:YP.Attribute,repeated:"sequence"})],rf.prototype,"attrs",void 0)});var ZP=v(Xg=>{"use strict";var XP;Object.defineProperty(Xg,"__esModule",{value:!0});Xg.AttrSpec=void 0;var G4=(N(),E(k)),a1=V(),QP=XP=class extends a1.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,XP.prototype)}};Xg.AttrSpec=QP;Xg.AttrSpec=QP=XP=G4.__decorate([(0,a1.AsnType)({type:a1.AsnTypeTypes.Sequence,itemType:a1.AsnPropTypes.ObjectIdentifier})],QP)});var MT=v(c1=>{"use strict";Object.defineProperty(c1,"__esModule",{value:!0});c1.AAControls=void 0;var o1=(N(),E(k)),sf=V(),jT=ZP(),_c=class{constructor(e={}){this.permitUnSpecified=!0,Object.assign(this,e)}};c1.AAControls=_c;o1.__decorate([(0,sf.AsnProp)({type:sf.AsnPropTypes.Integer,optional:!0})],_c.prototype,"pathLenConstraint",void 0);o1.__decorate([(0,sf.AsnProp)({type:jT.AttrSpec,implicit:!0,context:0,optional:!0})],_c.prototype,"permittedAttrs",void 0);o1.__decorate([(0,sf.AsnProp)({type:jT.AttrSpec,implicit:!0,context:1,optional:!0})],_c.prototype,"excludedAttrs",void 0);o1.__decorate([(0,sf.AsnProp)({type:sf.AsnPropTypes.Boolean,defaultValue:!0})],_c.prototype,"permitUnSpecified",void 0)});var Qg=v(u1=>{"use strict";Object.defineProperty(u1,"__esModule",{value:!0});u1.IssuerSerial=void 0;var eI=(N(),E(k)),nf=V(),LT=Ie(),af=class{constructor(e={}){this.issuer=new LT.GeneralNames,this.serial=new ArrayBuffer(0),this.issuerUID=new ArrayBuffer(0),Object.assign(this,e)}};u1.IssuerSerial=af;eI.__decorate([(0,nf.AsnProp)({type:LT.GeneralNames})],af.prototype,"issuer",void 0);eI.__decorate([(0,nf.AsnProp)({type:nf.AsnPropTypes.Integer,converter:nf.AsnIntegerArrayBufferConverter})],af.prototype,"serial",void 0);eI.__decorate([(0,nf.AsnProp)({type:nf.AsnPropTypes.BitString,optional:!0})],af.prototype,"issuerUID",void 0)});var Zg=v(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});of.ObjectDigestInfo=of.DigestedObjectType=void 0;var l1=(N(),E(k)),bc=V(),UT=Ie(),tI;(function(r){r[r.publicKey=0]="publicKey",r[r.publicKeyCert=1]="publicKeyCert",r[r.otherObjectTypes=2]="otherObjectTypes"})(tI||(of.DigestedObjectType=tI={}));var Cc=class{constructor(e={}){this.digestedObjectType=tI.publicKey,this.digestAlgorithm=new UT.AlgorithmIdentifier,this.objectDigest=new ArrayBuffer(0),Object.assign(this,e)}};of.ObjectDigestInfo=Cc;l1.__decorate([(0,bc.AsnProp)({type:bc.AsnPropTypes.Enumerated})],Cc.prototype,"digestedObjectType",void 0);l1.__decorate([(0,bc.AsnProp)({type:bc.AsnPropTypes.ObjectIdentifier,optional:!0})],Cc.prototype,"otherObjectTypeID",void 0);l1.__decorate([(0,bc.AsnProp)({type:UT.AlgorithmIdentifier})],Cc.prototype,"digestAlgorithm",void 0);l1.__decorate([(0,bc.AsnProp)({type:bc.AsnPropTypes.BitString})],Cc.prototype,"objectDigest",void 0)});var iI=v(h1=>{"use strict";Object.defineProperty(h1,"__esModule",{value:!0});h1.V2Form=void 0;var rI=(N(),E(k)),sI=V(),W4=Ie(),z4=Qg(),Y4=Zg(),cf=class{constructor(e={}){Object.assign(this,e)}};h1.V2Form=cf;rI.__decorate([(0,sI.AsnProp)({type:W4.GeneralNames,optional:!0})],cf.prototype,"issuerName",void 0);rI.__decorate([(0,sI.AsnProp)({type:z4.IssuerSerial,context:0,implicit:!0,optional:!0})],cf.prototype,"baseCertificateID",void 0);rI.__decorate([(0,sI.AsnProp)({type:Y4.ObjectDigestInfo,context:1,implicit:!0,optional:!0})],cf.prototype,"objectDigestInfo",void 0)});var aI=v(ty=>{"use strict";Object.defineProperty(ty,"__esModule",{value:!0});ty.AttCertIssuer=void 0;var nI=(N(),E(k)),f1=V(),X4=Ie(),Q4=iI(),ey=class{constructor(e={}){Object.assign(this,e)}};ty.AttCertIssuer=ey;nI.__decorate([(0,f1.AsnProp)({type:X4.GeneralName,repeated:"sequence"})],ey.prototype,"v1Form",void 0);nI.__decorate([(0,f1.AsnProp)({type:Q4.V2Form,context:0,implicit:!0})],ey.prototype,"v2Form",void 0);ty.AttCertIssuer=ey=nI.__decorate([(0,f1.AsnType)({type:f1.AsnTypeTypes.Choice})],ey)});var oI=v(p1=>{"use strict";Object.defineProperty(p1,"__esModule",{value:!0});p1.AttCertValidityPeriod=void 0;var HT=(N(),E(k)),d1=V(),ry=class{constructor(e={}){this.notBeforeTime=new Date,this.notAfterTime=new Date,Object.assign(this,e)}};p1.AttCertValidityPeriod=ry;HT.__decorate([(0,d1.AsnProp)({type:d1.AsnPropTypes.GeneralizedTime})],ry.prototype,"notBeforeTime",void 0);HT.__decorate([(0,d1.AsnProp)({type:d1.AsnPropTypes.GeneralizedTime})],ry.prototype,"notAfterTime",void 0)});var lI=v(m1=>{"use strict";Object.defineProperty(m1,"__esModule",{value:!0});m1.Holder=void 0;var cI=(N(),E(k)),uI=V(),Z4=Qg(),e8=Ie(),t8=Zg(),uf=class{constructor(e={}){Object.assign(this,e)}};m1.Holder=uf;cI.__decorate([(0,uI.AsnProp)({type:Z4.IssuerSerial,implicit:!0,context:0,optional:!0})],uf.prototype,"baseCertificateID",void 0);cI.__decorate([(0,uI.AsnProp)({type:e8.GeneralNames,implicit:!0,context:1,optional:!0})],uf.prototype,"entityName",void 0);cI.__decorate([(0,uI.AsnProp)({type:t8.ObjectDigestInfo,implicit:!0,context:2,optional:!0})],uf.prototype,"objectDigestInfo",void 0)});var fI=v(lf=>{"use strict";Object.defineProperty(lf,"__esModule",{value:!0});lf.AttributeCertificateInfo=lf.AttCertVersion=void 0;var qi=(N(),E(k)),kr=V(),g1=Ie(),KT=lI(),$T=aI(),FT=oI(),hI;(function(r){r[r.v2=1]="v2"})(hI||(lf.AttCertVersion=hI={}));var Ur=class{constructor(e={}){this.version=hI.v2,this.holder=new KT.Holder,this.issuer=new $T.AttCertIssuer,this.signature=new g1.AlgorithmIdentifier,this.serialNumber=new ArrayBuffer(0),this.attrCertValidityPeriod=new FT.AttCertValidityPeriod,this.attributes=[],Object.assign(this,e)}};lf.AttributeCertificateInfo=Ur;qi.__decorate([(0,kr.AsnProp)({type:kr.AsnPropTypes.Integer})],Ur.prototype,"version",void 0);qi.__decorate([(0,kr.AsnProp)({type:KT.Holder})],Ur.prototype,"holder",void 0);qi.__decorate([(0,kr.AsnProp)({type:$T.AttCertIssuer})],Ur.prototype,"issuer",void 0);qi.__decorate([(0,kr.AsnProp)({type:g1.AlgorithmIdentifier})],Ur.prototype,"signature",void 0);qi.__decorate([(0,kr.AsnProp)({type:kr.AsnPropTypes.Integer,converter:kr.AsnIntegerArrayBufferConverter})],Ur.prototype,"serialNumber",void 0);qi.__decorate([(0,kr.AsnProp)({type:FT.AttCertValidityPeriod})],Ur.prototype,"attrCertValidityPeriod",void 0);qi.__decorate([(0,kr.AsnProp)({type:g1.Attribute,repeated:"sequence"})],Ur.prototype,"attributes",void 0);qi.__decorate([(0,kr.AsnProp)({type:kr.AsnPropTypes.BitString,optional:!0})],Ur.prototype,"issuerUniqueID",void 0);qi.__decorate([(0,kr.AsnProp)({type:g1.Extensions,optional:!0})],Ur.prototype,"extensions",void 0)});var WT=v(v1=>{"use strict";Object.defineProperty(v1,"__esModule",{value:!0});v1.AttributeCertificate=void 0;var dI=(N(),E(k)),y1=V(),JT=Ie(),GT=fI(),hf=class{constructor(e={}){this.acinfo=new GT.AttributeCertificateInfo,this.signatureAlgorithm=new JT.AlgorithmIdentifier,this.signatureValue=new ArrayBuffer(0),Object.assign(this,e)}};v1.AttributeCertificate=hf;dI.__decorate([(0,y1.AsnProp)({type:GT.AttributeCertificateInfo})],hf.prototype,"acinfo",void 0);dI.__decorate([(0,y1.AsnProp)({type:JT.AlgorithmIdentifier})],hf.prototype,"signatureAlgorithm",void 0);dI.__decorate([(0,y1.AsnProp)({type:y1.AsnPropTypes.BitString})],hf.prototype,"signatureValue",void 0)});var mI=v(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});ff.ClassList=ff.ClassListFlags=void 0;var r8=V(),zT;(function(r){r[r.unmarked=1]="unmarked",r[r.unclassified=2]="unclassified",r[r.restricted=4]="restricted",r[r.confidential=8]="confidential",r[r.secret=16]="secret",r[r.topSecret=32]="topSecret"})(zT||(ff.ClassListFlags=zT={}));var pI=class extends r8.BitString{};ff.ClassList=pI});var gI=v(A1=>{"use strict";Object.defineProperty(A1,"__esModule",{value:!0});A1.SecurityCategory=void 0;var YT=(N(),E(k)),S1=V(),sy=class{constructor(e={}){this.type="",this.value=new ArrayBuffer(0),Object.assign(this,e)}};A1.SecurityCategory=sy;YT.__decorate([(0,S1.AsnProp)({type:S1.AsnPropTypes.ObjectIdentifier,implicit:!0,context:0})],sy.prototype,"type",void 0);YT.__decorate([(0,S1.AsnProp)({type:S1.AsnPropTypes.Any,implicit:!0,context:1})],sy.prototype,"value",void 0)});var XT=v(_1=>{"use strict";Object.defineProperty(_1,"__esModule",{value:!0});_1.Clearance=void 0;var yI=(N(),E(k)),w1=V(),iy=mI(),s8=gI(),df=class{constructor(e={}){this.policyId="",this.classList=new iy.ClassList(iy.ClassListFlags.unclassified),Object.assign(this,e)}};_1.Clearance=df;yI.__decorate([(0,w1.AsnProp)({type:w1.AsnPropTypes.ObjectIdentifier})],df.prototype,"policyId",void 0);yI.__decorate([(0,w1.AsnProp)({type:iy.ClassList,defaultValue:new iy.ClassList(iy.ClassListFlags.unclassified)})],df.prototype,"classList",void 0);yI.__decorate([(0,w1.AsnProp)({type:s8.SecurityCategory,repeated:"set"})],df.prototype,"securityCategories",void 0)});var QT=v(pf=>{"use strict";Object.defineProperty(pf,"__esModule",{value:!0});pf.IetfAttrSyntax=pf.IetfAttrSyntaxValueChoices=void 0;var ay=(N(),E(k)),na=V(),i8=Ie(),Pc=class{constructor(e={}){Object.assign(this,e)}};pf.IetfAttrSyntaxValueChoices=Pc;ay.__decorate([(0,na.AsnProp)({type:na.OctetString})],Pc.prototype,"cotets",void 0);ay.__decorate([(0,na.AsnProp)({type:na.AsnPropTypes.ObjectIdentifier})],Pc.prototype,"oid",void 0);ay.__decorate([(0,na.AsnProp)({type:na.AsnPropTypes.Utf8String})],Pc.prototype,"string",void 0);var ny=class{constructor(e={}){this.values=[],Object.assign(this,e)}};pf.IetfAttrSyntax=ny;ay.__decorate([(0,na.AsnProp)({type:i8.GeneralNames,implicit:!0,context:0,optional:!0})],ny.prototype,"policyAuthority",void 0);ay.__decorate([(0,na.AsnProp)({type:Pc,repeated:"sequence"})],ny.prototype,"values",void 0)});var ZT=v(Ee=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.id_at_clearance=Ee.id_at_role=Ee.id_at=Ee.id_aca_encAttrs=Ee.id_aca_group=Ee.id_aca_chargingIdentity=Ee.id_aca_accessIdentity=Ee.id_aca_authenticationInfo=Ee.id_aca=Ee.id_ce_targetInformation=Ee.id_pe_ac_proxying=Ee.id_pe_aaControls=Ee.id_pe_ac_auditIdentity=void 0;var oy=Ie();Ee.id_pe_ac_auditIdentity=`${oy.id_pe}.4`;Ee.id_pe_aaControls=`${oy.id_pe}.6`;Ee.id_pe_ac_proxying=`${oy.id_pe}.10`;Ee.id_ce_targetInformation=`${oy.id_ce}.55`;Ee.id_aca=`${oy.id_pkix}.10`;Ee.id_aca_authenticationInfo=`${Ee.id_aca}.1`;Ee.id_aca_accessIdentity=`${Ee.id_aca}.2`;Ee.id_aca_chargingIdentity=`${Ee.id_aca}.3`;Ee.id_aca_group=`${Ee.id_aca}.4`;Ee.id_aca_encAttrs=`${Ee.id_aca}.6`;Ee.id_at="2.5.4";Ee.id_at_role=`${Ee.id_at}.72`;Ee.id_at_clearance="2.5.1.5.55"});var wI=v(Js=>{"use strict";var vI;Object.defineProperty(Js,"__esModule",{value:!0});Js.Targets=Js.Target=Js.TargetCert=void 0;var aa=(N(),E(k)),hs=V(),AI=Ie(),eV=Qg(),n8=Zg(),Ic=class{constructor(e={}){this.targetCertificate=new eV.IssuerSerial,Object.assign(this,e)}};Js.TargetCert=Ic;aa.__decorate([(0,hs.AsnProp)({type:eV.IssuerSerial})],Ic.prototype,"targetCertificate",void 0);aa.__decorate([(0,hs.AsnProp)({type:AI.GeneralName,optional:!0})],Ic.prototype,"targetName",void 0);aa.__decorate([(0,hs.AsnProp)({type:n8.ObjectDigestInfo,optional:!0})],Ic.prototype,"certDigestInfo",void 0);var Ec=class{constructor(e={}){Object.assign(this,e)}};Js.Target=Ec;aa.__decorate([(0,hs.AsnProp)({type:AI.GeneralName,context:0,implicit:!0})],Ec.prototype,"targetName",void 0);aa.__decorate([(0,hs.AsnProp)({type:AI.GeneralName,context:1,implicit:!0})],Ec.prototype,"targetGroup",void 0);aa.__decorate([(0,hs.AsnProp)({type:Ic,context:2,implicit:!0})],Ec.prototype,"targetCert",void 0);Js.Target=Ec=aa.__decorate([(0,hs.AsnType)({type:hs.AsnTypeTypes.Choice})],Ec);var SI=vI=class extends hs.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,vI.prototype)}};Js.Targets=SI;Js.Targets=SI=vI=aa.__decorate([(0,hs.AsnType)({type:hs.AsnTypeTypes.Sequence,itemType:Ec})],SI)});var tV=v(cy=>{"use strict";var _I;Object.defineProperty(cy,"__esModule",{value:!0});cy.ProxyInfo=void 0;var a8=(N(),E(k)),bI=V(),o8=wI(),CI=_I=class extends bI.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,_I.prototype)}};cy.ProxyInfo=CI;cy.ProxyInfo=CI=_I=a8.__decorate([(0,bI.AsnType)({type:bI.AsnTypeTypes.Sequence,itemType:o8.Targets})],CI)});var nV=v(b1=>{"use strict";Object.defineProperty(b1,"__esModule",{value:!0});b1.RoleSyntax=void 0;var rV=(N(),E(k)),sV=V(),iV=Ie(),uy=class{constructor(e={}){Object.assign(this,e)}};b1.RoleSyntax=uy;rV.__decorate([(0,sV.AsnProp)({type:iV.GeneralNames,implicit:!0,context:0,optional:!0})],uy.prototype,"roleAuthority",void 0);rV.__decorate([(0,sV.AsnProp)({type:iV.GeneralName,implicit:!0,context:1})],uy.prototype,"roleName",void 0)});var aV=v(I1=>{"use strict";Object.defineProperty(I1,"__esModule",{value:!0});I1.SvceAuthInfo=void 0;var PI=(N(),E(k)),C1=V(),P1=Ie(),mf=class{constructor(e={}){this.service=new P1.GeneralName,this.ident=new P1.GeneralName,Object.assign(this,e)}};I1.SvceAuthInfo=mf;PI.__decorate([(0,C1.AsnProp)({type:P1.GeneralName})],mf.prototype,"service",void 0);PI.__decorate([(0,C1.AsnProp)({type:P1.GeneralName})],mf.prototype,"ident",void 0);PI.__decorate([(0,C1.AsnProp)({type:C1.OctetString,optional:!0})],mf.prototype,"authInfo",void 0)});var II=v(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});var bt=(N(),E(k));bt.__exportStar(qT(),dt);bt.__exportStar(MT(),dt);bt.__exportStar(aI(),dt);bt.__exportStar(oI(),dt);bt.__exportStar(ZP(),dt);bt.__exportStar(WT(),dt);bt.__exportStar(fI(),dt);bt.__exportStar(mI(),dt);bt.__exportStar(XT(),dt);bt.__exportStar(lI(),dt);bt.__exportStar(QT(),dt);bt.__exportStar(Qg(),dt);bt.__exportStar(Zg(),dt);bt.__exportStar(ZT(),dt);bt.__exportStar(tV(),dt);bt.__exportStar(nV(),dt);bt.__exportStar(gI(),dt);bt.__exportStar(aV(),dt);bt.__exportStar(wI(),dt);bt.__exportStar(iI(),dt)});var E1=v(Gs=>{"use strict";var EI;Object.defineProperty(Gs,"__esModule",{value:!0});Gs.CertificateSet=Gs.CertificateChoices=Gs.OtherCertificateFormat=void 0;var Nc=(N(),E(k)),Hr=V(),c8=Ie(),u8=II(),gf=class{constructor(e={}){this.otherCertFormat="",this.otherCert=new ArrayBuffer(0),Object.assign(this,e)}};Gs.OtherCertificateFormat=gf;Nc.__decorate([(0,Hr.AsnProp)({type:Hr.AsnPropTypes.ObjectIdentifier})],gf.prototype,"otherCertFormat",void 0);Nc.__decorate([(0,Hr.AsnProp)({type:Hr.AsnPropTypes.Any})],gf.prototype,"otherCert",void 0);var kc=class{constructor(e={}){Object.assign(this,e)}};Gs.CertificateChoices=kc;Nc.__decorate([(0,Hr.AsnProp)({type:c8.Certificate})],kc.prototype,"certificate",void 0);Nc.__decorate([(0,Hr.AsnProp)({type:u8.AttributeCertificate,context:2,implicit:!0})],kc.prototype,"v2AttrCert",void 0);Nc.__decorate([(0,Hr.AsnProp)({type:gf,context:3,implicit:!0})],kc.prototype,"other",void 0);Gs.CertificateChoices=kc=Nc.__decorate([(0,Hr.AsnType)({type:Hr.AsnTypeTypes.Choice})],kc);var kI=EI=class extends Hr.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,EI.prototype)}};Gs.CertificateSet=kI;Gs.CertificateSet=kI=EI=Nc.__decorate([(0,Hr.AsnType)({type:Hr.AsnTypeTypes.Set,itemType:kc})],kI)});var cV=v(N1=>{"use strict";Object.defineProperty(N1,"__esModule",{value:!0});N1.ContentInfo=void 0;var oV=(N(),E(k)),k1=V(),ly=class{constructor(e={}){this.contentType="",this.content=new ArrayBuffer(0),Object.assign(this,e)}};N1.ContentInfo=ly;oV.__decorate([(0,k1.AsnProp)({type:k1.AsnPropTypes.ObjectIdentifier})],ly.prototype,"contentType",void 0);oV.__decorate([(0,k1.AsnProp)({type:k1.AsnPropTypes.Any,context:0})],ly.prototype,"content",void 0)});var NI=v(Bc=>{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});Bc.EncapsulatedContentInfo=Bc.EncapsulatedContent=void 0;var fy=(N(),E(k)),ji=V(),yf=class{constructor(e={}){Object.assign(this,e)}};Bc.EncapsulatedContent=yf;fy.__decorate([(0,ji.AsnProp)({type:ji.OctetString})],yf.prototype,"single",void 0);fy.__decorate([(0,ji.AsnProp)({type:ji.AsnPropTypes.Any})],yf.prototype,"any",void 0);Bc.EncapsulatedContent=yf=fy.__decorate([(0,ji.AsnType)({type:ji.AsnTypeTypes.Choice})],yf);var hy=class{constructor(e={}){this.eContentType="",Object.assign(this,e)}};Bc.EncapsulatedContentInfo=hy;fy.__decorate([(0,ji.AsnProp)({type:ji.AsnPropTypes.ObjectIdentifier})],hy.prototype,"eContentType",void 0);fy.__decorate([(0,ji.AsnProp)({type:yf,context:0,optional:!0})],hy.prototype,"eContent",void 0)});var BI=v(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.EncryptedContentInfo=xc.EncryptedContent=void 0;var Af=(N(),E(k)),fs=V(),uV=Fs(),vf=class{constructor(e={}){Object.assign(this,e)}};xc.EncryptedContent=vf;Af.__decorate([(0,fs.AsnProp)({type:fs.OctetString,context:0,implicit:!0,optional:!0})],vf.prototype,"value",void 0);Af.__decorate([(0,fs.AsnProp)({type:fs.OctetString,converter:fs.AsnConstructedOctetStringConverter,context:0,implicit:!0,optional:!0,repeated:"sequence"})],vf.prototype,"constructedValue",void 0);xc.EncryptedContent=vf=Af.__decorate([(0,fs.AsnType)({type:fs.AsnTypeTypes.Choice})],vf);var Sf=class{constructor(e={}){this.contentType="",this.contentEncryptionAlgorithm=new uV.ContentEncryptionAlgorithmIdentifier,Object.assign(this,e)}};xc.EncryptedContentInfo=Sf;Af.__decorate([(0,fs.AsnProp)({type:fs.AsnPropTypes.ObjectIdentifier})],Sf.prototype,"contentType",void 0);Af.__decorate([(0,fs.AsnProp)({type:uV.ContentEncryptionAlgorithmIdentifier})],Sf.prototype,"contentEncryptionAlgorithm",void 0);Af.__decorate([(0,fs.AsnProp)({type:vf,optional:!0})],Sf.prototype,"encryptedContent",void 0)});var xI=v(x1=>{"use strict";Object.defineProperty(x1,"__esModule",{value:!0});x1.OtherKeyAttribute=void 0;var lV=(N(),E(k)),B1=V(),dy=class{constructor(e={}){this.keyAttrId="",Object.assign(this,e)}};x1.OtherKeyAttribute=dy;lV.__decorate([(0,B1.AsnProp)({type:B1.AsnPropTypes.ObjectIdentifier})],dy.prototype,"keyAttrId",void 0);lV.__decorate([(0,B1.AsnProp)({type:B1.AsnPropTypes.Any,optional:!0})],dy.prototype,"keyAttr",void 0)});var VI=v(xt=>{"use strict";var OI;Object.defineProperty(xt,"__esModule",{value:!0});xt.KeyAgreeRecipientInfo=xt.OriginatorIdentifierOrKey=xt.OriginatorPublicKey=xt.RecipientEncryptedKeys=xt.RecipientEncryptedKey=xt.KeyAgreeRecipientIdentifier=xt.RecipientKeyIdentifier=void 0;var Ct=(N(),E(k)),Re=V(),TI=Fs(),hV=Jg(),my=Ie(),l8=xI(),Oc=class{constructor(e={}){this.subjectKeyIdentifier=new my.SubjectKeyIdentifier,Object.assign(this,e)}};xt.RecipientKeyIdentifier=Oc;Ct.__decorate([(0,Re.AsnProp)({type:my.SubjectKeyIdentifier})],Oc.prototype,"subjectKeyIdentifier",void 0);Ct.__decorate([(0,Re.AsnProp)({type:Re.AsnPropTypes.GeneralizedTime,optional:!0})],Oc.prototype,"date",void 0);Ct.__decorate([(0,Re.AsnProp)({type:l8.OtherKeyAttribute,optional:!0})],Oc.prototype,"other",void 0);var Tc=class{constructor(e={}){Object.assign(this,e)}};xt.KeyAgreeRecipientIdentifier=Tc;Ct.__decorate([(0,Re.AsnProp)({type:Oc,context:0,implicit:!0,optional:!0})],Tc.prototype,"rKeyId",void 0);Ct.__decorate([(0,Re.AsnProp)({type:hV.IssuerAndSerialNumber,optional:!0})],Tc.prototype,"issuerAndSerialNumber",void 0);xt.KeyAgreeRecipientIdentifier=Tc=Ct.__decorate([(0,Re.AsnType)({type:Re.AsnTypeTypes.Choice})],Tc);var wf=class{constructor(e={}){this.rid=new Tc,this.encryptedKey=new Re.OctetString,Object.assign(this,e)}};xt.RecipientEncryptedKey=wf;Ct.__decorate([(0,Re.AsnProp)({type:Tc})],wf.prototype,"rid",void 0);Ct.__decorate([(0,Re.AsnProp)({type:Re.OctetString})],wf.prototype,"encryptedKey",void 0);var py=OI=class extends Re.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,OI.prototype)}};xt.RecipientEncryptedKeys=py;xt.RecipientEncryptedKeys=py=OI=Ct.__decorate([(0,Re.AsnType)({type:Re.AsnTypeTypes.Sequence,itemType:wf})],py);var _f=class{constructor(e={}){this.algorithm=new my.AlgorithmIdentifier,this.publicKey=new ArrayBuffer(0),Object.assign(this,e)}};xt.OriginatorPublicKey=_f;Ct.__decorate([(0,Re.AsnProp)({type:my.AlgorithmIdentifier})],_f.prototype,"algorithm",void 0);Ct.__decorate([(0,Re.AsnProp)({type:Re.AsnPropTypes.BitString})],_f.prototype,"publicKey",void 0);var oa=class{constructor(e={}){Object.assign(this,e)}};xt.OriginatorIdentifierOrKey=oa;Ct.__decorate([(0,Re.AsnProp)({type:my.SubjectKeyIdentifier,context:0,implicit:!0,optional:!0})],oa.prototype,"subjectKeyIdentifier",void 0);Ct.__decorate([(0,Re.AsnProp)({type:_f,context:1,implicit:!0,optional:!0})],oa.prototype,"originatorKey",void 0);Ct.__decorate([(0,Re.AsnProp)({type:hV.IssuerAndSerialNumber,optional:!0})],oa.prototype,"issuerAndSerialNumber",void 0);xt.OriginatorIdentifierOrKey=oa=Ct.__decorate([(0,Re.AsnType)({type:Re.AsnTypeTypes.Choice})],oa);var ca=class{constructor(e={}){this.version=TI.CMSVersion.v3,this.originator=new oa,this.keyEncryptionAlgorithm=new TI.KeyEncryptionAlgorithmIdentifier,this.recipientEncryptedKeys=new py,Object.assign(this,e)}};xt.KeyAgreeRecipientInfo=ca;Ct.__decorate([(0,Re.AsnProp)({type:Re.AsnPropTypes.Integer})],ca.prototype,"version",void 0);Ct.__decorate([(0,Re.AsnProp)({type:oa,context:0})],ca.prototype,"originator",void 0);Ct.__decorate([(0,Re.AsnProp)({type:Re.OctetString,context:1,optional:!0})],ca.prototype,"ukm",void 0);Ct.__decorate([(0,Re.AsnProp)({type:TI.KeyEncryptionAlgorithmIdentifier})],ca.prototype,"keyEncryptionAlgorithm",void 0);Ct.__decorate([(0,Re.AsnProp)({type:py})],ca.prototype,"recipientEncryptedKeys",void 0)});var DI=v(Dc=>{"use strict";Object.defineProperty(Dc,"__esModule",{value:!0});Dc.KeyTransRecipientInfo=Dc.RecipientIdentifier=void 0;var qc=(N(),E(k)),ds=V(),RI=Fs(),h8=Jg(),f8=Ie(),Vc=class{constructor(e={}){Object.assign(this,e)}};Dc.RecipientIdentifier=Vc;qc.__decorate([(0,ds.AsnProp)({type:f8.SubjectKeyIdentifier,context:0,implicit:!0})],Vc.prototype,"subjectKeyIdentifier",void 0);qc.__decorate([(0,ds.AsnProp)({type:h8.IssuerAndSerialNumber})],Vc.prototype,"issuerAndSerialNumber",void 0);Dc.RecipientIdentifier=Vc=qc.__decorate([(0,ds.AsnType)({type:ds.AsnTypeTypes.Choice})],Vc);var Rc=class{constructor(e={}){this.version=RI.CMSVersion.v0,this.rid=new Vc,this.keyEncryptionAlgorithm=new RI.KeyEncryptionAlgorithmIdentifier,this.encryptedKey=new ds.OctetString,Object.assign(this,e)}};Dc.KeyTransRecipientInfo=Rc;qc.__decorate([(0,ds.AsnProp)({type:ds.AsnPropTypes.Integer})],Rc.prototype,"version",void 0);qc.__decorate([(0,ds.AsnProp)({type:Vc})],Rc.prototype,"rid",void 0);qc.__decorate([(0,ds.AsnProp)({type:RI.KeyEncryptionAlgorithmIdentifier})],Rc.prototype,"keyEncryptionAlgorithm",void 0);qc.__decorate([(0,ds.AsnProp)({type:ds.OctetString})],Rc.prototype,"encryptedKey",void 0)});var jI=v(bf=>{"use strict";Object.defineProperty(bf,"__esModule",{value:!0});bf.KEKRecipientInfo=bf.KEKIdentifier=void 0;var Mc=(N(),E(k)),Nr=V(),d8=xI(),qI=Fs(),ua=class{constructor(e={}){this.keyIdentifier=new Nr.OctetString,Object.assign(this,e)}};bf.KEKIdentifier=ua;Mc.__decorate([(0,Nr.AsnProp)({type:Nr.OctetString})],ua.prototype,"keyIdentifier",void 0);Mc.__decorate([(0,Nr.AsnProp)({type:Nr.AsnPropTypes.GeneralizedTime,optional:!0})],ua.prototype,"date",void 0);Mc.__decorate([(0,Nr.AsnProp)({type:d8.OtherKeyAttribute,optional:!0})],ua.prototype,"other",void 0);var jc=class{constructor(e={}){this.version=qI.CMSVersion.v4,this.kekid=new ua,this.keyEncryptionAlgorithm=new qI.KeyEncryptionAlgorithmIdentifier,this.encryptedKey=new Nr.OctetString,Object.assign(this,e)}};bf.KEKRecipientInfo=jc;Mc.__decorate([(0,Nr.AsnProp)({type:Nr.AsnPropTypes.Integer})],jc.prototype,"version",void 0);Mc.__decorate([(0,Nr.AsnProp)({type:ua})],jc.prototype,"kekid",void 0);Mc.__decorate([(0,Nr.AsnProp)({type:qI.KeyEncryptionAlgorithmIdentifier})],jc.prototype,"keyEncryptionAlgorithm",void 0);Mc.__decorate([(0,Nr.AsnProp)({type:Nr.OctetString})],jc.prototype,"encryptedKey",void 0)});var MI=v(V1=>{"use strict";Object.defineProperty(V1,"__esModule",{value:!0});V1.PasswordRecipientInfo=void 0;var T1=(N(),E(k)),Lc=V(),O1=Fs(),Uc=class{constructor(e={}){this.version=O1.CMSVersion.v0,this.keyEncryptionAlgorithm=new O1.KeyEncryptionAlgorithmIdentifier,this.encryptedKey=new Lc.OctetString,Object.assign(this,e)}};V1.PasswordRecipientInfo=Uc;T1.__decorate([(0,Lc.AsnProp)({type:Lc.AsnPropTypes.Integer})],Uc.prototype,"version",void 0);T1.__decorate([(0,Lc.AsnProp)({type:O1.KeyDerivationAlgorithmIdentifier,context:0,optional:!0})],Uc.prototype,"keyDerivationAlgorithm",void 0);T1.__decorate([(0,Lc.AsnProp)({type:O1.KeyEncryptionAlgorithmIdentifier})],Uc.prototype,"keyEncryptionAlgorithm",void 0);T1.__decorate([(0,Lc.AsnProp)({type:Lc.OctetString})],Uc.prototype,"encryptedKey",void 0)});var LI=v(Hc=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});Hc.RecipientInfo=Hc.OtherRecipientInfo=void 0;var ha=(N(),E(k)),ps=V(),p8=VI(),m8=DI(),g8=jI(),y8=MI(),Cf=class{constructor(e={}){this.oriType="",this.oriValue=new ArrayBuffer(0),Object.assign(this,e)}};Hc.OtherRecipientInfo=Cf;ha.__decorate([(0,ps.AsnProp)({type:ps.AsnPropTypes.ObjectIdentifier})],Cf.prototype,"oriType",void 0);ha.__decorate([(0,ps.AsnProp)({type:ps.AsnPropTypes.Any})],Cf.prototype,"oriValue",void 0);var la=class{constructor(e={}){Object.assign(this,e)}};Hc.RecipientInfo=la;ha.__decorate([(0,ps.AsnProp)({type:m8.KeyTransRecipientInfo,optional:!0})],la.prototype,"ktri",void 0);ha.__decorate([(0,ps.AsnProp)({type:p8.KeyAgreeRecipientInfo,context:1,implicit:!0,optional:!0})],la.prototype,"kari",void 0);ha.__decorate([(0,ps.AsnProp)({type:g8.KEKRecipientInfo,context:2,implicit:!0,optional:!0})],la.prototype,"kekri",void 0);ha.__decorate([(0,ps.AsnProp)({type:y8.PasswordRecipientInfo,context:3,implicit:!0,optional:!0})],la.prototype,"pwri",void 0);ha.__decorate([(0,ps.AsnProp)({type:Cf,context:4,implicit:!0,optional:!0})],la.prototype,"ori",void 0);Hc.RecipientInfo=la=ha.__decorate([(0,ps.AsnType)({type:ps.AsnTypeTypes.Choice})],la)});var $I=v(gy=>{"use strict";var UI;Object.defineProperty(gy,"__esModule",{value:!0});gy.RecipientInfos=void 0;var v8=(N(),E(k)),HI=V(),S8=LI(),KI=UI=class extends HI.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,UI.prototype)}};gy.RecipientInfos=KI;gy.RecipientInfos=KI=UI=v8.__decorate([(0,HI.AsnType)({type:HI.AsnTypeTypes.Set,itemType:S8.RecipientInfo})],KI)});var R1=v(qt=>{"use strict";var FI;Object.defineProperty(qt,"__esModule",{value:!0});qt.RevocationInfoChoices=qt.RevocationInfoChoice=qt.OtherRevocationInfoFormat=qt.id_ri_scvp=qt.id_ri_ocsp_response=qt.id_ri=void 0;var vy=(N(),E(k)),Ws=V(),A8=Ie();qt.id_ri=`${A8.id_pkix}.16`;qt.id_ri_ocsp_response=`${qt.id_ri}.2`;qt.id_ri_scvp=`${qt.id_ri}.4`;var Kc=class{constructor(e={}){this.otherRevInfoFormat="",this.otherRevInfo=new ArrayBuffer(0),Object.assign(this,e)}};qt.OtherRevocationInfoFormat=Kc;vy.__decorate([(0,Ws.AsnProp)({type:Ws.AsnPropTypes.ObjectIdentifier})],Kc.prototype,"otherRevInfoFormat",void 0);vy.__decorate([(0,Ws.AsnProp)({type:Ws.AsnPropTypes.Any})],Kc.prototype,"otherRevInfo",void 0);var yy=class{constructor(e={}){this.other=new Kc,Object.assign(this,e)}};qt.RevocationInfoChoice=yy;vy.__decorate([(0,Ws.AsnProp)({type:Kc,context:1,implicit:!0})],yy.prototype,"other",void 0);qt.RevocationInfoChoice=yy=vy.__decorate([(0,Ws.AsnType)({type:Ws.AsnTypeTypes.Choice})],yy);var JI=FI=class extends Ws.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,FI.prototype)}};qt.RevocationInfoChoices=JI;qt.RevocationInfoChoices=JI=FI=vy.__decorate([(0,Ws.AsnType)({type:Ws.AsnTypeTypes.Set,itemType:yy})],JI)});var GI=v(D1=>{"use strict";Object.defineProperty(D1,"__esModule",{value:!0});D1.OriginatorInfo=void 0;var fV=(N(),E(k)),dV=V(),w8=E1(),_8=R1(),Sy=class{constructor(e={}){Object.assign(this,e)}};D1.OriginatorInfo=Sy;fV.__decorate([(0,dV.AsnProp)({type:w8.CertificateSet,context:0,implicit:!0,optional:!0})],Sy.prototype,"certs",void 0);fV.__decorate([(0,dV.AsnProp)({type:_8.RevocationInfoChoices,context:1,implicit:!0,optional:!0})],Sy.prototype,"crls",void 0)});var gV=v($c=>{"use strict";var WI;Object.defineProperty($c,"__esModule",{value:!0});$c.EnvelopedData=$c.UnprotectedAttributes=void 0;var Pf=(N(),E(k)),Mi=V(),b8=Fs(),C8=r1(),pV=$I(),P8=GI(),mV=BI(),q1=WI=class extends Mi.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,WI.prototype)}};$c.UnprotectedAttributes=q1;$c.UnprotectedAttributes=q1=WI=Pf.__decorate([(0,Mi.AsnType)({type:Mi.AsnTypeTypes.Set,itemType:C8.Attribute})],q1);var fa=class{constructor(e={}){this.version=b8.CMSVersion.v0,this.recipientInfos=new pV.RecipientInfos,this.encryptedContentInfo=new mV.EncryptedContentInfo,Object.assign(this,e)}};$c.EnvelopedData=fa;Pf.__decorate([(0,Mi.AsnProp)({type:Mi.AsnPropTypes.Integer})],fa.prototype,"version",void 0);Pf.__decorate([(0,Mi.AsnProp)({type:P8.OriginatorInfo,context:0,implicit:!0,optional:!0})],fa.prototype,"originatorInfo",void 0);Pf.__decorate([(0,Mi.AsnProp)({type:pV.RecipientInfos})],fa.prototype,"recipientInfos",void 0);Pf.__decorate([(0,Mi.AsnProp)({type:mV.EncryptedContentInfo})],fa.prototype,"encryptedContentInfo",void 0);Pf.__decorate([(0,Mi.AsnProp)({type:q1,context:1,implicit:!0,optional:!0})],fa.prototype,"unprotectedAttrs",void 0)});var yV=v(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.id_authData=Yt.id_encryptedData=Yt.id_digestedData=Yt.id_envelopedData=Yt.id_signedData=Yt.id_data=Yt.id_ct_contentInfo=void 0;Yt.id_ct_contentInfo="1.2.840.113549.1.9.16.1.6";Yt.id_data="1.2.840.113549.1.7.1";Yt.id_signedData="1.2.840.113549.1.7.2";Yt.id_envelopedData="1.2.840.113549.1.7.3";Yt.id_digestedData="1.2.840.113549.1.7.5";Yt.id_encryptedData="1.2.840.113549.1.7.6";Yt.id_authData="1.2.840.113549.1.9.16.1.2"});var wV=v(Fc=>{"use strict";var zI;Object.defineProperty(Fc,"__esModule",{value:!0});Fc.SignedData=Fc.DigestAlgorithmIdentifiers=void 0;var Jc=(N(),E(k)),zs=V(),I8=E1(),vV=Fs(),SV=NI(),E8=R1(),AV=s1(),Ay=zI=class extends zs.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,zI.prototype)}};Fc.DigestAlgorithmIdentifiers=Ay;Fc.DigestAlgorithmIdentifiers=Ay=zI=Jc.__decorate([(0,zs.AsnType)({type:zs.AsnTypeTypes.Set,itemType:vV.DigestAlgorithmIdentifier})],Ay);var Li=class{constructor(e={}){this.version=vV.CMSVersion.v0,this.digestAlgorithms=new Ay,this.encapContentInfo=new SV.EncapsulatedContentInfo,this.signerInfos=new AV.SignerInfos,Object.assign(this,e)}};Fc.SignedData=Li;Jc.__decorate([(0,zs.AsnProp)({type:zs.AsnPropTypes.Integer})],Li.prototype,"version",void 0);Jc.__decorate([(0,zs.AsnProp)({type:Ay})],Li.prototype,"digestAlgorithms",void 0);Jc.__decorate([(0,zs.AsnProp)({type:SV.EncapsulatedContentInfo})],Li.prototype,"encapContentInfo",void 0);Jc.__decorate([(0,zs.AsnProp)({type:I8.CertificateSet,context:0,implicit:!0,optional:!0})],Li.prototype,"certificates",void 0);Jc.__decorate([(0,zs.AsnProp)({type:E8.RevocationInfoChoices,context:1,implicit:!0,optional:!0})],Li.prototype,"crls",void 0);Jc.__decorate([(0,zs.AsnProp)({type:AV.SignerInfos})],Li.prototype,"signerInfos",void 0)});var wy=v(at=>{"use strict";Object.defineProperty(at,"__esModule",{value:!0});var gt=(N(),E(k));gt.__exportStar(DT(),at);gt.__exportStar(r1(),at);gt.__exportStar(E1(),at);gt.__exportStar(cV(),at);gt.__exportStar(NI(),at);gt.__exportStar(BI(),at);gt.__exportStar(gV(),at);gt.__exportStar(Jg(),at);gt.__exportStar(jI(),at);gt.__exportStar(VI(),at);gt.__exportStar(DI(),at);gt.__exportStar(yV(),at);gt.__exportStar(GI(),at);gt.__exportStar(MI(),at);gt.__exportStar(LI(),at);gt.__exportStar($I(),at);gt.__exportStar(R1(),at);gt.__exportStar(wV(),at);gt.__exportStar(DP(),at);gt.__exportStar(s1(),at);gt.__exportStar(Fs(),at)});var YI=v(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.id_sect571r1=le.id_sect571k1=le.id_secp521r1=le.id_sect409r1=le.id_sect409k1=le.id_secp384r1=le.id_sect283r1=le.id_sect283k1=le.id_secp256r1=le.id_sect233r1=le.id_sect233k1=le.id_secp224r1=le.id_sect163r2=le.id_sect163k1=le.id_secp192r1=le.id_ecdsaWithSHA512=le.id_ecdsaWithSHA384=le.id_ecdsaWithSHA256=le.id_ecdsaWithSHA224=le.id_ecdsaWithSHA1=le.id_ecMQV=le.id_ecDH=le.id_ecPublicKey=void 0;le.id_ecPublicKey="1.2.840.10045.2.1";le.id_ecDH="1.3.132.1.12";le.id_ecMQV="1.3.132.1.13";le.id_ecdsaWithSHA1="1.2.840.10045.4.1";le.id_ecdsaWithSHA224="1.2.840.10045.4.3.1";le.id_ecdsaWithSHA256="1.2.840.10045.4.3.2";le.id_ecdsaWithSHA384="1.2.840.10045.4.3.3";le.id_ecdsaWithSHA512="1.2.840.10045.4.3.4";le.id_secp192r1="1.2.840.10045.3.1.1";le.id_sect163k1="1.3.132.0.1";le.id_sect163r2="1.3.132.0.15";le.id_secp224r1="1.3.132.0.33";le.id_sect233k1="1.3.132.0.26";le.id_sect233r1="1.3.132.0.27";le.id_secp256r1="1.2.840.10045.3.1.7";le.id_sect283k1="1.3.132.0.16";le.id_sect283r1="1.3.132.0.17";le.id_secp384r1="1.3.132.0.34";le.id_sect409k1="1.3.132.0.36";le.id_sect409r1="1.3.132.0.37";le.id_secp521r1="1.3.132.0.35";le.id_sect571k1="1.3.132.0.38";le.id_sect571r1="1.3.132.0.39"});var _V=v(Kr=>{"use strict";Object.defineProperty(Kr,"__esModule",{value:!0});Kr.ecdsaWithSHA512=Kr.ecdsaWithSHA384=Kr.ecdsaWithSHA256=Kr.ecdsaWithSHA224=Kr.ecdsaWithSHA1=void 0;var k8=Ie(),_y=YI();function by(r){return new k8.AlgorithmIdentifier({algorithm:r})}Kr.ecdsaWithSHA1=by(_y.id_ecdsaWithSHA1);Kr.ecdsaWithSHA224=by(_y.id_ecdsaWithSHA224);Kr.ecdsaWithSHA256=by(_y.id_ecdsaWithSHA256);Kr.ecdsaWithSHA384=by(_y.id_ecdsaWithSHA384);Kr.ecdsaWithSHA512=by(_y.id_ecdsaWithSHA512)});var ZI=v(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.SpecifiedECDomain=Jt.ECPVer=Jt.Curve=Jt.FieldElement=Jt.ECPoint=Jt.FieldID=void 0;var dr=(N(),E(k)),He=V(),If=class{constructor(e={}){Object.assign(this,e)}};Jt.FieldID=If;dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.ObjectIdentifier})],If.prototype,"fieldType",void 0);dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.Any})],If.prototype,"parameters",void 0);Jt.FieldID=If=dr.__decorate([(0,He.AsnType)({type:He.AsnTypeTypes.Sequence})],If);var j1=class extends He.OctetString{};Jt.ECPoint=j1;var XI=class extends He.OctetString{};Jt.FieldElement=XI;var Gc=class{constructor(e={}){Object.assign(this,e)}};Jt.Curve=Gc;dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.OctetString})],Gc.prototype,"a",void 0);dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.OctetString})],Gc.prototype,"b",void 0);dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.BitString,optional:!0})],Gc.prototype,"seed",void 0);Jt.Curve=Gc=dr.__decorate([(0,He.AsnType)({type:He.AsnTypeTypes.Sequence})],Gc);var QI;(function(r){r[r.ecpVer1=1]="ecpVer1"})(QI||(Jt.ECPVer=QI={}));var Ui=class{constructor(e={}){this.version=QI.ecpVer1,Object.assign(this,e)}};Jt.SpecifiedECDomain=Ui;dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.Integer})],Ui.prototype,"version",void 0);dr.__decorate([(0,He.AsnProp)({type:If})],Ui.prototype,"fieldID",void 0);dr.__decorate([(0,He.AsnProp)({type:Gc})],Ui.prototype,"curve",void 0);dr.__decorate([(0,He.AsnProp)({type:j1})],Ui.prototype,"base",void 0);dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.Integer,converter:He.AsnIntegerArrayBufferConverter})],Ui.prototype,"order",void 0);dr.__decorate([(0,He.AsnProp)({type:He.AsnPropTypes.Integer,optional:!0})],Ui.prototype,"cofactor",void 0);Jt.SpecifiedECDomain=Ui=dr.__decorate([(0,He.AsnType)({type:He.AsnTypeTypes.Sequence})],Ui)});var eE=v(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});Cy.ECParameters=void 0;var M1=(N(),E(k)),Wc=V(),N8=ZI(),Ef=class{constructor(e={}){Object.assign(this,e)}};Cy.ECParameters=Ef;M1.__decorate([(0,Wc.AsnProp)({type:Wc.AsnPropTypes.ObjectIdentifier})],Ef.prototype,"namedCurve",void 0);M1.__decorate([(0,Wc.AsnProp)({type:Wc.AsnPropTypes.Null})],Ef.prototype,"implicitCurve",void 0);M1.__decorate([(0,Wc.AsnProp)({type:N8.SpecifiedECDomain})],Ef.prototype,"specifiedCurve",void 0);Cy.ECParameters=Ef=M1.__decorate([(0,Wc.AsnType)({type:Wc.AsnTypeTypes.Choice})],Ef)});var bV=v(U1=>{"use strict";Object.defineProperty(U1,"__esModule",{value:!0});U1.ECPrivateKey=void 0;var L1=(N(),E(k)),da=V(),B8=eE(),zc=class{constructor(e={}){this.version=1,this.privateKey=new da.OctetString,Object.assign(this,e)}};U1.ECPrivateKey=zc;L1.__decorate([(0,da.AsnProp)({type:da.AsnPropTypes.Integer})],zc.prototype,"version",void 0);L1.__decorate([(0,da.AsnProp)({type:da.OctetString})],zc.prototype,"privateKey",void 0);L1.__decorate([(0,da.AsnProp)({type:B8.ECParameters,context:0,optional:!0})],zc.prototype,"parameters",void 0);L1.__decorate([(0,da.AsnProp)({type:da.AsnPropTypes.BitString,context:1,optional:!0})],zc.prototype,"publicKey",void 0)});var PV=v(H1=>{"use strict";Object.defineProperty(H1,"__esModule",{value:!0});H1.ECDSASigValue=void 0;var CV=(N(),E(k)),kf=V(),Py=class{constructor(e={}){this.r=new ArrayBuffer(0),this.s=new ArrayBuffer(0),Object.assign(this,e)}};H1.ECDSASigValue=Py;CV.__decorate([(0,kf.AsnProp)({type:kf.AsnPropTypes.Integer,converter:kf.AsnIntegerArrayBufferConverter})],Py.prototype,"r",void 0);CV.__decorate([(0,kf.AsnProp)({type:kf.AsnPropTypes.Integer,converter:kf.AsnIntegerArrayBufferConverter})],Py.prototype,"s",void 0)});var IV=v(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});var Nf=(N(),E(k));Nf.__exportStar(_V(),pa);Nf.__exportStar(eE(),pa);Nf.__exportStar(bV(),pa);Nf.__exportStar(PV(),pa);Nf.__exportStar(YI(),pa);Nf.__exportStar(ZI(),pa)});var Iy=v(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.id_mgf1=W.id_md5=W.id_md2=W.id_sha512_256=W.id_sha512_224=W.id_sha512=W.id_sha384=W.id_sha256=W.id_sha224=W.id_sha1=W.id_sha512_256WithRSAEncryption=W.id_sha512_224WithRSAEncryption=W.id_sha512WithRSAEncryption=W.id_sha384WithRSAEncryption=W.id_sha256WithRSAEncryption=W.id_ssha224WithRSAEncryption=W.id_sha224WithRSAEncryption=W.id_sha1WithRSAEncryption=W.id_md5WithRSAEncryption=W.id_md2WithRSAEncryption=W.id_RSASSA_PSS=W.id_pSpecified=W.id_RSAES_OAEP=W.id_rsaEncryption=W.id_pkcs_1=void 0;W.id_pkcs_1="1.2.840.113549.1.1";W.id_rsaEncryption=`${W.id_pkcs_1}.1`;W.id_RSAES_OAEP=`${W.id_pkcs_1}.7`;W.id_pSpecified=`${W.id_pkcs_1}.9`;W.id_RSASSA_PSS=`${W.id_pkcs_1}.10`;W.id_md2WithRSAEncryption=`${W.id_pkcs_1}.2`;W.id_md5WithRSAEncryption=`${W.id_pkcs_1}.4`;W.id_sha1WithRSAEncryption=`${W.id_pkcs_1}.5`;W.id_sha224WithRSAEncryption=`${W.id_pkcs_1}.14`;W.id_ssha224WithRSAEncryption=W.id_sha224WithRSAEncryption;W.id_sha256WithRSAEncryption=`${W.id_pkcs_1}.11`;W.id_sha384WithRSAEncryption=`${W.id_pkcs_1}.12`;W.id_sha512WithRSAEncryption=`${W.id_pkcs_1}.13`;W.id_sha512_224WithRSAEncryption=`${W.id_pkcs_1}.15`;W.id_sha512_256WithRSAEncryption=`${W.id_pkcs_1}.16`;W.id_sha1="1.3.14.3.2.26";W.id_sha224="2.16.840.1.101.3.4.2.4";W.id_sha256="2.16.840.1.101.3.4.2.1";W.id_sha384="2.16.840.1.101.3.4.2.2";W.id_sha512="2.16.840.1.101.3.4.2.3";W.id_sha512_224="2.16.840.1.101.3.4.2.5";W.id_sha512_256="2.16.840.1.101.3.4.2.6";W.id_md2="1.2.840.113549.2.2";W.id_md5="1.2.840.113549.2.5";W.id_mgf1=`${W.id_pkcs_1}.8`});var K1=v(de=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.sha512_256WithRSAEncryption=de.sha512_224WithRSAEncryption=de.sha512WithRSAEncryption=de.sha384WithRSAEncryption=de.sha256WithRSAEncryption=de.sha224WithRSAEncryption=de.sha1WithRSAEncryption=de.md5WithRSAEncryption=de.md2WithRSAEncryption=de.rsaEncryption=de.pSpecifiedEmpty=de.mgf1SHA1=de.sha512_256=de.sha512_224=de.sha512=de.sha384=de.sha256=de.sha224=de.sha1=de.md4=de.md2=void 0;var tE=V(),rE=Ie(),yt=Iy();function Ot(r){return new rE.AlgorithmIdentifier({algorithm:r,parameters:null})}de.md2=Ot(yt.id_md2);de.md4=Ot(yt.id_md5);de.sha1=Ot(yt.id_sha1);de.sha224=Ot(yt.id_sha224);de.sha256=Ot(yt.id_sha256);de.sha384=Ot(yt.id_sha384);de.sha512=Ot(yt.id_sha512);de.sha512_224=Ot(yt.id_sha512_224);de.sha512_256=Ot(yt.id_sha512_256);de.mgf1SHA1=new rE.AlgorithmIdentifier({algorithm:yt.id_mgf1,parameters:tE.AsnConvert.serialize(de.sha1)});de.pSpecifiedEmpty=new rE.AlgorithmIdentifier({algorithm:yt.id_pSpecified,parameters:tE.AsnConvert.serialize(tE.AsnOctetStringConverter.toASN(new Uint8Array([218,57,163,238,94,107,75,13,50,85,191,239,149,96,24,144,175,216,7,9]).buffer))});de.rsaEncryption=Ot(yt.id_rsaEncryption);de.md2WithRSAEncryption=Ot(yt.id_md2WithRSAEncryption);de.md5WithRSAEncryption=Ot(yt.id_md5WithRSAEncryption);de.sha1WithRSAEncryption=Ot(yt.id_sha1WithRSAEncryption);de.sha224WithRSAEncryption=Ot(yt.id_sha512_224WithRSAEncryption);de.sha256WithRSAEncryption=Ot(yt.id_sha512_256WithRSAEncryption);de.sha384WithRSAEncryption=Ot(yt.id_sha384WithRSAEncryption);de.sha512WithRSAEncryption=Ot(yt.id_sha512WithRSAEncryption);de.sha512_224WithRSAEncryption=Ot(yt.id_sha512_224WithRSAEncryption);de.sha512_256WithRSAEncryption=Ot(yt.id_sha512_256WithRSAEncryption)});var kV=v(xf=>{"use strict";Object.defineProperty(xf,"__esModule",{value:!0});xf.RSAES_OAEP=xf.RsaEsOaepParams=void 0;var sE=(N(),E(k)),Ey=V(),Yc=Ie(),EV=Iy(),Bf=K1(),Xc=class{constructor(e={}){this.hashAlgorithm=new Yc.AlgorithmIdentifier(Bf.sha1),this.maskGenAlgorithm=new Yc.AlgorithmIdentifier({algorithm:EV.id_mgf1,parameters:Ey.AsnConvert.serialize(Bf.sha1)}),this.pSourceAlgorithm=new Yc.AlgorithmIdentifier(Bf.pSpecifiedEmpty),Object.assign(this,e)}};xf.RsaEsOaepParams=Xc;sE.__decorate([(0,Ey.AsnProp)({type:Yc.AlgorithmIdentifier,context:0,defaultValue:Bf.sha1})],Xc.prototype,"hashAlgorithm",void 0);sE.__decorate([(0,Ey.AsnProp)({type:Yc.AlgorithmIdentifier,context:1,defaultValue:Bf.mgf1SHA1})],Xc.prototype,"maskGenAlgorithm",void 0);sE.__decorate([(0,Ey.AsnProp)({type:Yc.AlgorithmIdentifier,context:2,defaultValue:Bf.pSpecifiedEmpty})],Xc.prototype,"pSourceAlgorithm",void 0);xf.RSAES_OAEP=new Yc.AlgorithmIdentifier({algorithm:EV.id_RSAES_OAEP,parameters:Ey.AsnConvert.serialize(new Xc)})});var BV=v(Of=>{"use strict";Object.defineProperty(Of,"__esModule",{value:!0});Of.RSASSA_PSS=Of.RsaSaPssParams=void 0;var F1=(N(),E(k)),ma=V(),ky=Ie(),NV=Iy(),$1=K1(),ga=class{constructor(e={}){this.hashAlgorithm=new ky.AlgorithmIdentifier($1.sha1),this.maskGenAlgorithm=new ky.AlgorithmIdentifier({algorithm:NV.id_mgf1,parameters:ma.AsnConvert.serialize($1.sha1)}),this.saltLength=20,this.trailerField=1,Object.assign(this,e)}};Of.RsaSaPssParams=ga;F1.__decorate([(0,ma.AsnProp)({type:ky.AlgorithmIdentifier,context:0,defaultValue:$1.sha1})],ga.prototype,"hashAlgorithm",void 0);F1.__decorate([(0,ma.AsnProp)({type:ky.AlgorithmIdentifier,context:1,defaultValue:$1.mgf1SHA1})],ga.prototype,"maskGenAlgorithm",void 0);F1.__decorate([(0,ma.AsnProp)({type:ma.AsnPropTypes.Integer,context:2,defaultValue:20})],ga.prototype,"saltLength",void 0);F1.__decorate([(0,ma.AsnProp)({type:ma.AsnPropTypes.Integer,context:3,defaultValue:1})],ga.prototype,"trailerField",void 0);Of.RSASSA_PSS=new ky.AlgorithmIdentifier({algorithm:NV.id_RSASSA_PSS,parameters:ma.AsnConvert.serialize(new ga)})});var TV=v(G1=>{"use strict";Object.defineProperty(G1,"__esModule",{value:!0});G1.DigestInfo=void 0;var xV=(N(),E(k)),OV=Ie(),J1=V(),Ny=class{constructor(e={}){this.digestAlgorithm=new OV.AlgorithmIdentifier,this.digest=new J1.OctetString,Object.assign(this,e)}};G1.DigestInfo=Ny;xV.__decorate([(0,J1.AsnProp)({type:OV.AlgorithmIdentifier})],Ny.prototype,"digestAlgorithm",void 0);xV.__decorate([(0,J1.AsnProp)({type:J1.OctetString})],Ny.prototype,"digest",void 0)});var VV=v(By=>{"use strict";Object.defineProperty(By,"__esModule",{value:!0});var iE=(N(),E(k));iE.__exportStar(kV(),By);iE.__exportStar(BV(),By);iE.__exportStar(TV(),By)});var oE=v(Zc=>{"use strict";var nE;Object.defineProperty(Zc,"__esModule",{value:!0});Zc.OtherPrimeInfos=Zc.OtherPrimeInfo=void 0;var W1=(N(),E(k)),$r=V(),Qc=class{constructor(e={}){this.prime=new ArrayBuffer(0),this.exponent=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,e)}};Zc.OtherPrimeInfo=Qc;W1.__decorate([(0,$r.AsnProp)({type:$r.AsnPropTypes.Integer,converter:$r.AsnIntegerArrayBufferConverter})],Qc.prototype,"prime",void 0);W1.__decorate([(0,$r.AsnProp)({type:$r.AsnPropTypes.Integer,converter:$r.AsnIntegerArrayBufferConverter})],Qc.prototype,"exponent",void 0);W1.__decorate([(0,$r.AsnProp)({type:$r.AsnPropTypes.Integer,converter:$r.AsnIntegerArrayBufferConverter})],Qc.prototype,"coefficient",void 0);var aE=nE=class extends $r.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,nE.prototype)}};Zc.OtherPrimeInfos=aE;Zc.OtherPrimeInfos=aE=nE=W1.__decorate([(0,$r.AsnType)({type:$r.AsnTypeTypes.Sequence,itemType:Qc})],aE)});var RV=v(z1=>{"use strict";Object.defineProperty(z1,"__esModule",{value:!0});z1.RSAPrivateKey=void 0;var Ys=(N(),E(k)),$e=V(),x8=oE(),Br=class{constructor(e={}){this.version=0,this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),this.privateExponent=new ArrayBuffer(0),this.prime1=new ArrayBuffer(0),this.prime2=new ArrayBuffer(0),this.exponent1=new ArrayBuffer(0),this.exponent2=new ArrayBuffer(0),this.coefficient=new ArrayBuffer(0),Object.assign(this,e)}};z1.RSAPrivateKey=Br;Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer})],Br.prototype,"version",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"modulus",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"publicExponent",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"privateExponent",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"prime1",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"prime2",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"exponent1",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"exponent2",void 0);Ys.__decorate([(0,$e.AsnProp)({type:$e.AsnPropTypes.Integer,converter:$e.AsnIntegerArrayBufferConverter})],Br.prototype,"coefficient",void 0);Ys.__decorate([(0,$e.AsnProp)({type:x8.OtherPrimeInfos,optional:!0})],Br.prototype,"otherPrimeInfos",void 0)});var qV=v(Y1=>{"use strict";Object.defineProperty(Y1,"__esModule",{value:!0});Y1.RSAPublicKey=void 0;var DV=(N(),E(k)),Tf=V(),xy=class{constructor(e={}){this.modulus=new ArrayBuffer(0),this.publicExponent=new ArrayBuffer(0),Object.assign(this,e)}};Y1.RSAPublicKey=xy;DV.__decorate([(0,Tf.AsnProp)({type:Tf.AsnPropTypes.Integer,converter:Tf.AsnIntegerArrayBufferConverter})],xy.prototype,"modulus",void 0);DV.__decorate([(0,Tf.AsnProp)({type:Tf.AsnPropTypes.Integer,converter:Tf.AsnIntegerArrayBufferConverter})],xy.prototype,"publicExponent",void 0)});var cE=v(ya=>{"use strict";Object.defineProperty(ya,"__esModule",{value:!0});var Vf=(N(),E(k));Vf.__exportStar(VV(),ya);Vf.__exportStar(K1(),ya);Vf.__exportStar(Iy(),ya);Vf.__exportStar(oE(),ya);Vf.__exportStar(RV(),ya);Vf.__exportStar(qV(),ya)});var X1={};o_(X1,{__assign:()=>lE,__asyncDelegator:()=>$8,__asyncGenerator:()=>K8,__asyncValues:()=>F8,__await:()=>Oy,__awaiter:()=>q8,__classPrivateFieldGet:()=>z8,__classPrivateFieldSet:()=>Y8,__createBinding:()=>M8,__decorate:()=>V8,__exportStar:()=>L8,__extends:()=>O8,__generator:()=>j8,__importDefault:()=>W8,__importStar:()=>G8,__makeTemplateObject:()=>J8,__metadata:()=>D8,__param:()=>R8,__read:()=>jV,__rest:()=>T8,__spread:()=>U8,__spreadArrays:()=>H8,__values:()=>hE});function O8(r,e){uE(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function T8(r,e){var t={};for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&e.indexOf(s)<0&&(t[s]=r[s]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,s=Object.getOwnPropertySymbols(r);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(r,s[i])&&(t[s[i]]=r[s[i]]);return t}function V8(r,e,t,s){var i=arguments.length,n=i<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,t):s,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(r,e,t,s);else for(var c=r.length-1;c>=0;c--)(o=r[c])&&(n=(i<3?o(n):i>3?o(e,t,n):o(e,t))||n);return i>3&&n&&Object.defineProperty(e,t,n),n}function R8(r,e){return function(t,s){e(t,s,r)}}function D8(r,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,e)}function q8(r,e,t,s){function i(n){return n instanceof t?n:new t(function(o){o(n)})}return new(t||(t=Promise))(function(n,o){function c(d){try{h(s.next(d))}catch(m){o(m)}}function l(d){try{h(s.throw(d))}catch(m){o(m)}}function h(d){d.done?n(d.value):i(d.value).then(c,l)}h((s=s.apply(r,e||[])).next())})}function j8(r,e){var t={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},s,i,n,o;return o={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(h){return function(d){return l([h,d])}}function l(h){if(s)throw new TypeError("Generator is already executing.");for(;t;)try{if(s=1,i&&(n=h[0]&2?i.return:h[0]?i.throw||((n=i.return)&&n.call(i),0):i.next)&&!(n=n.call(i,h[1])).done)return n;switch(i=0,n&&(h=[h[0]&2,n.value]),h[0]){case 0:case 1:n=h;break;case 4:return t.label++,{value:h[1],done:!1};case 5:t.label++,i=h[1],h=[0];continue;case 7:h=t.ops.pop(),t.trys.pop();continue;default:if(n=t.trys,!(n=n.length>0&&n[n.length-1])&&(h[0]===6||h[0]===2)){t=0;continue}if(h[0]===3&&(!n||h[1]>n[0]&&h[1]<n[3])){t.label=h[1];break}if(h[0]===6&&t.label<n[1]){t.label=n[1],n=h;break}if(n&&t.label<n[2]){t.label=n[2],t.ops.push(h);break}n[2]&&t.ops.pop(),t.trys.pop();continue}h=e.call(r,t)}catch(d){h=[6,d],i=0}finally{s=n=0}if(h[0]&5)throw h[1];return{value:h[0]?h[1]:void 0,done:!0}}}function M8(r,e,t,s){s===void 0&&(s=t),r[s]=e[t]}function L8(r,e){for(var t in r)t!=="default"&&!e.hasOwnProperty(t)&&(e[t]=r[t])}function hE(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],s=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&s>=r.length&&(r=void 0),{value:r&&r[s++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function jV(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var s=t.call(r),i,n=[],o;try{for(;(e===void 0||e-- >0)&&!(i=s.next()).done;)n.push(i.value)}catch(c){o={error:c}}finally{try{i&&!i.done&&(t=s.return)&&t.call(s)}finally{if(o)throw o.error}}return n}function U8(){for(var r=[],e=0;e<arguments.length;e++)r=r.concat(jV(arguments[e]));return r}function H8(){for(var r=0,e=0,t=arguments.length;e<t;e++)r+=arguments[e].length;for(var s=Array(r),i=0,e=0;e<t;e++)for(var n=arguments[e],o=0,c=n.length;o<c;o++,i++)s[i]=n[o];return s}function Oy(r){return this instanceof Oy?(this.v=r,this):new Oy(r)}function K8(r,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var s=t.apply(r,e||[]),i,n=[];return i={},o("next"),o("throw"),o("return"),i[Symbol.asyncIterator]=function(){return this},i;function o(p){s[p]&&(i[p]=function(A){return new Promise(function(w,C){n.push([p,A,w,C])>1||c(p,A)})})}function c(p,A){try{l(s[p](A))}catch(w){m(n[0][3],w)}}function l(p){p.value instanceof Oy?Promise.resolve(p.value.v).then(h,d):m(n[0][2],p)}function h(p){c("next",p)}function d(p){c("throw",p)}function m(p,A){p(A),n.shift(),n.length&&c(n[0][0],n[0][1])}}function $8(r){var e,t;return e={},s("next"),s("throw",function(i){throw i}),s("return"),e[Symbol.iterator]=function(){return this},e;function s(i,n){e[i]=r[i]?function(o){return(t=!t)?{value:Oy(r[i](o)),done:i==="return"}:n?n(o):o}:n}}function F8(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=r[Symbol.asyncIterator],t;return e?e.call(r):(r=typeof hE=="function"?hE(r):r[Symbol.iterator](),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(n){t[n]=r[n]&&function(o){return new Promise(function(c,l){o=r[n](o),i(c,l,o.done,o.value)})}}function i(n,o,c,l){Promise.resolve(l).then(function(h){n({value:h,done:c})},o)}}function J8(r,e){return Object.defineProperty?Object.defineProperty(r,"raw",{value:e}):r.raw=e,r}function G8(r){if(r&&r.__esModule)return r;var e={};if(r!=null)for(var t in r)Object.hasOwnProperty.call(r,t)&&(e[t]=r[t]);return e.default=r,e}function W8(r){return r&&r.__esModule?r:{default:r}}function z8(r,e){if(!e.has(r))throw new TypeError("attempted to get private field on non-instance");return e.get(r)}function Y8(r,e,t){if(!e.has(r))throw new TypeError("attempted to set private field on non-instance");return e.set(r,t),t}var uE,lE,Q1=eN(()=>{uE=function(r,e){return uE=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,s){t.__proto__=s}||function(t,s){for(var i in s)s.hasOwnProperty(i)&&(t[i]=s[i])},uE(r,e)};lE=function(){return lE=Object.assign||function(e){for(var t,s=1,i=arguments.length;s<i;s++){t=arguments[s];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},lE.apply(this,arguments)}});var pE=v(dE=>{"use strict";Object.defineProperty(dE,"__esModule",{value:!0});var fE;(function(r){r[r.Transient=0]="Transient",r[r.Singleton=1]="Singleton",r[r.ResolutionScoped=2]="ResolutionScoped",r[r.ContainerScoped=3]="ContainerScoped"})(fE||(fE={}));dE.default=fE});var MV=v(mE=>{"use strict";Object.defineProperty(mE,"__esModule",{value:!0});var X8=pE();Object.defineProperty(mE,"Lifecycle",{enumerable:!0,get:function(){return X8.default}})});var eu=v(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.defineInjectionTokenMetadata=ms.getParamInfo=ms.INJECTION_TOKEN_METADATA_KEY=void 0;ms.INJECTION_TOKEN_METADATA_KEY="injectionTokens";function Q8(r){let e=Reflect.getMetadata("design:paramtypes",r)||[],t=Reflect.getOwnMetadata(ms.INJECTION_TOKEN_METADATA_KEY,r)||{};return Object.keys(t).forEach(s=>{e[+s]=t[s]}),e}ms.getParamInfo=Q8;function Z8(r,e){return function(t,s,i){let n=Reflect.getOwnMetadata(ms.INJECTION_TOKEN_METADATA_KEY,t)||{};n[i]=e?{token:r,transform:e.transformToken,transformArgs:e.args||[]}:r,Reflect.defineMetadata(ms.INJECTION_TOKEN_METADATA_KEY,n,t)}}ms.defineInjectionTokenMetadata=Z8});var gE=v(Z1=>{"use strict";Object.defineProperty(Z1,"__esModule",{value:!0});Z1.isClassProvider=void 0;function eM(r){return!!r.useClass}Z1.isClassProvider=eM});var yE=v(ew=>{"use strict";Object.defineProperty(ew,"__esModule",{value:!0});ew.isFactoryProvider=void 0;function tM(r){return!!r.useFactory}ew.isFactoryProvider=tM});var rw=v(Rf=>{"use strict";Object.defineProperty(Rf,"__esModule",{value:!0});Rf.delay=Rf.DelayedConstructor=void 0;var tw=class{constructor(e){this.wrap=e,this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}createProxy(e){let t={},s=!1,i,n=()=>(s||(i=e(this.wrap()),s=!0),i);return new Proxy(t,this.createHandler(n))}createHandler(e){let t={},s=i=>{t[i]=(...n)=>{n[0]=e();let o=Reflect[i];return o(...n)}};return this.reflectMethods.forEach(s),t}};Rf.DelayedConstructor=tw;function rM(r){if(typeof r>"u")throw new Error("Attempt to `delay` undefined. Constructor must be wrapped in a callback");return new tw(r)}Rf.delay=rM});var sw=v(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.isConstructorToken=Xs.isTransformDescriptor=Xs.isTokenDescriptor=Xs.isNormalToken=void 0;var sM=rw();function iM(r){return typeof r=="string"||typeof r=="symbol"}Xs.isNormalToken=iM;function nM(r){return typeof r=="object"&&"token"in r&&"multiple"in r}Xs.isTokenDescriptor=nM;function aM(r){return typeof r=="object"&&"token"in r&&"transform"in r}Xs.isTransformDescriptor=aM;function oM(r){return typeof r=="function"||r instanceof sM.DelayedConstructor}Xs.isConstructorToken=oM});var vE=v(iw=>{"use strict";Object.defineProperty(iw,"__esModule",{value:!0});iw.isTokenProvider=void 0;function cM(r){return!!r.useToken}iw.isTokenProvider=cM});var SE=v(nw=>{"use strict";Object.defineProperty(nw,"__esModule",{value:!0});nw.isValueProvider=void 0;function uM(r){return r.useValue!=null}nw.isValueProvider=uM});var AE=v(tu=>{"use strict";Object.defineProperty(tu,"__esModule",{value:!0});var lM=gE();Object.defineProperty(tu,"isClassProvider",{enumerable:!0,get:function(){return lM.isClassProvider}});var hM=yE();Object.defineProperty(tu,"isFactoryProvider",{enumerable:!0,get:function(){return hM.isFactoryProvider}});var fM=sw();Object.defineProperty(tu,"isNormalToken",{enumerable:!0,get:function(){return fM.isNormalToken}});var dM=vE();Object.defineProperty(tu,"isTokenProvider",{enumerable:!0,get:function(){return dM.isTokenProvider}});var pM=SE();Object.defineProperty(tu,"isValueProvider",{enumerable:!0,get:function(){return pM.isValueProvider}})});var LV=v(aw=>{"use strict";Object.defineProperty(aw,"__esModule",{value:!0});aw.isProvider=void 0;var mM=gE(),gM=SE(),yM=vE(),vM=yE();function SM(r){return mM.isClassProvider(r)||gM.isValueProvider(r)||yM.isTokenProvider(r)||vM.isFactoryProvider(r)}aw.isProvider=SM});var bE=v(_E=>{"use strict";Object.defineProperty(_E,"__esModule",{value:!0});var wE=class{constructor(){this._registryMap=new Map}entries(){return this._registryMap.entries()}getAll(e){return this.ensure(e),this._registryMap.get(e)}get(e){this.ensure(e);let t=this._registryMap.get(e);return t[t.length-1]||null}set(e,t){this.ensure(e),this._registryMap.get(e).push(t)}setAll(e,t){this._registryMap.set(e,t)}has(e){return this.ensure(e),this._registryMap.get(e).length>0}clear(){this._registryMap.clear()}ensure(e){this._registryMap.has(e)||this._registryMap.set(e,[])}};_E.default=wE});var UV=v(PE=>{"use strict";Object.defineProperty(PE,"__esModule",{value:!0});var AM=bE(),CE=class extends AM.default{};PE.default=CE});var HV=v(EE=>{"use strict";Object.defineProperty(EE,"__esModule",{value:!0});var IE=class{constructor(){this.scopedResolutions=new Map}};EE.default=IE});var kE=v(ow=>{"use strict";Object.defineProperty(ow,"__esModule",{value:!0});ow.formatErrorCtor=void 0;function wM(r,e){return r===null?`at position #${e}`:`"${r.split(",")[e].trim()}" at position #${e}`}function _M(r,e,t=" "){return[r,...e.message.split(`
11
+ `).map(s=>t+s)].join(`
12
+ `)}function bM(r,e,t){let[,s=null]=r.toString().match(/constructor\(([\w, ]+)\)/)||[],i=wM(s,e);return _M(`Cannot inject the dependency ${i} of "${r.name}" constructor. Reason:`,t)}ow.formatErrorCtor=bM});var KV=v(cw=>{"use strict";Object.defineProperty(cw,"__esModule",{value:!0});cw.isDisposable=void 0;function CM(r){return!(typeof r.dispose!="function"||r.dispose.length>0)}cw.isDisposable=CM});var FV=v(ru=>{"use strict";Object.defineProperty(ru,"__esModule",{value:!0});ru.PostResolutionInterceptors=ru.PreResolutionInterceptors=void 0;var $V=bE(),uw=class extends $V.default{};ru.PreResolutionInterceptors=uw;var lw=class extends $V.default{};ru.PostResolutionInterceptors=lw;var NE=class{constructor(){this.preResolution=new uw,this.postResolution=new lw}};ru.default=NE});var va=v(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.instance=Hi.typeInfo=void 0;var PM=(Q1(),E(X1)),ir=AE(),IM=LV(),hw=sw(),EM=UV(),pr=pE(),fw=HV(),kM=kE(),NM=rw(),BM=KV(),xM=FV();Hi.typeInfo=new Map;var BE=class r{constructor(e){this.parent=e,this._registry=new EM.default,this.interceptors=new xM.default,this.disposed=!1,this.disposables=new Set}register(e,t,s={lifecycle:pr.default.Transient}){this.ensureNotDisposed();let i;if(IM.isProvider(t)?i=t:i={useClass:t},ir.isTokenProvider(i)){let n=[e],o=i;for(;o!=null;){let c=o.useToken;if(n.includes(c))throw new Error(`Token registration cycle detected! ${[...n,c].join(" -> ")}`);n.push(c);let l=this._registry.get(c);l&&ir.isTokenProvider(l.provider)?o=l.provider:o=null}}if((s.lifecycle===pr.default.Singleton||s.lifecycle==pr.default.ContainerScoped||s.lifecycle==pr.default.ResolutionScoped)&&(ir.isValueProvider(i)||ir.isFactoryProvider(i)))throw new Error(`Cannot use lifecycle "${pr.default[s.lifecycle]}" with ValueProviders or FactoryProviders`);return this._registry.set(e,{provider:i,options:s}),this}registerType(e,t){return this.ensureNotDisposed(),ir.isNormalToken(t)?this.register(e,{useToken:t}):this.register(e,{useClass:t})}registerInstance(e,t){return this.ensureNotDisposed(),this.register(e,{useValue:t})}registerSingleton(e,t){if(this.ensureNotDisposed(),ir.isNormalToken(e)){if(ir.isNormalToken(t))return this.register(e,{useToken:t},{lifecycle:pr.default.Singleton});if(t)return this.register(e,{useClass:t},{lifecycle:pr.default.Singleton});throw new Error('Cannot register a type name as a singleton without a "to" token')}let s=e;return t&&!ir.isNormalToken(t)&&(s=t),this.register(e,{useClass:s},{lifecycle:pr.default.Singleton})}resolve(e,t=new fw.default,s=!1){this.ensureNotDisposed();let i=this.getRegistration(e);if(!i&&ir.isNormalToken(e)){if(s)return;throw new Error(`Attempted to resolve unregistered dependency token: "${e.toString()}"`)}if(this.executePreResolutionInterceptor(e,"Single"),i){let n=this.resolveRegistration(i,t);return this.executePostResolutionInterceptor(e,n,"Single"),n}if(hw.isConstructorToken(e)){let n=this.construct(e,t);return this.executePostResolutionInterceptor(e,n,"Single"),n}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")}executePreResolutionInterceptor(e,t){if(this.interceptors.preResolution.has(e)){let s=[];for(let i of this.interceptors.preResolution.getAll(e))i.options.frequency!="Once"&&s.push(i),i.callback(e,t);this.interceptors.preResolution.setAll(e,s)}}executePostResolutionInterceptor(e,t,s){if(this.interceptors.postResolution.has(e)){let i=[];for(let n of this.interceptors.postResolution.getAll(e))n.options.frequency!="Once"&&i.push(n),n.callback(e,t,s);this.interceptors.postResolution.setAll(e,i)}}resolveRegistration(e,t){if(this.ensureNotDisposed(),e.options.lifecycle===pr.default.ResolutionScoped&&t.scopedResolutions.has(e))return t.scopedResolutions.get(e);let s=e.options.lifecycle===pr.default.Singleton,i=e.options.lifecycle===pr.default.ContainerScoped,n=s||i,o;return ir.isValueProvider(e.provider)?o=e.provider.useValue:ir.isTokenProvider(e.provider)?o=n?e.instance||(e.instance=this.resolve(e.provider.useToken,t)):this.resolve(e.provider.useToken,t):ir.isClassProvider(e.provider)?o=n?e.instance||(e.instance=this.construct(e.provider.useClass,t)):this.construct(e.provider.useClass,t):ir.isFactoryProvider(e.provider)?o=e.provider.useFactory(this):o=this.construct(e.provider,t),e.options.lifecycle===pr.default.ResolutionScoped&&t.scopedResolutions.set(e,o),o}resolveAll(e,t=new fw.default,s=!1){this.ensureNotDisposed();let i=this.getAllRegistrations(e);if(!i&&ir.isNormalToken(e)){if(s)return[];throw new Error(`Attempted to resolve unregistered dependency token: "${e.toString()}"`)}if(this.executePreResolutionInterceptor(e,"All"),i){let o=i.map(c=>this.resolveRegistration(c,t));return this.executePostResolutionInterceptor(e,o,"All"),o}let n=[this.construct(e,t)];return this.executePostResolutionInterceptor(e,n,"All"),n}isRegistered(e,t=!1){return this.ensureNotDisposed(),this._registry.has(e)||t&&(this.parent||!1)&&this.parent.isRegistered(e,!0)}reset(){this.ensureNotDisposed(),this._registry.clear(),this.interceptors.preResolution.clear(),this.interceptors.postResolution.clear()}clearInstances(){this.ensureNotDisposed();for(let[e,t]of this._registry.entries())this._registry.setAll(e,t.filter(s=>!ir.isValueProvider(s.provider)).map(s=>(s.instance=void 0,s)))}createChildContainer(){this.ensureNotDisposed();let e=new r(this);for(let[t,s]of this._registry.entries())s.some(({options:i})=>i.lifecycle===pr.default.ContainerScoped)&&e._registry.setAll(t,s.map(i=>i.options.lifecycle===pr.default.ContainerScoped?{provider:i.provider,options:i.options}:i));return e}beforeResolution(e,t,s={frequency:"Always"}){this.interceptors.preResolution.set(e,{callback:t,options:s})}afterResolution(e,t,s={frequency:"Always"}){this.interceptors.postResolution.set(e,{callback:t,options:s})}dispose(){return PM.__awaiter(this,void 0,void 0,function*(){this.disposed=!0;let e=[];this.disposables.forEach(t=>{let s=t.dispose();s&&e.push(s)}),yield Promise.all(e)})}getRegistration(e){return this.isRegistered(e)?this._registry.get(e):this.parent?this.parent.getRegistration(e):null}getAllRegistrations(e){return this.isRegistered(e)?this._registry.getAll(e):this.parent?this.parent.getAllRegistrations(e):null}construct(e,t){if(e instanceof NM.DelayedConstructor)return e.createProxy(i=>this.resolve(i,t));let s=(()=>{let i=Hi.typeInfo.get(e);if(!i||i.length===0){if(e.length===0)return new e;throw new Error(`TypeInfo not known for "${e.name}"`)}let n=i.map(this.resolveParams(t,e));return new e(...n)})();return BM.isDisposable(s)&&this.disposables.add(s),s}resolveParams(e,t){return(s,i)=>{try{return hw.isTokenDescriptor(s)?hw.isTransformDescriptor(s)?s.multiple?this.resolve(s.transform).transform(this.resolveAll(s.token,new fw.default,s.isOptional),...s.transformArgs):this.resolve(s.transform).transform(this.resolve(s.token,e,s.isOptional),...s.transformArgs):s.multiple?this.resolveAll(s.token,new fw.default,s.isOptional):this.resolve(s.token,e,s.isOptional):hw.isTransformDescriptor(s)?this.resolve(s.transform,e).transform(this.resolve(s.token,e),...s.transformArgs):this.resolve(s,e)}catch(n){throw new Error(kM.formatErrorCtor(t,i,n))}}}ensureNotDisposed(){if(this.disposed)throw new Error("This container has been disposed, you cannot interact with a disposed container")}};Hi.instance=new BE;Hi.default=Hi.instance});var JV=v(OE=>{"use strict";Object.defineProperty(OE,"__esModule",{value:!0});var OM=eu(),Ki=va(),xE=sw(),TM=kE();function VM(){return function(r){let e=OM.getParamInfo(r);return class extends r{constructor(...t){super(...t.concat(e.slice(t.length).map((s,i)=>{try{return xE.isTokenDescriptor(s)?xE.isTransformDescriptor(s)?s.multiple?Ki.instance.resolve(s.transform).transform(Ki.instance.resolveAll(s.token),...s.transformArgs):Ki.instance.resolve(s.transform).transform(Ki.instance.resolve(s.token),...s.transformArgs):s.multiple?Ki.instance.resolveAll(s.token):Ki.instance.resolve(s.token):xE.isTransformDescriptor(s)?Ki.instance.resolve(s.transform).transform(Ki.instance.resolve(s.token),...s.transformArgs):Ki.instance.resolve(s)}catch(n){let o=i+t.length;throw new Error(TM.formatErrorCtor(r,o,n))}})))}}}}OE.default=VM});var GV=v(TE=>{"use strict";Object.defineProperty(TE,"__esModule",{value:!0});var RM=eu();function DM(r,e){let t={token:r,multiple:!1,isOptional:e&&e.isOptional};return RM.defineInjectionTokenMetadata(t)}TE.default=DM});var dw=v(VE=>{"use strict";Object.defineProperty(VE,"__esModule",{value:!0});var qM=eu(),jM=va(),WV=va();function MM(r){return function(e){jM.typeInfo.set(e,qM.getParamInfo(e)),r&&r.token&&(Array.isArray(r.token)?r.token.forEach(t=>{WV.instance.register(t,e)}):WV.instance.register(r.token,e))}}VE.default=MM});var zV=v(RE=>{"use strict";Object.defineProperty(RE,"__esModule",{value:!0});var LM=(Q1(),E(X1)),UM=va();function HM(r=[]){return function(e){return r.forEach(t=>{var{token:s,options:i}=t,n=LM.__rest(t,["token","options"]);return UM.instance.register(s,n,i)}),e}}RE.default=HM});var YV=v(DE=>{"use strict";Object.defineProperty(DE,"__esModule",{value:!0});var KM=dw(),$M=va();function FM(){return function(r){KM.default()(r),$M.instance.registerSingleton(r)}}DE.default=FM});var XV=v(qE=>{"use strict";Object.defineProperty(qE,"__esModule",{value:!0});var JM=eu();function GM(r,e){let t={token:r,multiple:!0,isOptional:e&&e.isOptional};return JM.defineInjectionTokenMetadata(t)}qE.default=GM});var QV=v(jE=>{"use strict";Object.defineProperty(jE,"__esModule",{value:!0});var WM=eu();function zM(r,e,...t){let s={token:r,multiple:!0,transform:e,transformArgs:t};return WM.defineInjectionTokenMetadata(s)}jE.default=zM});var ZV=v(ME=>{"use strict";Object.defineProperty(ME,"__esModule",{value:!0});var YM=eu();function XM(r,e,...t){return YM.defineInjectionTokenMetadata(r,{transformToken:e,args:t})}ME.default=XM});var eR=v(LE=>{"use strict";Object.defineProperty(LE,"__esModule",{value:!0});var QM=dw(),ZM=va();function eL(r,e){return function(t){QM.default()(t),ZM.instance.register(e||t,t,{lifecycle:r})}}LE.default=eL});var tR=v(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});var tL=JV();Object.defineProperty(gs,"autoInjectable",{enumerable:!0,get:function(){return tL.default}});var rL=GV();Object.defineProperty(gs,"inject",{enumerable:!0,get:function(){return rL.default}});var sL=dw();Object.defineProperty(gs,"injectable",{enumerable:!0,get:function(){return sL.default}});var iL=zV();Object.defineProperty(gs,"registry",{enumerable:!0,get:function(){return iL.default}});var nL=YV();Object.defineProperty(gs,"singleton",{enumerable:!0,get:function(){return nL.default}});var aL=XV();Object.defineProperty(gs,"injectAll",{enumerable:!0,get:function(){return aL.default}});var oL=QV();Object.defineProperty(gs,"injectAllWithTransform",{enumerable:!0,get:function(){return oL.default}});var cL=ZV();Object.defineProperty(gs,"injectWithTransform",{enumerable:!0,get:function(){return cL.default}});var uL=eR();Object.defineProperty(gs,"scoped",{enumerable:!0,get:function(){return uL.default}})});var rR=v(UE=>{"use strict";Object.defineProperty(UE,"__esModule",{value:!0});function lL(r){let e;return t=>(e==null&&(e=r(t)),e)}UE.default=lL});var sR=v(HE=>{"use strict";Object.defineProperty(HE,"__esModule",{value:!0});function hL(r){let e=new WeakMap;return t=>{let s=e.get(t);return s==null&&(s=r(t),e.set(t,s)),s}}HE.default=hL});var iR=v(KE=>{"use strict";Object.defineProperty(KE,"__esModule",{value:!0});function fL(r,e,t,s=!0){let i,n;return o=>{let c=r(o);return(!s||n!==c)&&((n=c)?i=o.resolve(e):i=o.resolve(t)),i}}KE.default=fL});var nR=v(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});var dL=rR();Object.defineProperty(Ty,"instanceCachingFactory",{enumerable:!0,get:function(){return dL.default}});var pL=sR();Object.defineProperty(Ty,"instancePerContainerCachingFactory",{enumerable:!0,get:function(){return pL.default}});var mL=iR();Object.defineProperty(Ty,"predicateAwareClassFactory",{enumerable:!0,get:function(){return mL.default}})});var aR=v(Sa=>{"use strict";Object.defineProperty(Sa,"__esModule",{value:!0});var $E=(Q1(),E(X1));if(typeof Reflect>"u"||!Reflect.getMetadata)throw new Error(`tsyringe requires a reflect polyfill. Please add 'import "reflect-metadata"' to the top of your entry point.`);var gL=MV();Object.defineProperty(Sa,"Lifecycle",{enumerable:!0,get:function(){return gL.Lifecycle}});$E.__exportStar(tR(),Sa);$E.__exportStar(nR(),Sa);$E.__exportStar(AE(),Sa);var yL=rw();Object.defineProperty(Sa,"delay",{enumerable:!0,get:function(){return yL.delay}});var vL=va();Object.defineProperty(Sa,"container",{enumerable:!0,get:function(){return vL.instance}})});var WE=v(iu=>{"use strict";var FE;Object.defineProperty(iu,"__esModule",{value:!0});iu.PKCS12AttrSet=iu.PKCS12Attribute=void 0;var GE=(N(),E(k)),su=V(),Df=class{constructor(e={}){this.attrId="",this.attrValues=[],Object.assign(e)}};iu.PKCS12Attribute=Df;GE.__decorate([(0,su.AsnProp)({type:su.AsnPropTypes.ObjectIdentifier})],Df.prototype,"attrId",void 0);GE.__decorate([(0,su.AsnProp)({type:su.AsnPropTypes.Any,repeated:"set"})],Df.prototype,"attrValues",void 0);var JE=FE=class extends su.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,FE.prototype)}};iu.PKCS12AttrSet=JE;iu.PKCS12AttrSet=JE=FE=GE.__decorate([(0,su.AsnType)({type:su.AsnTypeTypes.Sequence,itemType:Df})],JE)});var oR=v(Vy=>{"use strict";var zE;Object.defineProperty(Vy,"__esModule",{value:!0});Vy.AuthenticatedSafe=void 0;var SL=(N(),E(k)),YE=V(),AL=wy(),XE=zE=class extends YE.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,zE.prototype)}};Vy.AuthenticatedSafe=XE;Vy.AuthenticatedSafe=XE=zE=SL.__decorate([(0,YE.AsnType)({type:YE.AsnTypeTypes.Sequence,itemType:AL.ContentInfo})],XE)});var QE=v(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});ke.id_bagtypes=ke.id_pbewithSHAAnd40BitRC2_CBC=ke.id_pbeWithSHAAnd128BitRC2_CBC=ke.id_pbeWithSHAAnd2_KeyTripleDES_CBC=ke.id_pbeWithSHAAnd3_KeyTripleDES_CBC=ke.id_pbeWithSHAAnd40BitRC4=ke.id_pbeWithSHAAnd128BitRC4=ke.id_pkcs_12PbeIds=ke.id_pkcs_12=ke.id_pkcs=ke.id_rsadsi=void 0;ke.id_rsadsi="1.2.840.113549";ke.id_pkcs=`${ke.id_rsadsi}.1`;ke.id_pkcs_12=`${ke.id_pkcs}.12`;ke.id_pkcs_12PbeIds=`${ke.id_pkcs_12}.1`;ke.id_pbeWithSHAAnd128BitRC4=`${ke.id_pkcs_12PbeIds}.1`;ke.id_pbeWithSHAAnd40BitRC4=`${ke.id_pkcs_12PbeIds}.2`;ke.id_pbeWithSHAAnd3_KeyTripleDES_CBC=`${ke.id_pkcs_12PbeIds}.3`;ke.id_pbeWithSHAAnd2_KeyTripleDES_CBC=`${ke.id_pkcs_12PbeIds}.4`;ke.id_pbeWithSHAAnd128BitRC2_CBC=`${ke.id_pkcs_12PbeIds}.5`;ke.id_pbewithSHAAnd40BitRC2_CBC=`${ke.id_pkcs_12PbeIds}.6`;ke.id_bagtypes=`${ke.id_pkcs_12}.10.1`});var pw=v(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.id_pkcs_9=Xt.id_SafeContents=Xt.id_SecretBag=Xt.id_CRLBag=Xt.id_certBag=Xt.id_pkcs8ShroudedKeyBag=Xt.id_keyBag=void 0;var qf=QE();Xt.id_keyBag=`${qf.id_bagtypes}.1`;Xt.id_pkcs8ShroudedKeyBag=`${qf.id_bagtypes}.2`;Xt.id_certBag=`${qf.id_bagtypes}.3`;Xt.id_CRLBag=`${qf.id_bagtypes}.4`;Xt.id_SecretBag=`${qf.id_bagtypes}.5`;Xt.id_SafeContents=`${qf.id_bagtypes}.6`;Xt.id_pkcs_9="1.2.840.113549.1.9"});var uR=v(Fr=>{"use strict";Object.defineProperty(Fr,"__esModule",{value:!0});Fr.id_sdsiCertificate=Fr.id_x509Certificate=Fr.id_certTypes=Fr.CertBag=void 0;var cR=(N(),E(k)),mw=V(),wL=pw(),Ry=class{constructor(e={}){this.certId="",this.certValue=new ArrayBuffer(0),Object.assign(this,e)}};Fr.CertBag=Ry;cR.__decorate([(0,mw.AsnProp)({type:mw.AsnPropTypes.ObjectIdentifier})],Ry.prototype,"certId",void 0);cR.__decorate([(0,mw.AsnProp)({type:mw.AsnPropTypes.Any,context:0})],Ry.prototype,"certValue",void 0);Fr.id_certTypes=`${wL.id_pkcs_9}.22`;Fr.id_x509Certificate=`${Fr.id_certTypes}.1`;Fr.id_sdsiCertificate=`${Fr.id_certTypes}.2`});var hR=v($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.id_x509CRL=$i.id_crlTypes=$i.CRLBag=void 0;var lR=(N(),E(k)),gw=V(),_L=pw(),Dy=class{constructor(e={}){this.crlId="",this.crltValue=new ArrayBuffer(0),Object.assign(this,e)}};$i.CRLBag=Dy;lR.__decorate([(0,gw.AsnProp)({type:gw.AsnPropTypes.ObjectIdentifier})],Dy.prototype,"crlId",void 0);lR.__decorate([(0,gw.AsnProp)({type:gw.AsnPropTypes.Any,context:0})],Dy.prototype,"crltValue",void 0);$i.id_crlTypes=`${_L.id_pkcs_9}.23`;$i.id_x509CRL=`${$i.id_crlTypes}.1`});var pR=v(jf=>{"use strict";Object.defineProperty(jf,"__esModule",{value:!0});jf.EncryptedPrivateKeyInfo=jf.EncryptedData=void 0;var fR=(N(),E(k)),ZE=V(),dR=Ie(),qy=class extends ZE.OctetString{};jf.EncryptedData=qy;var jy=class{constructor(e={}){this.encryptionAlgorithm=new dR.AlgorithmIdentifier,this.encryptedData=new qy,Object.assign(this,e)}};jf.EncryptedPrivateKeyInfo=jy;fR.__decorate([(0,ZE.AsnProp)({type:dR.AlgorithmIdentifier})],jy.prototype,"encryptionAlgorithm",void 0);fR.__decorate([(0,ZE.AsnProp)({type:qy})],jy.prototype,"encryptedData",void 0)});var mR=v(ys=>{"use strict";var ek;Object.defineProperty(ys,"__esModule",{value:!0});ys.PrivateKeyInfo=ys.Attributes=ys.PrivateKey=ys.Version=void 0;var Ly=(N(),E(k)),Fi=V(),rk=Ie(),tk;(function(r){r[r.v1=0]="v1"})(tk||(ys.Version=tk={}));var My=class extends Fi.OctetString{};ys.PrivateKey=My;var yw=ek=class extends Fi.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,ek.prototype)}};ys.Attributes=yw;ys.Attributes=yw=ek=Ly.__decorate([(0,Fi.AsnType)({type:Fi.AsnTypeTypes.Sequence,itemType:rk.Attribute})],yw);var nu=class{constructor(e={}){this.version=tk.v1,this.privateKeyAlgorithm=new rk.AlgorithmIdentifier,this.privateKey=new My,Object.assign(this,e)}};ys.PrivateKeyInfo=nu;Ly.__decorate([(0,Fi.AsnProp)({type:Fi.AsnPropTypes.Integer})],nu.prototype,"version",void 0);Ly.__decorate([(0,Fi.AsnProp)({type:rk.AlgorithmIdentifier})],nu.prototype,"privateKeyAlgorithm",void 0);Ly.__decorate([(0,Fi.AsnProp)({type:My})],nu.prototype,"privateKey",void 0);Ly.__decorate([(0,Fi.AsnProp)({type:yw,implicit:!0,context:0,optional:!0})],nu.prototype,"attributes",void 0)});var Sw=v(vw=>{"use strict";Object.defineProperty(vw,"__esModule",{value:!0});var gR=(N(),E(k));gR.__exportStar(pR(),vw);gR.__exportStar(mR(),vw)});var vR=v(Uy=>{"use strict";Object.defineProperty(Uy,"__esModule",{value:!0});Uy.KeyBag=void 0;var bL=(N(),E(k)),CL=Sw(),yR=V(),sk=class extends CL.PrivateKeyInfo{};Uy.KeyBag=sk;Uy.KeyBag=sk=bL.__decorate([(0,yR.AsnType)({type:yR.AsnTypeTypes.Sequence})],sk)});var AR=v(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.PKCS8ShroudedKeyBag=void 0;var PL=(N(),E(k)),IL=Sw(),SR=V(),ik=class extends IL.EncryptedPrivateKeyInfo{};Hy.PKCS8ShroudedKeyBag=ik;Hy.PKCS8ShroudedKeyBag=ik=PL.__decorate([(0,SR.AsnType)({type:SR.AsnTypeTypes.Sequence})],ik)});var _R=v(ww=>{"use strict";Object.defineProperty(ww,"__esModule",{value:!0});ww.SecretBag=void 0;var wR=(N(),E(k)),Aw=V(),Ky=class{constructor(e={}){this.secretTypeId="",this.secretValue=new ArrayBuffer(0),Object.assign(this,e)}};ww.SecretBag=Ky;wR.__decorate([(0,Aw.AsnProp)({type:Aw.AsnPropTypes.ObjectIdentifier})],Ky.prototype,"secretTypeId",void 0);wR.__decorate([(0,Aw.AsnProp)({type:Aw.AsnPropTypes.Any,context:0})],Ky.prototype,"secretValue",void 0)});var bR=v(Aa=>{"use strict";Object.defineProperty(Aa,"__esModule",{value:!0});var Mf=(N(),E(k));Mf.__exportStar(uR(),Aa);Mf.__exportStar(hR(),Aa);Mf.__exportStar(vR(),Aa);Mf.__exportStar(AR(),Aa);Mf.__exportStar(_R(),Aa);Mf.__exportStar(pw(),Aa)});var ak=v(_w=>{"use strict";Object.defineProperty(_w,"__esModule",{value:!0});_w.MacData=void 0;var nk=(N(),E(k)),CR=cE(),Lf=V(),Uf=class{constructor(e={}){this.mac=new CR.DigestInfo,this.macSalt=new Lf.OctetString,this.iterations=1,Object.assign(this,e)}};_w.MacData=Uf;nk.__decorate([(0,Lf.AsnProp)({type:CR.DigestInfo})],Uf.prototype,"mac",void 0);nk.__decorate([(0,Lf.AsnProp)({type:Lf.OctetString})],Uf.prototype,"macSalt",void 0);nk.__decorate([(0,Lf.AsnProp)({type:Lf.AsnPropTypes.Integer,defaultValue:1})],Uf.prototype,"iterations",void 0)});var ER=v(Cw=>{"use strict";Object.defineProperty(Cw,"__esModule",{value:!0});Cw.PFX=void 0;var ok=(N(),E(k)),bw=V(),PR=wy(),IR=ak(),Hf=class{constructor(e={}){this.version=3,this.authSafe=new PR.ContentInfo,this.macData=new IR.MacData,Object.assign(this,e)}};Cw.PFX=Hf;ok.__decorate([(0,bw.AsnProp)({type:bw.AsnPropTypes.Integer})],Hf.prototype,"version",void 0);ok.__decorate([(0,bw.AsnProp)({type:PR.ContentInfo})],Hf.prototype,"authSafe",void 0);ok.__decorate([(0,bw.AsnProp)({type:IR.MacData,optional:!0})],Hf.prototype,"macData",void 0)});var kR=v(ou=>{"use strict";var ck;Object.defineProperty(ou,"__esModule",{value:!0});ou.SafeContents=ou.SafeBag=void 0;var Pw=(N(),E(k)),wa=V(),EL=WE(),au=class{constructor(e={}){this.bagId="",this.bagValue=new ArrayBuffer(0),Object.assign(this,e)}};ou.SafeBag=au;Pw.__decorate([(0,wa.AsnProp)({type:wa.AsnPropTypes.ObjectIdentifier})],au.prototype,"bagId",void 0);Pw.__decorate([(0,wa.AsnProp)({type:wa.AsnPropTypes.Any,context:0})],au.prototype,"bagValue",void 0);Pw.__decorate([(0,wa.AsnProp)({type:EL.PKCS12Attribute,repeated:"set",optional:!0})],au.prototype,"bagAttributes",void 0);var uk=ck=class extends wa.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,ck.prototype)}};ou.SafeContents=uk;ou.SafeContents=uk=ck=Pw.__decorate([(0,wa.AsnType)({type:wa.AsnTypeTypes.Sequence,itemType:au})],uk)});var NR=v(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});var cu=(N(),E(k));cu.__exportStar(WE(),Ji);cu.__exportStar(oR(),Ji);cu.__exportStar(bR(),Ji);cu.__exportStar(ak(),Ji);cu.__exportStar(QE(),Ji);cu.__exportStar(ER(),Ji);cu.__exportStar(kR(),Ji)});var BR=v(y=>{"use strict";var lk,hk,fk;Object.defineProperty(y,"__esModule",{value:!0});y.DateOfBirth=y.UnstructuredAddress=y.UnstructuredName=y.EmailAddress=y.EncryptedPrivateKeyInfo=y.UserPKCS12=y.Pkcs7PDU=y.PKCS9String=y.id_at_pseudonym=y.crlTypes=y.id_certTypes=y.id_smime=y.id_pkcs9_mr_signingTimeMatch=y.id_pkcs9_mr_caseIgnoreMatch=y.id_pkcs9_sx_signingTime=y.id_pkcs9_sx_pkcs9String=y.id_pkcs9_at_countryOfResidence=y.id_pkcs9_at_countryOfCitizenship=y.id_pkcs9_at_gender=y.id_pkcs9_at_placeOfBirth=y.id_pkcs9_at_dateOfBirth=y.id_ietf_at=y.id_pkcs9_at_pkcs7PDU=y.id_pkcs9_at_sequenceNumber=y.id_pkcs9_at_randomNonce=y.id_pkcs9_at_encryptedPrivateKeyInfo=y.id_pkcs9_at_pkcs15Token=y.id_pkcs9_at_userPKCS12=y.id_pkcs9_at_localKeyId=y.id_pkcs9_at_friendlyName=y.id_pkcs9_at_smimeCapabilities=y.id_pkcs9_at_extensionRequest=y.id_pkcs9_at_signingDescription=y.id_pkcs9_at_extendedCertificateAttributes=y.id_pkcs9_at_unstructuredAddress=y.id_pkcs9_at_challengePassword=y.id_pkcs9_at_counterSignature=y.id_pkcs9_at_signingTime=y.id_pkcs9_at_messageDigest=y.id_pkcs9_at_contentType=y.id_pkcs9_at_unstructuredName=y.id_pkcs9_at_emailAddress=y.id_pkcs9_oc_naturalPerson=y.id_pkcs9_oc_pkcsEntity=y.id_pkcs9_mr=y.id_pkcs9_sx=y.id_pkcs9_at=y.id_pkcs9_oc=y.id_pkcs9_mo=y.id_pkcs9=void 0;y.SMIMECapabilities=y.SMIMECapability=y.SigningDescription=y.LocalKeyId=y.FriendlyName=y.ExtendedCertificateAttributes=y.ExtensionRequest=y.ChallengePassword=y.CounterSignature=y.SequenceNumber=y.RandomNonce=y.SigningTime=y.MessageDigest=y.ContentType=y.Pseudonym=y.CountryOfResidence=y.CountryOfCitizenship=y.Gender=y.PlaceOfBirth=void 0;var Te=(N(),E(k)),z=V(),xk=wy(),kL=NR(),NL=Sw(),Gi=Ie(),BL=II();y.id_pkcs9="1.2.840.113549.1.9";y.id_pkcs9_mo=`${y.id_pkcs9}.0`;y.id_pkcs9_oc=`${y.id_pkcs9}.24`;y.id_pkcs9_at=`${y.id_pkcs9}.25`;y.id_pkcs9_sx=`${y.id_pkcs9}.26`;y.id_pkcs9_mr=`${y.id_pkcs9}.27`;y.id_pkcs9_oc_pkcsEntity=`${y.id_pkcs9_oc}.1`;y.id_pkcs9_oc_naturalPerson=`${y.id_pkcs9_oc}.2`;y.id_pkcs9_at_emailAddress=`${y.id_pkcs9}.1`;y.id_pkcs9_at_unstructuredName=`${y.id_pkcs9}.2`;y.id_pkcs9_at_contentType=`${y.id_pkcs9}.3`;y.id_pkcs9_at_messageDigest=`${y.id_pkcs9}.4`;y.id_pkcs9_at_signingTime=`${y.id_pkcs9}.5`;y.id_pkcs9_at_counterSignature=`${y.id_pkcs9}.6`;y.id_pkcs9_at_challengePassword=`${y.id_pkcs9}.7`;y.id_pkcs9_at_unstructuredAddress=`${y.id_pkcs9}.8`;y.id_pkcs9_at_extendedCertificateAttributes=`${y.id_pkcs9}.9`;y.id_pkcs9_at_signingDescription=`${y.id_pkcs9}.13`;y.id_pkcs9_at_extensionRequest=`${y.id_pkcs9}.14`;y.id_pkcs9_at_smimeCapabilities=`${y.id_pkcs9}.15`;y.id_pkcs9_at_friendlyName=`${y.id_pkcs9}.20`;y.id_pkcs9_at_localKeyId=`${y.id_pkcs9}.21`;y.id_pkcs9_at_userPKCS12="2.16.840.1.113730.3.1.216";y.id_pkcs9_at_pkcs15Token=`${y.id_pkcs9_at}.1`;y.id_pkcs9_at_encryptedPrivateKeyInfo=`${y.id_pkcs9_at}.2`;y.id_pkcs9_at_randomNonce=`${y.id_pkcs9_at}.3`;y.id_pkcs9_at_sequenceNumber=`${y.id_pkcs9_at}.4`;y.id_pkcs9_at_pkcs7PDU=`${y.id_pkcs9_at}.5`;y.id_ietf_at="1.3.6.1.5.5.7.9";y.id_pkcs9_at_dateOfBirth=`${y.id_ietf_at}.1`;y.id_pkcs9_at_placeOfBirth=`${y.id_ietf_at}.2`;y.id_pkcs9_at_gender=`${y.id_ietf_at}.3`;y.id_pkcs9_at_countryOfCitizenship=`${y.id_ietf_at}.4`;y.id_pkcs9_at_countryOfResidence=`${y.id_ietf_at}.5`;y.id_pkcs9_sx_pkcs9String=`${y.id_pkcs9_sx}.1`;y.id_pkcs9_sx_signingTime=`${y.id_pkcs9_sx}.2`;y.id_pkcs9_mr_caseIgnoreMatch=`${y.id_pkcs9_mr}.1`;y.id_pkcs9_mr_signingTimeMatch=`${y.id_pkcs9_mr}.2`;y.id_smime=`${y.id_pkcs9}.16`;y.id_certTypes=`${y.id_pkcs9}.22`;y.crlTypes=`${y.id_pkcs9}.23`;y.id_at_pseudonym=`${BL.id_at}.65`;var $y=class extends Gi.DirectoryString{constructor(e={}){super(e)}toString(){return{}.toString(),this.ia5String||super.toString()}};y.PKCS9String=$y;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.IA5String})],$y.prototype,"ia5String",void 0);y.PKCS9String=$y=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],$y);var dk=class extends xk.ContentInfo{};y.Pkcs7PDU=dk;y.Pkcs7PDU=dk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence})],dk);var pk=class extends kL.PFX{};y.UserPKCS12=pk;y.UserPKCS12=pk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence})],pk);var mk=class extends NL.EncryptedPrivateKeyInfo{};y.EncryptedPrivateKeyInfo=mk;y.EncryptedPrivateKeyInfo=mk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence})],mk);var Iw=class{constructor(e=""){this.value=e}toString(){return this.value}};y.EmailAddress=Iw;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.IA5String})],Iw.prototype,"value",void 0);y.EmailAddress=Iw=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Iw);var gk=class extends $y{};y.UnstructuredName=gk;y.UnstructuredName=gk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],gk);var yk=class extends Gi.DirectoryString{};y.UnstructuredAddress=yk;y.UnstructuredAddress=yk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],yk);var Ew=class{constructor(e=new Date){this.value=e}};y.DateOfBirth=Ew;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.GeneralizedTime})],Ew.prototype,"value",void 0);y.DateOfBirth=Ew=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Ew);var vk=class extends Gi.DirectoryString{};y.PlaceOfBirth=vk;y.PlaceOfBirth=vk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],vk);var kw=class{constructor(e="M"){this.value=e}toString(){return this.value}};y.Gender=kw;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.PrintableString})],kw.prototype,"value",void 0);y.Gender=kw=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],kw);var Fy=class{constructor(e=""){this.value=e}toString(){return this.value}};y.CountryOfCitizenship=Fy;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.PrintableString})],Fy.prototype,"value",void 0);y.CountryOfCitizenship=Fy=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Fy);var Sk=class extends Fy{};y.CountryOfResidence=Sk;y.CountryOfResidence=Sk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Sk);var Ak=class extends Gi.DirectoryString{};y.Pseudonym=Ak;y.Pseudonym=Ak=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Ak);var Nw=class{constructor(e=""){this.value=e}toString(){return this.value}};y.ContentType=Nw;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.ObjectIdentifier})],Nw.prototype,"value",void 0);y.ContentType=Nw=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Nw);var wk=class extends z.OctetString{};y.MessageDigest=wk;var _k=class extends Gi.Time{};y.SigningTime=_k;y.SigningTime=_k=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],_k);var bk=class extends z.OctetString{};y.RandomNonce=bk;var Bw=class{constructor(e=0){this.value=e}toString(){return this.value.toString()}};y.SequenceNumber=Bw;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.Integer})],Bw.prototype,"value",void 0);y.SequenceNumber=Bw=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Bw);var Ck=class extends xk.SignerInfo{};y.CounterSignature=Ck;y.CounterSignature=Ck=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence})],Ck);var Pk=class extends Gi.DirectoryString{};y.ChallengePassword=Pk;y.ChallengePassword=Pk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],Pk);var Ik=lk=class extends Gi.Extensions{constructor(e){super(e),Object.setPrototypeOf(this,lk.prototype)}};y.ExtensionRequest=Ik;y.ExtensionRequest=Ik=lk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence})],Ik);var Ek=hk=class extends z.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,hk.prototype)}};y.ExtendedCertificateAttributes=Ek;y.ExtendedCertificateAttributes=Ek=hk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Set,itemType:xk.Attribute})],Ek);var xw=class{constructor(e=""){this.value=e}toString(){return this.value}};y.FriendlyName=xw;Te.__decorate([(0,z.AsnProp)({type:z.AsnPropTypes.BmpString})],xw.prototype,"value",void 0);y.FriendlyName=xw=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Choice})],xw);var kk=class extends z.OctetString{};y.LocalKeyId=kk;var Nk=class extends Gi.DirectoryString{};y.SigningDescription=Nk;var Ow=class extends Gi.AlgorithmIdentifier{};y.SMIMECapability=Ow;y.SMIMECapability=Ow=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence})],Ow);var Bk=fk=class extends z.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,fk.prototype)}};y.SMIMECapabilities=Bk;y.SMIMECapabilities=Bk=fk=Te.__decorate([(0,z.AsnType)({type:z.AsnTypeTypes.Sequence,itemType:Ow})],Bk)});var Rk=v(Jy=>{"use strict";var Ok;Object.defineProperty(Jy,"__esModule",{value:!0});Jy.Attributes=void 0;var xL=(N(),E(k)),Tk=V(),OL=Ie(),Vk=Ok=class extends Tk.AsnArray{constructor(e){super(e),Object.setPrototypeOf(this,Ok.prototype)}};Jy.Attributes=Vk;Jy.Attributes=Vk=Ok=xL.__decorate([(0,Tk.AsnType)({type:Tk.AsnTypeTypes.Sequence,itemType:OL.Attribute})],Vk)});var Dk=v(Rw=>{"use strict";Object.defineProperty(Rw,"__esModule",{value:!0});Rw.CertificationRequestInfo=void 0;var Vw=(N(),E(k)),Gy=V(),Tw=Ie(),xR=Rk(),uu=class{constructor(e={}){this.version=0,this.subject=new Tw.Name,this.subjectPKInfo=new Tw.SubjectPublicKeyInfo,this.attributes=new xR.Attributes,Object.assign(this,e)}};Rw.CertificationRequestInfo=uu;Vw.__decorate([(0,Gy.AsnProp)({type:Gy.AsnPropTypes.Integer})],uu.prototype,"version",void 0);Vw.__decorate([(0,Gy.AsnProp)({type:Tw.Name})],uu.prototype,"subject",void 0);Vw.__decorate([(0,Gy.AsnProp)({type:Tw.SubjectPublicKeyInfo})],uu.prototype,"subjectPKInfo",void 0);Vw.__decorate([(0,Gy.AsnProp)({type:xR.Attributes,implicit:!0,context:0,optional:!0})],uu.prototype,"attributes",void 0)});var VR=v(qw=>{"use strict";Object.defineProperty(qw,"__esModule",{value:!0});qw.CertificationRequest=void 0;var qk=(N(),E(k)),Dw=V(),OR=Dk(),TR=Ie(),Kf=class{constructor(e={}){this.certificationRequestInfo=new OR.CertificationRequestInfo,this.signatureAlgorithm=new TR.AlgorithmIdentifier,this.signature=new ArrayBuffer(0),Object.assign(this,e)}};qw.CertificationRequest=Kf;qk.__decorate([(0,Dw.AsnProp)({type:OR.CertificationRequestInfo,raw:!0})],Kf.prototype,"certificationRequestInfo",void 0);qk.__decorate([(0,Dw.AsnProp)({type:TR.AlgorithmIdentifier})],Kf.prototype,"signatureAlgorithm",void 0);qk.__decorate([(0,Dw.AsnProp)({type:Dw.AsnPropTypes.BitString})],Kf.prototype,"signature",void 0)});var RR=v(Wy=>{"use strict";Object.defineProperty(Wy,"__esModule",{value:!0});var jk=(N(),E(k));jk.__exportStar(Rk(),Wy);jk.__exportStar(VR(),Wy);jk.__exportStar(Dk(),Wy)});var S2=v(H=>{"use strict";var T=V(),X=Ie(),U=_s(),R=(N(),E(k)),TL=wy(),Xw=IV(),gr=cE(),Je=aR(),Fk=BR(),Qw=RR();function qv(r){var e=Object.create(null);return r&&Object.keys(r).forEach(function(t){if(t!=="default"){var s=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,s.get?s:{enumerable:!0,get:function(){return r[t]}})}}),e.default=r,Object.freeze(e)}var O=qv(X),mr=qv(TL),rt=qv(Xw),Fe=qv(gr),Xf=qv(Fk),rd="crypto.algorithm",Zw=class{getAlgorithms(){return Je.container.resolveAll(rd)}toAsnAlgorithm(e){let t={...e};t.hash&&typeof t.hash=="string"&&(t.hash={name:t.hash});for(let s of this.getAlgorithms()){let i=s.toAsnAlgorithm(t);if(i)return i}if(/^[0-9.]+$/.test(e.name)){let s=new X.AlgorithmIdentifier({algorithm:e.name});if("parameters"in e){let i=e;s.parameters=i.parameters}return s}throw new Error("Cannot convert WebCrypto algorithm to ASN.1 algorithm")}toWebAlgorithm(e){for(let s of this.getAlgorithms()){let i=s.toWebAlgorithm(e);if(i)return i}return{name:e.algorithm,parameters:e.parameters}}},As="crypto.algorithmProvider";Je.container.registerSingleton(As,Zw);var Lw,Ar="1.3.36.3.3.2.8.1.1",DR=`${Ar}.1`,qR=`${Ar}.2`,jR=`${Ar}.3`,MR=`${Ar}.4`,LR=`${Ar}.5`,UR=`${Ar}.6`,HR=`${Ar}.7`,KR=`${Ar}.8`,$R=`${Ar}.9`,FR=`${Ar}.10`,JR=`${Ar}.11`,GR=`${Ar}.12`,WR=`${Ar}.13`,zR=`${Ar}.14`,YR="brainpoolP160r1",XR="brainpoolP160t1",QR="brainpoolP192r1",ZR="brainpoolP192t1",e2="brainpoolP224r1",t2="brainpoolP224t1",r2="brainpoolP256r1",s2="brainpoolP256t1",i2="brainpoolP320r1",n2="brainpoolP320t1",a2="brainpoolP384r1",o2="brainpoolP384t1",c2="brainpoolP512r1",u2="brainpoolP512t1",ot="ECDSA";H.EcAlgorithm=Lw=class{toAsnAlgorithm(e){switch(e.name.toLowerCase()){case ot.toLowerCase():if("hash"in e)switch((typeof e.hash=="string"?e.hash:e.hash.name).toLowerCase()){case"sha-1":return rt.ecdsaWithSHA1;case"sha-256":return rt.ecdsaWithSHA256;case"sha-384":return rt.ecdsaWithSHA384;case"sha-512":return rt.ecdsaWithSHA512}else if("namedCurve"in e){let t="";switch(e.namedCurve){case"P-256":t=rt.id_secp256r1;break;case"K-256":t=Lw.SECP256K1;break;case"P-384":t=rt.id_secp384r1;break;case"P-521":t=rt.id_secp521r1;break;case YR:t=DR;break;case XR:t=qR;break;case QR:t=jR;break;case ZR:t=MR;break;case e2:t=LR;break;case t2:t=UR;break;case r2:t=HR;break;case s2:t=KR;break;case i2:t=$R;break;case n2:t=FR;break;case a2:t=JR;break;case o2:t=GR;break;case c2:t=WR;break;case u2:t=zR;break}if(t)return new X.AlgorithmIdentifier({algorithm:rt.id_ecPublicKey,parameters:T.AsnConvert.serialize(new rt.ECParameters({namedCurve:t}))})}}return null}toWebAlgorithm(e){switch(e.algorithm){case rt.id_ecdsaWithSHA1:return{name:ot,hash:{name:"SHA-1"}};case rt.id_ecdsaWithSHA256:return{name:ot,hash:{name:"SHA-256"}};case rt.id_ecdsaWithSHA384:return{name:ot,hash:{name:"SHA-384"}};case rt.id_ecdsaWithSHA512:return{name:ot,hash:{name:"SHA-512"}};case rt.id_ecPublicKey:{if(!e.parameters)throw new TypeError("Cannot get required parameters from EC algorithm");switch(T.AsnConvert.parse(e.parameters,rt.ECParameters).namedCurve){case rt.id_secp256r1:return{name:ot,namedCurve:"P-256"};case Lw.SECP256K1:return{name:ot,namedCurve:"K-256"};case rt.id_secp384r1:return{name:ot,namedCurve:"P-384"};case rt.id_secp521r1:return{name:ot,namedCurve:"P-521"};case DR:return{name:ot,namedCurve:YR};case qR:return{name:ot,namedCurve:XR};case jR:return{name:ot,namedCurve:QR};case MR:return{name:ot,namedCurve:ZR};case LR:return{name:ot,namedCurve:e2};case UR:return{name:ot,namedCurve:t2};case HR:return{name:ot,namedCurve:r2};case KR:return{name:ot,namedCurve:s2};case $R:return{name:ot,namedCurve:i2};case FR:return{name:ot,namedCurve:n2};case JR:return{name:ot,namedCurve:a2};case GR:return{name:ot,namedCurve:o2};case WR:return{name:ot,namedCurve:c2};case zR:return{name:ot,namedCurve:u2}}}}return null}};H.EcAlgorithm.SECP256K1="1.3.132.0.10";H.EcAlgorithm=Lw=R.__decorate([Je.injectable()],H.EcAlgorithm);Je.container.registerSingleton(rd,H.EcAlgorithm);var m2=Symbol("name"),g2=Symbol("value"),ge=class{constructor(e,t={},s=""){this[m2]=e,this[g2]=s;for(let i in t)this[i]=t[i]}};ge.NAME=m2;ge.VALUE=g2;var e_=class{static toTextObject(e){let t=new ge("Algorithm Identifier",{},Jr.toString(e.algorithm));if(e.parameters)if(e.algorithm===rt.id_ecPublicKey){let s=new H.EcAlgorithm().toWebAlgorithm(e);s&&"namedCurve"in s?t["Named Curve"]=s.namedCurve:t.Parameters=e.parameters}else t.Parameters=e.parameters;return t}},Jr=class{static toString(e){let t=this.items[e];return t||e}};Jr.items={[Fe.id_sha1]:"sha1",[Fe.id_sha224]:"sha224",[Fe.id_sha256]:"sha256",[Fe.id_sha384]:"sha384",[Fe.id_sha512]:"sha512",[Fe.id_rsaEncryption]:"rsaEncryption",[Fe.id_sha1WithRSAEncryption]:"sha1WithRSAEncryption",[Fe.id_sha224WithRSAEncryption]:"sha224WithRSAEncryption",[Fe.id_sha256WithRSAEncryption]:"sha256WithRSAEncryption",[Fe.id_sha384WithRSAEncryption]:"sha384WithRSAEncryption",[Fe.id_sha512WithRSAEncryption]:"sha512WithRSAEncryption",[rt.id_ecPublicKey]:"ecPublicKey",[rt.id_ecdsaWithSHA1]:"ecdsaWithSHA1",[rt.id_ecdsaWithSHA224]:"ecdsaWithSHA224",[rt.id_ecdsaWithSHA256]:"ecdsaWithSHA256",[rt.id_ecdsaWithSHA384]:"ecdsaWithSHA384",[rt.id_ecdsaWithSHA512]:"ecdsaWithSHA512",[O.id_kp_serverAuth]:"TLS WWW server authentication",[O.id_kp_clientAuth]:"TLS WWW client authentication",[O.id_kp_codeSigning]:"Code Signing",[O.id_kp_emailProtection]:"E-mail Protection",[O.id_kp_timeStamping]:"Time Stamping",[O.id_kp_OCSPSigning]:"OCSP Signing",[mr.id_signedData]:"Signed Data"};var ws=class{static serialize(e){return this.serializeObj(e).join(`
13
+ `)}static pad(e=0){return"".padStart(2*e," ")}static serializeObj(e,t=0){let s=[],i=this.pad(t++),n="",o=e[ge.VALUE];o&&(n=` ${o}`),s.push(`${i}${e[ge.NAME]}:${n}`),i=this.pad(t);for(let c in e){if(typeof c=="symbol")continue;let l=e[c],h=c?`${c}: `:"";if(typeof l=="string"||typeof l=="number"||typeof l=="boolean")s.push(`${i}${h}${l}`);else if(l instanceof Date)s.push(`${i}${h}${l.toUTCString()}`);else if(Array.isArray(l))for(let d of l)d[ge.NAME]=c,s.push(...this.serializeObj(d,t));else if(l instanceof ge)l[ge.NAME]=c,s.push(...this.serializeObj(l,t));else if(U.BufferSourceConverter.isBufferSource(l))c?(s.push(`${i}${h}`),s.push(...this.serializeBufferSource(l,t+1))):s.push(...this.serializeBufferSource(l,t));else if("toTextObject"in l){let d=l.toTextObject();d[ge.NAME]=c,s.push(...this.serializeObj(d,t))}else throw new TypeError("Cannot serialize data in text format. Unsupported type.")}return s}static serializeBufferSource(e,t=0){let s=this.pad(t),i=U.BufferSourceConverter.toUint8Array(e),n=[];for(let o=0;o<i.length;){let c=[];for(let l=0;l<16&&o<i.length;l++){l===8&&c.push("");let h=i[o++].toString(16).padStart(2,"0");c.push(h)}n.push(`${s}${c.join(" ")}`)}return n}static serializeAlgorithm(e){return this.algorithmSerializer.toTextObject(e)}};ws.oidSerializer=Jr;ws.algorithmSerializer=e_;var $f,Qs=class r{get rawData(){return R.__classPrivateFieldGet(this,$f,"f")||R.__classPrivateFieldSet(this,$f,T.AsnConvert.serialize(this.asn),"f"),R.__classPrivateFieldGet(this,$f,"f")}constructor(...e){$f.set(this,void 0),U.BufferSourceConverter.isBufferSource(e[0])?(this.asn=T.AsnConvert.parse(e[0],e[1]),R.__classPrivateFieldSet(this,$f,U.BufferSourceConverter.toArrayBuffer(e[0]),"f"),this.onInit(this.asn)):(this.asn=e[0],this.onInit(this.asn))}equal(e){return e instanceof r?U.isEqual(e.rawData,this.rawData):!1}toString(e="text"){switch(e){case"asn":return T.AsnConvert.toString(this.rawData);case"text":return ws.serialize(this.toTextObject());case"hex":return U.Convert.ToHex(this.rawData);case"base64":return U.Convert.ToBase64(this.rawData);case"base64url":return U.Convert.ToBase64Url(this.rawData);default:throw TypeError("Argument 'format' is unsupported value")}}getTextName(){return this.constructor.NAME}toTextObject(){let e=this.toTextObjectEmpty();return e[""]=this.rawData,e}toTextObjectEmpty(e){return new ge(this.getTextName(),{},e)}};$f=new WeakMap;Qs.NAME="ASN";var yr=class r extends Qs{constructor(...e){let t;U.BufferSourceConverter.isBufferSource(e[0])?t=U.BufferSourceConverter.toArrayBuffer(e[0]):t=T.AsnConvert.serialize(new X.Extension({extnID:e[0],critical:e[1],extnValue:new T.OctetString(U.BufferSourceConverter.toArrayBuffer(e[2]))})),super(t,X.Extension)}onInit(e){this.type=e.extnID,this.critical=e.critical,this.value=e.extnValue.buffer}toTextObject(){let e=this.toTextObjectWithoutValue();return e[""]=this.value,e}toTextObjectWithoutValue(){let e=this.toTextObjectEmpty(this.critical?"critical":void 0);return e[ge.NAME]===r.NAME&&(e[ge.NAME]=Jr.toString(this.type)),e}},y2,Qf=class r{static isCryptoKeyPair(e){return e&&e.privateKey&&e.publicKey}static isCryptoKey(e){return e&&e.usages&&e.type&&e.algorithm&&e.extractable!==void 0}constructor(){this.items=new Map,this[y2]="CryptoProvider",typeof self<"u"&&typeof crypto<"u"?this.set(r.DEFAULT,crypto):typeof global<"u"&&global.crypto&&global.crypto.subtle&&this.set(r.DEFAULT,global.crypto)}clear(){this.items.clear()}delete(e){return this.items.delete(e)}forEach(e,t){return this.items.forEach(e,t)}has(e){return this.items.has(e)}get size(){return this.items.size}entries(){return this.items.entries()}keys(){return this.items.keys()}values(){return this.items.values()}[Symbol.iterator](){return this.items[Symbol.iterator]()}get(e=r.DEFAULT){let t=this.items.get(e.toLowerCase());if(!t)throw new Error(`Cannot get Crypto by name '${e}'`);return t}set(e,t){if(typeof e=="string"){if(!t)throw new TypeError("Argument 'value' is required");this.items.set(e.toLowerCase(),t)}else this.items.set(r.DEFAULT,e);return this}};y2=Symbol.toStringTag;Qf.DEFAULT="default";var vt=new Qf,VL=/^[0-2](?:\.[1-9][0-9]*)+$/;function RL(r){return new RegExp(VL).test(r)}var bv=class{constructor(e={}){this.items={};for(let t in e)this.register(t,e[t])}get(e){return this.items[e]||null}findId(e){return RL(e)?e:this.get(e)}register(e,t){this.items[e]=t,this.items[t]=e}},vr=new bv;vr.register("CN","2.5.4.3");vr.register("L","2.5.4.7");vr.register("ST","2.5.4.8");vr.register("O","2.5.4.10");vr.register("OU","2.5.4.11");vr.register("C","2.5.4.6");vr.register("DC","0.9.2342.19200300.100.1.25");vr.register("E","1.2.840.113549.1.9.1");vr.register("G","2.5.4.42");vr.register("I","2.5.4.43");vr.register("SN","2.5.4.4");vr.register("T","2.5.4.12");function DL(r,e){return`\\${U.Convert.ToHex(U.Convert.FromUtf8String(e)).toUpperCase()}`}function qL(r){return r.replace(/([,+"\\<>;])/g,"\\$1").replace(/^([ #])/,"\\$1").replace(/([ ]$)/,"\\$1").replace(/([\r\n\t])/,DL)}var Tt=class r{static isASCII(e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>255)return!1;return!0}static isPrintableString(e){return/^[A-Za-z0-9 '()+,-./:=?]*$/g.test(e)}constructor(e,t={}){this.extraNames=new bv,this.asn=new X.Name;for(let s in t)if(Object.prototype.hasOwnProperty.call(t,s)){let i=t[s];this.extraNames.register(s,i)}typeof e=="string"?this.asn=this.fromString(e):e instanceof X.Name?this.asn=e:U.BufferSourceConverter.isBufferSource(e)?this.asn=T.AsnConvert.parse(e,X.Name):this.asn=this.fromJSON(e)}getField(e){let t=this.extraNames.findId(e)||vr.findId(e),s=[];for(let i of this.asn)for(let n of i)n.type===t&&s.push(n.value.toString());return s}getName(e){return this.extraNames.get(e)||vr.get(e)}toString(){return this.asn.map(e=>e.map(t=>{let s=this.getName(t.type)||t.type,i=t.value.anyValue?`#${U.Convert.ToHex(t.value.anyValue)}`:qL(t.value.toString());return`${s}=${i}`}).join("+")).join(", ")}toJSON(){var e;let t=[];for(let s of this.asn){let i={};for(let n of s){let o=this.getName(n.type)||n.type;(e=i[o])!==null&&e!==void 0||(i[o]=[]),i[o].push(n.value.anyValue?`#${U.Convert.ToHex(n.value.anyValue)}`:n.value.toString())}t.push(i)}return t}fromString(e){let t=new X.Name,s=/(\d\.[\d.]*\d|[A-Za-z]+)=((?:"")|(?:".*?[^\\]")|(?:[^,+"\\](?=[,+]|$))|(?:[^,+].*?(?:[^\\][,+]))|(?:))([,+])?/g,i=null,n=",";for(;i=s.exec(`${e},`);){let[,o,c]=i,l=c[c.length-1];(l===","||l==="+")&&(c=c.slice(0,c.length-1),i[3]=l);let h=i[3];o=this.getTypeOid(o);let d=this.createAttribute(o,c);n==="+"?t[t.length-1].push(d):t.push(new X.RelativeDistinguishedName([d])),n=h}return t}fromJSON(e){let t=new X.Name;for(let s of e){let i=new X.RelativeDistinguishedName;for(let n in s){let o=this.getTypeOid(n),c=s[n];for(let l of c){let h=this.createAttribute(o,l);i.push(h)}}t.push(i)}return t}getTypeOid(e){if(/[\d.]+/.test(e)||(e=this.getName(e)||""),!e)throw new Error(`Cannot get OID for name type '${e}'`);return e}createAttribute(e,t){let s=new X.AttributeTypeAndValue({type:e});if(typeof t=="object")for(let i in t)switch(i){case"ia5String":s.value.ia5String=t[i];break;case"utf8String":s.value.utf8String=t[i];break;case"universalString":s.value.universalString=t[i];break;case"bmpString":s.value.bmpString=t[i];break;case"printableString":s.value.printableString=t[i];break}else if(t[0]==="#")s.value.anyValue=U.Convert.FromHex(t.slice(1));else{let i=this.processStringValue(t);e===this.getName("E")||e===this.getName("DC")?s.value.ia5String=i:r.isPrintableString(i)?s.value.printableString=i:s.value.utf8String=i}return s}processStringValue(e){let t=/"(.*?[^\\])?"/.exec(e);return t&&(e=t[1]),e.replace(/\\0a/ig,`
14
+ `).replace(/\\0d/ig,"\r").replace(/\\0g/ig," ").replace(/\\(.)/g,"$1")}toArrayBuffer(){return T.AsnConvert.serialize(this.asn)}async getThumbprint(e,t){let s,i="SHA-1";return e&&(typeof e=="object"&&"subtle"in e?s=e:(i=e,s=t)),s??(s=vt.get()),await s.subtle.digest(i,this.toArrayBuffer())}},v2="Cannot initialize GeneralName from ASN.1 data.",l2=`${v2} Unsupported string format in use.`,jL=`${v2} Value doesn't match to GUID regular expression.`,h2=/^([0-9a-f]{8})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{12})$/i,f2="1.3.6.1.4.1.311.25.1",d2="1.3.6.1.4.1.311.20.2.3",Uw="dns",Hw="dn",Kw="email",$w="ip",Fw="url",Jw="guid",Gw="upn",zy="id",vs=class extends Qs{constructor(...e){let t;if(e.length===2)switch(e[0]){case Hw:{let s=new Tt(e[1]).toArrayBuffer(),i=T.AsnConvert.parse(s,O.Name);t=new O.GeneralName({directoryName:i});break}case Uw:t=new O.GeneralName({dNSName:e[1]});break;case Kw:t=new O.GeneralName({rfc822Name:e[1]});break;case Jw:{let s=new RegExp(h2,"i").exec(e[1]);if(!s)throw new Error("Cannot parse GUID value. Value doesn't match to regular expression");let i=s.slice(1).map((n,o)=>o<3?U.Convert.ToHex(new Uint8Array(U.Convert.FromHex(n)).reverse()):n).join("");t=new O.GeneralName({otherName:new O.OtherName({typeId:f2,value:T.AsnConvert.serialize(new T.OctetString(U.Convert.FromHex(i)))})});break}case $w:t=new O.GeneralName({iPAddress:e[1]});break;case zy:t=new O.GeneralName({registeredID:e[1]});break;case Gw:{t=new O.GeneralName({otherName:new O.OtherName({typeId:d2,value:T.AsnConvert.serialize(T.AsnUtf8StringConverter.toASN(e[1]))})});break}case Fw:t=new O.GeneralName({uniformResourceIdentifier:e[1]});break;default:throw new Error("Cannot create GeneralName. Unsupported type of the name")}else U.BufferSourceConverter.isBufferSource(e[0])?t=T.AsnConvert.parse(e[0],O.GeneralName):t=e[0];super(t)}onInit(e){if(e.dNSName!=null)this.type=Uw,this.value=e.dNSName;else if(e.rfc822Name!=null)this.type=Kw,this.value=e.rfc822Name;else if(e.iPAddress!=null)this.type=$w,this.value=e.iPAddress;else if(e.uniformResourceIdentifier!=null)this.type=Fw,this.value=e.uniformResourceIdentifier;else if(e.registeredID!=null)this.type=zy,this.value=e.registeredID;else if(e.directoryName!=null)this.type=Hw,this.value=new Tt(e.directoryName).toString();else if(e.otherName!=null)if(e.otherName.typeId===f2){this.type=Jw;let t=T.AsnConvert.parse(e.otherName.value,T.OctetString),s=new RegExp(h2,"i").exec(U.Convert.ToHex(t));if(!s)throw new Error(jL);this.value=s.slice(1).map((i,n)=>n<3?U.Convert.ToHex(new Uint8Array(U.Convert.FromHex(i)).reverse()):i).join("-")}else if(e.otherName.typeId===d2)this.type=Gw,this.value=T.AsnConvert.parse(e.otherName.value,O.DirectoryString).toString();else throw new Error(l2);else throw new Error(l2)}toJSON(){return{type:this.type,value:this.value}}toTextObject(){let e;switch(this.type){case Hw:case Uw:case Jw:case $w:case zy:case Gw:case Fw:e=this.type.toUpperCase();break;case Kw:e="Email";break;default:throw new Error("Unsupported GeneralName type")}let t=this.value;return this.type===zy&&(t=Jr.toString(t)),new ge(e,void 0,t)}},Zs=class extends Qs{constructor(e){let t;if(e instanceof O.GeneralNames)t=e;else if(Array.isArray(e)){let s=[];for(let i of e)if(i instanceof O.GeneralName)s.push(i);else{let n=T.AsnConvert.parse(new vs(i.type,i.value).rawData,O.GeneralName);s.push(n)}t=new O.GeneralNames(s)}else if(U.BufferSourceConverter.isBufferSource(e))t=T.AsnConvert.parse(e,O.GeneralNames);else throw new Error("Cannot initialize GeneralNames. Incorrect incoming arguments");super(t)}onInit(e){let t=[];for(let s of e){let i=null;try{i=new vs(s)}catch{continue}t.push(i)}this.items=t}toJSON(){return this.items.map(e=>e.toJSON())}toTextObject(){let e=super.toTextObjectEmpty();for(let t of this.items){let s=t.toTextObject(),i=e[s[ge.NAME]];Array.isArray(i)||(i=[],e[s[ge.NAME]]=i),i.push(s)}return e}};Zs.NAME="GeneralNames";var _v="-{5}",Cv="\\n",ML=`[^${Cv}]+`,LL=`${_v}BEGIN (${ML}(?=${_v}))${_v}`,UL=`${_v}END \\1${_v}`,Zf="\\n",HL=`[^:${Cv}]+`,KL=`(?:[^${Cv}]+${Zf}(?: +[^${Cv}]+${Zf})*)`,$L="[a-zA-Z0-9=+/]+",FL=`(?:${$L}${Zf})+`,p2=`${LL}${Zf}(?:((?:${HL}: ${KL})+))?${Zf}?(${FL})${UL}`,JL=new RegExp(`[${Cv}]+`,"g"),jt=class{static isPem(e){return typeof e=="string"&&new RegExp(p2,"g").test(e.replace(/\r/g,""))}static decodeWithHeaders(e){e=e.replace(/\r/g,"");let t=new RegExp(p2,"g"),s=[],i=null;for(;i=t.exec(e);){let n=i[3].replace(JL,""),o={type:i[1],headers:[],rawData:U.Convert.FromBase64(n)},c=i[2];if(c){let l=c.split(new RegExp(Zf,"g")),h=null;for(let d of l){let[m,p]=d.split(/:(.*)/);if(p===void 0){if(!h)throw new Error("Cannot parse PEM string. Incorrect header value");h.value+=m.trim()}else h&&o.headers.push(h),h={key:m,value:p.trim()}}h&&o.headers.push(h)}s.push(o)}return s}static decode(e){return this.decodeWithHeaders(e).map(s=>s.rawData)}static decodeFirst(e){let t=this.decode(e);if(!t.length)throw new RangeError("PEM string doesn't contain any objects");return t[0]}static encode(e,t){if(Array.isArray(e)){let s=new Array;return t?e.forEach(i=>{if(!U.BufferSourceConverter.isBufferSource(i))throw new TypeError("Cannot encode array of BufferSource in PEM format. Not all items of the array are BufferSource");s.push(this.encodeStruct({type:t,rawData:U.BufferSourceConverter.toArrayBuffer(i)}))}):e.forEach(i=>{if(!("type"in i))throw new TypeError("Cannot encode array of PemStruct in PEM format. Not all items of the array are PemStrut");s.push(this.encodeStruct(i))}),s.join(`
15
+ `)}else{if(!t)throw new Error("Required argument 'tag' is missed");return this.encodeStruct({type:t,rawData:U.BufferSourceConverter.toArrayBuffer(e)})}}static encodeStruct(e){var t;let s=e.type.toLocaleUpperCase(),i=[];if(i.push(`-----BEGIN ${s}-----`),!((t=e.headers)===null||t===void 0)&&t.length){for(let o of e.headers)i.push(`${o.key}: ${o.value}`);i.push("")}let n=U.Convert.ToBase64(e.rawData);for(let o=0;o<n.length;o+=64)i.push(n.substring(o,o+64));return i.push(`-----END ${s}-----`),i.join(`
16
+ `)}};jt.CertificateTag="CERTIFICATE";jt.CrlTag="CRL";jt.CertificateRequestTag="CERTIFICATE REQUEST";jt.PublicKeyTag="PUBLIC KEY";jt.PrivateKeyTag="PRIVATE KEY";var Sr=class r extends Qs{static isAsnEncoded(e){return U.BufferSourceConverter.isBufferSource(e)||typeof e=="string"}static toArrayBuffer(e){if(typeof e=="string"){if(jt.isPem(e))return jt.decode(e)[0];if(U.Convert.isHex(e))return U.Convert.FromHex(e);if(U.Convert.isBase64(e))return U.Convert.FromBase64(e);if(U.Convert.isBase64Url(e))return U.Convert.FromBase64Url(e);throw new TypeError("Unsupported format of 'raw' argument. Must be one of DER, PEM, HEX, Base64, or Base4Url")}else{let t=U.BufferSourceConverter.toUint8Array(e);if(t.length>0&&t[0]===48)return U.BufferSourceConverter.toArrayBuffer(e);let s=U.Convert.ToBinary(e);if(jt.isPem(s))return jt.decode(s)[0];if(U.Convert.isHex(s))return U.Convert.FromHex(s);if(U.Convert.isBase64(s))return U.Convert.FromBase64(s);if(U.Convert.isBase64Url(s))return U.Convert.FromBase64Url(s);throw new TypeError("Unsupported format of 'raw' argument. Must be one of DER, PEM, HEX, Base64, or Base4Url")}}constructor(...e){r.isAsnEncoded(e[0])?super(r.toArrayBuffer(e[0]),e[1]):super(e[0])}toString(e="pem"){return e==="pem"?jt.encode(this.rawData,this.tag):super.toString(e)}},Ss=class r extends Sr{static async create(e,t=vt.get()){if(e instanceof r)return e;if(Qf.isCryptoKey(e)){if(e.type!=="public")throw new TypeError("Public key is required");let s=await t.subtle.exportKey("spki",e);return new r(s)}else{if(e.publicKey)return e.publicKey;if(U.BufferSourceConverter.isBufferSource(e))return new r(e);throw new TypeError("Unsupported PublicKeyType")}}constructor(e){Sr.isAsnEncoded(e)?super(e,X.SubjectPublicKeyInfo):super(e),this.tag=jt.PublicKeyTag}async export(e,t,s){let i,n=["verify"],o={hash:"SHA-256",...this.algorithm};t?(o=e,n=t,i=s):i=e,i??(i=vt.get());let c=this.rawData,l=T.AsnConvert.parse(this.rawData,X.SubjectPublicKeyInfo);return l.algorithm.algorithm===gr.id_RSASSA_PSS&&(c=GL(l,c)),i.subtle.importKey("spki",c,o,!0,n)}onInit(e){let t=Je.container.resolve(As),s=this.algorithm=t.toWebAlgorithm(e.algorithm);if(e.algorithm.algorithm===gr.id_rsaEncryption){let i=T.AsnConvert.parse(e.subjectPublicKey,gr.RSAPublicKey),n=U.BufferSourceConverter.toUint8Array(i.modulus);s.publicExponent=U.BufferSourceConverter.toUint8Array(i.publicExponent),s.modulusLength=(n[0]?n:n.slice(1)).byteLength<<3}}async getThumbprint(e,t){let s,i="SHA-1";return e&&(typeof e=="object"&&"subtle"in e?s=e:(i=e,s=t)),s??(s=vt.get()),await s.subtle.digest(i,this.rawData)}async getKeyIdentifier(e,t){let s,i="SHA-1";e&&(typeof e=="object"&&"subtle"in e?s=e:(i=e,s=t)),s??(s=vt.get());let n=T.AsnConvert.parse(this.rawData,X.SubjectPublicKeyInfo);return await s.subtle.digest(i,n.subjectPublicKey)}toTextObject(){let e=this.toTextObjectEmpty(),t=T.AsnConvert.parse(this.rawData,X.SubjectPublicKeyInfo);switch(e.Algorithm=ws.serializeAlgorithm(t.algorithm),t.algorithm.algorithm){case Xw.id_ecPublicKey:e["EC Point"]=t.subjectPublicKey;break;case gr.id_rsaEncryption:default:e["Raw Data"]=t.subjectPublicKey}return e}};function GL(r,e){return r.algorithm=new X.AlgorithmIdentifier({algorithm:gr.id_rsaEncryption,parameters:null}),e=T.AsnConvert.serialize(r),e}var Pv=class r extends yr{static async create(e,t=!1,s=vt.get()){if("name"in e&&"serialNumber"in e)return new r(e,t);let n=await(await Ss.create(e,s)).getKeyIdentifier(s);return new r(U.Convert.ToHex(n),t)}constructor(...e){if(U.BufferSourceConverter.isBufferSource(e[0]))super(e[0]);else if(typeof e[0]=="string"){let t=new O.AuthorityKeyIdentifier({keyIdentifier:new O.KeyIdentifier(U.Convert.FromHex(e[0]))});super(O.id_ce_authorityKeyIdentifier,e[1],T.AsnConvert.serialize(t))}else{let t=e[0],s=t.name instanceof Zs?T.AsnConvert.parse(t.name.rawData,O.GeneralNames):t.name,i=new O.AuthorityKeyIdentifier({authorityCertIssuer:s,authorityCertSerialNumber:U.Convert.FromHex(t.serialNumber)});super(O.id_ce_authorityKeyIdentifier,e[1],T.AsnConvert.serialize(i))}}onInit(e){super.onInit(e);let t=T.AsnConvert.parse(e.extnValue,O.AuthorityKeyIdentifier);t.keyIdentifier&&(this.keyId=U.Convert.ToHex(t.keyIdentifier)),(t.authorityCertIssuer||t.authorityCertSerialNumber)&&(this.certId={name:t.authorityCertIssuer||[],serialNumber:t.authorityCertSerialNumber?U.Convert.ToHex(t.authorityCertSerialNumber):""})}toTextObject(){let e=this.toTextObjectWithoutValue(),t=T.AsnConvert.parse(this.value,O.AuthorityKeyIdentifier);return t.authorityCertIssuer&&(e["Authority Issuer"]=new Zs(t.authorityCertIssuer).toTextObject()),t.authorityCertSerialNumber&&(e["Authority Serial Number"]=t.authorityCertSerialNumber),t.keyIdentifier&&(e[""]=t.keyIdentifier),e}};Pv.NAME="Authority Key Identifier";var Iv=class extends yr{constructor(...e){if(U.BufferSourceConverter.isBufferSource(e[0])){super(e[0]);let t=T.AsnConvert.parse(this.value,X.BasicConstraints);this.ca=t.cA,this.pathLength=t.pathLenConstraint}else{let t=new X.BasicConstraints({cA:e[0],pathLenConstraint:e[1]});super(X.id_ce_basicConstraints,e[2],T.AsnConvert.serialize(t)),this.ca=e[0],this.pathLength=e[1]}}toTextObject(){let e=this.toTextObjectWithoutValue();return this.ca&&(e.CA=this.ca),this.pathLength!==void 0&&(e["Path Length"]=this.pathLength),e}};Iv.NAME="Basic Constraints";H.ExtendedKeyUsage=void 0;(function(r){r.serverAuth="1.3.6.1.5.5.7.3.1",r.clientAuth="1.3.6.1.5.5.7.3.2",r.codeSigning="1.3.6.1.5.5.7.3.3",r.emailProtection="1.3.6.1.5.5.7.3.4",r.timeStamping="1.3.6.1.5.5.7.3.8",r.ocspSigning="1.3.6.1.5.5.7.3.9"})(H.ExtendedKeyUsage||(H.ExtendedKeyUsage={}));var Ev=class extends yr{constructor(...e){if(U.BufferSourceConverter.isBufferSource(e[0])){super(e[0]);let t=T.AsnConvert.parse(this.value,O.ExtendedKeyUsage);this.usages=t.map(s=>s)}else{let t=new O.ExtendedKeyUsage(e[0]);super(O.id_ce_extKeyUsage,e[1],T.AsnConvert.serialize(t)),this.usages=e[0]}}toTextObject(){let e=this.toTextObjectWithoutValue();return e[""]=this.usages.map(t=>Jr.toString(t)).join(", "),e}};Ev.NAME="Extended Key Usages";H.KeyUsageFlags=void 0;(function(r){r[r.digitalSignature=1]="digitalSignature",r[r.nonRepudiation=2]="nonRepudiation",r[r.keyEncipherment=4]="keyEncipherment",r[r.dataEncipherment=8]="dataEncipherment",r[r.keyAgreement=16]="keyAgreement",r[r.keyCertSign=32]="keyCertSign",r[r.cRLSign=64]="cRLSign",r[r.encipherOnly=128]="encipherOnly",r[r.decipherOnly=256]="decipherOnly"})(H.KeyUsageFlags||(H.KeyUsageFlags={}));var kv=class extends yr{constructor(...e){if(U.BufferSourceConverter.isBufferSource(e[0])){super(e[0]);let t=T.AsnConvert.parse(this.value,X.KeyUsage);this.usages=t.toNumber()}else{let t=new X.KeyUsage(e[0]);super(X.id_ce_keyUsage,e[1],T.AsnConvert.serialize(t)),this.usages=e[0]}}toTextObject(){let e=this.toTextObjectWithoutValue(),t=T.AsnConvert.parse(this.value,X.KeyUsage);return e[""]=t.toJSON().join(", "),e}};kv.NAME="Key Usages";var Nv=class r extends yr{static async create(e,t=!1,s=vt.get()){let n=await(await Ss.create(e,s)).getKeyIdentifier(s);return new r(U.Convert.ToHex(n),t)}constructor(...e){if(U.BufferSourceConverter.isBufferSource(e[0])){super(e[0]);let t=T.AsnConvert.parse(this.value,O.SubjectKeyIdentifier);this.keyId=U.Convert.ToHex(t)}else{let t=typeof e[0]=="string"?U.Convert.FromHex(e[0]):e[0],s=new O.SubjectKeyIdentifier(t);super(O.id_ce_subjectKeyIdentifier,e[1],T.AsnConvert.serialize(s)),this.keyId=U.Convert.ToHex(t)}}toTextObject(){let e=this.toTextObjectWithoutValue(),t=T.AsnConvert.parse(this.value,O.SubjectKeyIdentifier);return e[""]=t,e}};Nv.NAME="Subject Key Identifier";var Bv=class extends yr{constructor(...e){U.BufferSourceConverter.isBufferSource(e[0])?super(e[0]):super(O.id_ce_subjectAltName,e[1],new Zs(e[0]||[]).rawData)}onInit(e){super.onInit(e);let t=T.AsnConvert.parse(e.extnValue,O.SubjectAlternativeName);this.names=new Zs(t)}toTextObject(){let e=this.toTextObjectWithoutValue(),t=this.names.toTextObject();for(let s in t)e[s]=t[s];return e}};Bv.NAME="Subject Alternative Name";var Mt=class{static register(e,t){this.items.set(e,t)}static create(e){let t=new yr(e),s=this.items.get(t.type);return s?new s(e):t}};Mt.items=new Map;var xv=class extends yr{constructor(...e){var t;if(U.BufferSourceConverter.isBufferSource(e[0])){super(e[0]);let s=T.AsnConvert.parse(this.value,O.CertificatePolicies);this.policies=s.map(i=>i.policyIdentifier)}else{let s=e[0],i=(t=e[1])!==null&&t!==void 0?t:!1,n=new O.CertificatePolicies(s.map(o=>new O.PolicyInformation({policyIdentifier:o})));super(O.id_ce_certificatePolicies,i,T.AsnConvert.serialize(n)),this.policies=s}}toTextObject(){let e=this.toTextObjectWithoutValue();return e.Policy=this.policies.map(t=>new ge("",{},Jr.toString(t))),e}};xv.NAME="Certificate Policies";Mt.register(O.id_ce_certificatePolicies,xv);var Ov=class extends yr{constructor(...e){var t;if(U.BufferSourceConverter.isBufferSource(e[0]))super(e[0]);else if(Array.isArray(e[0])&&typeof e[0][0]=="string"){let i=e[0].map(o=>new O.DistributionPoint({distributionPoint:new O.DistributionPointName({fullName:[new O.GeneralName({uniformResourceIdentifier:o})]})})),n=new O.CRLDistributionPoints(i);super(O.id_ce_cRLDistributionPoints,e[1],T.AsnConvert.serialize(n))}else{let s=new O.CRLDistributionPoints(e[0]);super(O.id_ce_cRLDistributionPoints,e[1],T.AsnConvert.serialize(s))}(t=this.distributionPoints)!==null&&t!==void 0||(this.distributionPoints=[])}onInit(e){super.onInit(e);let t=T.AsnConvert.parse(e.extnValue,O.CRLDistributionPoints);this.distributionPoints=t}toTextObject(){let e=this.toTextObjectWithoutValue();return e["Distribution Point"]=this.distributionPoints.map(t=>{var s;let i=new ge("");return!((s=t.distributionPoint)===null||s===void 0)&&s.fullName&&(i[""]=t.distributionPoint.fullName.map(n=>new vs(n).toString()).join(", ")),t.reasons&&(i.Reasons=t.reasons.toString()),t.cRLIssuer&&(i["CRL Issuer"]=t.cRLIssuer.map(n=>n.toString()).join(", ")),i}),e}};Ov.NAME="CRL Distribution Points";var Tv=class extends yr{constructor(...e){var t,s,i,n;if(U.BufferSourceConverter.isBufferSource(e[0]))super(e[0]);else if(e[0]instanceof O.AuthorityInfoAccessSyntax){let o=new O.AuthorityInfoAccessSyntax(e[0]);super(O.id_pe_authorityInfoAccess,e[1],T.AsnConvert.serialize(o))}else{let o=e[0],c=new O.AuthorityInfoAccessSyntax;Mw(c,o,O.id_ad_ocsp,"ocsp"),Mw(c,o,O.id_ad_caIssuers,"caIssuers"),Mw(c,o,O.id_ad_timeStamping,"timeStamping"),Mw(c,o,O.id_ad_caRepository,"caRepository"),super(O.id_pe_authorityInfoAccess,e[1],T.AsnConvert.serialize(c))}(t=this.ocsp)!==null&&t!==void 0||(this.ocsp=[]),(s=this.caIssuers)!==null&&s!==void 0||(this.caIssuers=[]),(i=this.timeStamping)!==null&&i!==void 0||(this.timeStamping=[]),(n=this.caRepository)!==null&&n!==void 0||(this.caRepository=[])}onInit(e){super.onInit(e),this.ocsp=[],this.caIssuers=[],this.timeStamping=[],this.caRepository=[],T.AsnConvert.parse(e.extnValue,O.AuthorityInfoAccessSyntax).forEach(s=>{switch(s.accessMethod){case O.id_ad_ocsp:this.ocsp.push(new vs(s.accessLocation));break;case O.id_ad_caIssuers:this.caIssuers.push(new vs(s.accessLocation));break;case O.id_ad_timeStamping:this.timeStamping.push(new vs(s.accessLocation));break;case O.id_ad_caRepository:this.caRepository.push(new vs(s.accessLocation));break}})}toTextObject(){let e=this.toTextObjectWithoutValue();return this.ocsp.length&&jw(e,"OCSP",this.ocsp),this.caIssuers.length&&jw(e,"CA Issuers",this.caIssuers),this.timeStamping.length&&jw(e,"Time Stamping",this.timeStamping),this.caRepository.length&&jw(e,"CA Repository",this.caRepository),e}};Tv.NAME="Authority Info Access";function jw(r,e,t){if(t.length===1)r[e]=t[0].toTextObject();else{let s=new ge("");t.forEach((i,n)=>{let o=i.toTextObject(),c=`${o[ge.NAME]} ${n+1}`,l=s[c];Array.isArray(l)||(l=[],s[c]=l),l.push(o)}),r[e]=s}}function Mw(r,e,t,s){let i=e[s];i&&(Array.isArray(i)?i:[i]).forEach(o=>{typeof o=="string"&&(o=new vs("url",o)),r.push(new O.AccessDescription({accessMethod:t,accessLocation:T.AsnConvert.parse(o.rawData,O.GeneralName)}))})}var Vv=class extends yr{constructor(...e){U.BufferSourceConverter.isBufferSource(e[0])?super(e[0]):super(O.id_ce_issuerAltName,e[1],new Zs(e[0]||[]).rawData)}onInit(e){super.onInit(e);let t=T.AsnConvert.parse(e.extnValue,O.GeneralNames);this.names=new Zs(t)}toTextObject(){let e=this.toTextObjectWithoutValue(),t=this.names.toTextObject();for(let s in t)e[s]=t[s];return e}};Vv.NAME="Issuer Alternative Name";var lu=class r extends Qs{constructor(...e){let t;if(U.BufferSourceConverter.isBufferSource(e[0]))t=U.BufferSourceConverter.toArrayBuffer(e[0]);else{let s=e[0],i=Array.isArray(e[1])?e[1].map(n=>U.BufferSourceConverter.toArrayBuffer(n)):[];t=T.AsnConvert.serialize(new X.Attribute({type:s,values:i}))}super(t,X.Attribute)}onInit(e){this.type=e.type,this.values=e.values}toTextObject(){let e=this.toTextObjectWithoutValue();return e.Value=this.values.map(t=>new ge("",{"":t})),e}toTextObjectWithoutValue(){let e=this.toTextObjectEmpty();return e[ge.NAME]===r.NAME&&(e[ge.NAME]=Jr.toString(this.type)),e}};lu.NAME="Attribute";var Rv=class extends lu{constructor(...e){var t;if(U.BufferSourceConverter.isBufferSource(e[0]))super(e[0]);else{let s=new Xf.ChallengePassword({printableString:e[0]});super(Xf.id_pkcs9_at_challengePassword,[T.AsnConvert.serialize(s)])}(t=this.password)!==null&&t!==void 0||(this.password="")}onInit(e){if(super.onInit(e),this.values[0]){let t=T.AsnConvert.parse(this.values[0],Xf.ChallengePassword);this.password=t.toString()}}toTextObject(){let e=this.toTextObjectWithoutValue();return e[ge.VALUE]=this.password,e}};Rv.NAME="Challenge Password";var ed=class extends lu{constructor(...e){var t;if(U.BufferSourceConverter.isBufferSource(e[0]))super(e[0]);else{let s=e[0],i=new O.Extensions;for(let n of s)i.push(T.AsnConvert.parse(n.rawData,O.Extension));super(Xf.id_pkcs9_at_extensionRequest,[T.AsnConvert.serialize(i)])}(t=this.items)!==null&&t!==void 0||(this.items=[])}onInit(e){if(super.onInit(e),this.values[0]){let t=T.AsnConvert.parse(this.values[0],O.Extensions);this.items=t.map(s=>Mt.create(T.AsnConvert.serialize(s)))}}toTextObject(){let e=this.toTextObjectWithoutValue(),t=this.items.map(s=>s.toTextObject());for(let s of t)e[s[ge.NAME]]=s;return e}};ed.NAME="Extensions";var hu=class{static register(e,t){this.items.set(e,t)}static create(e){let t=new lu(e),s=this.items.get(t.type);return s?new s(e):t}};hu.items=new Map;var Wi="crypto.signatureFormatter",t_=class{toAsnSignature(e,t){return U.BufferSourceConverter.toArrayBuffer(t)}toWebSignature(e,t){return U.BufferSourceConverter.toArrayBuffer(t)}},Ww;H.RsaAlgorithm=Ww=class{static createPssParams(e,t){let s=Ww.getHashAlgorithm(e);return s?new Fe.RsaSaPssParams({hashAlgorithm:s,maskGenAlgorithm:new X.AlgorithmIdentifier({algorithm:Fe.id_mgf1,parameters:T.AsnConvert.serialize(s)}),saltLength:t}):null}static getHashAlgorithm(e){let t=Je.container.resolve(As);return typeof e=="string"?t.toAsnAlgorithm({name:e}):typeof e=="object"&&e&&"name"in e?t.toAsnAlgorithm(e):null}toAsnAlgorithm(e){switch(e.name.toLowerCase()){case"rsassa-pkcs1-v1_5":if("hash"in e){let t;if(typeof e.hash=="string")t=e.hash;else if(e.hash&&typeof e.hash=="object"&&"name"in e.hash&&typeof e.hash.name=="string")t=e.hash.name.toUpperCase();else throw new Error("Cannot get hash algorithm name");switch(t.toLowerCase()){case"sha-1":return new X.AlgorithmIdentifier({algorithm:Fe.id_sha1WithRSAEncryption,parameters:null});case"sha-256":return new X.AlgorithmIdentifier({algorithm:Fe.id_sha256WithRSAEncryption,parameters:null});case"sha-384":return new X.AlgorithmIdentifier({algorithm:Fe.id_sha384WithRSAEncryption,parameters:null});case"sha-512":return new X.AlgorithmIdentifier({algorithm:Fe.id_sha512WithRSAEncryption,parameters:null})}}else return new X.AlgorithmIdentifier({algorithm:Fe.id_rsaEncryption,parameters:null});break;case"rsa-pss":if("hash"in e){if(!("saltLength"in e&&typeof e.saltLength=="number"))throw new Error("Cannot get 'saltLength' from 'alg' argument");let t=Ww.createPssParams(e.hash,e.saltLength);if(!t)throw new Error("Cannot create PSS parameters");return new X.AlgorithmIdentifier({algorithm:Fe.id_RSASSA_PSS,parameters:T.AsnConvert.serialize(t)})}else return new X.AlgorithmIdentifier({algorithm:Fe.id_RSASSA_PSS,parameters:null})}return null}toWebAlgorithm(e){switch(e.algorithm){case Fe.id_rsaEncryption:return{name:"RSASSA-PKCS1-v1_5"};case Fe.id_sha1WithRSAEncryption:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-1"}};case Fe.id_sha256WithRSAEncryption:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case Fe.id_sha384WithRSAEncryption:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-384"}};case Fe.id_sha512WithRSAEncryption:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-512"}};case Fe.id_RSASSA_PSS:if(e.parameters){let t=T.AsnConvert.parse(e.parameters,Fe.RsaSaPssParams);return{name:"RSA-PSS",hash:Je.container.resolve(As).toWebAlgorithm(t.hashAlgorithm),saltLength:t.saltLength}}else return{name:"RSA-PSS"}}return null}};H.RsaAlgorithm=Ww=R.__decorate([Je.injectable()],H.RsaAlgorithm);Je.container.registerSingleton(rd,H.RsaAlgorithm);H.ShaAlgorithm=class{toAsnAlgorithm(e){switch(e.name.toLowerCase()){case"sha-1":return new X.AlgorithmIdentifier({algorithm:gr.id_sha1});case"sha-256":return new X.AlgorithmIdentifier({algorithm:gr.id_sha256});case"sha-384":return new X.AlgorithmIdentifier({algorithm:gr.id_sha384});case"sha-512":return new X.AlgorithmIdentifier({algorithm:gr.id_sha512})}return null}toWebAlgorithm(e){switch(e.algorithm){case gr.id_sha1:return{name:"SHA-1"};case gr.id_sha256:return{name:"SHA-256"};case gr.id_sha384:return{name:"SHA-384"};case gr.id_sha512:return{name:"SHA-512"}}return null}};H.ShaAlgorithm=R.__decorate([Je.injectable()],H.ShaAlgorithm);Je.container.registerSingleton(rd,H.ShaAlgorithm);var ei=class r{addPadding(e,t){let s=U.BufferSourceConverter.toUint8Array(t),i=new Uint8Array(e);return i.set(s,e-s.length),i.buffer}removePadding(e,t=!1){let s=U.BufferSourceConverter.toUint8Array(e);for(let i=0;i<s.length;i++)if(s[i]){s=s.slice(i);break}if(t&&s[0]>127){let i=new Uint8Array(s.length+1);return i.set(s,1),i.buffer}return s.buffer}toAsnSignature(e,t){if(e.name==="ECDSA"){let s=e.namedCurve,i=r.namedCurveSize.get(s)||r.defaultNamedCurveSize,n=new Xw.ECDSASigValue,o=U.BufferSourceConverter.toUint8Array(t);return n.r=this.removePadding(o.slice(0,i),!0),n.s=this.removePadding(o.slice(i,i+i),!0),T.AsnConvert.serialize(n)}return null}toWebSignature(e,t){if(e.name==="ECDSA"){let s=T.AsnConvert.parse(t,Xw.ECDSASigValue),i=e.namedCurve,n=r.namedCurveSize.get(i)||r.defaultNamedCurveSize,o=this.addPadding(n,this.removePadding(s.r)),c=this.addPadding(n,this.removePadding(s.s));return U.combine(o,c)}return null}};ei.namedCurveSize=new Map;ei.defaultNamedCurveSize=32;var zw="1.3.101.110",Mk="1.3.101.111",Yw="1.3.101.112",Lk="1.3.101.113";H.EdAlgorithm=class{toAsnAlgorithm(e){let t=null;switch(e.name.toLowerCase()){case"ed25519":t=Yw;break;case"x25519":t=zw;break;case"eddsa":switch(e.namedCurve.toLowerCase()){case"ed25519":t=Yw;break;case"ed448":t=Lk;break}break;case"ecdh-es":switch(e.namedCurve.toLowerCase()){case"x25519":t=zw;break;case"x448":t=Mk;break}}return t?new X.AlgorithmIdentifier({algorithm:t}):null}toWebAlgorithm(e){switch(e.algorithm){case Yw:return{name:"Ed25519"};case Lk:return{name:"EdDSA",namedCurve:"Ed448"};case zw:return{name:"X25519"};case Mk:return{name:"ECDH-ES",namedCurve:"X448"}}return null}};H.EdAlgorithm=R.__decorate([Je.injectable()],H.EdAlgorithm);Je.container.registerSingleton(rd,H.EdAlgorithm);var Yy,Xy,Qy,Zy,ev,tv,rv,Ff,Dv=class extends Sr{get subjectName(){return R.__classPrivateFieldGet(this,Xy,"f")||R.__classPrivateFieldSet(this,Xy,new Tt(this.asn.certificationRequestInfo.subject),"f"),R.__classPrivateFieldGet(this,Xy,"f")}get subject(){return R.__classPrivateFieldGet(this,Qy,"f")||R.__classPrivateFieldSet(this,Qy,this.subjectName.toString(),"f"),R.__classPrivateFieldGet(this,Qy,"f")}get signatureAlgorithm(){if(!R.__classPrivateFieldGet(this,Zy,"f")){let e=Je.container.resolve(As);R.__classPrivateFieldSet(this,Zy,e.toWebAlgorithm(this.asn.signatureAlgorithm),"f")}return R.__classPrivateFieldGet(this,Zy,"f")}get signature(){return R.__classPrivateFieldGet(this,ev,"f")||R.__classPrivateFieldSet(this,ev,this.asn.signature,"f"),R.__classPrivateFieldGet(this,ev,"f")}get publicKey(){return R.__classPrivateFieldGet(this,tv,"f")||R.__classPrivateFieldSet(this,tv,new Ss(this.asn.certificationRequestInfo.subjectPKInfo),"f"),R.__classPrivateFieldGet(this,tv,"f")}get attributes(){return R.__classPrivateFieldGet(this,rv,"f")||R.__classPrivateFieldSet(this,rv,this.asn.certificationRequestInfo.attributes.map(e=>hu.create(T.AsnConvert.serialize(e))),"f"),R.__classPrivateFieldGet(this,rv,"f")}get extensions(){if(!R.__classPrivateFieldGet(this,Ff,"f")){R.__classPrivateFieldSet(this,Ff,[],"f");let e=this.getAttribute(Fk.id_pkcs9_at_extensionRequest);e instanceof ed&&R.__classPrivateFieldSet(this,Ff,e.items,"f")}return R.__classPrivateFieldGet(this,Ff,"f")}get tbs(){return R.__classPrivateFieldGet(this,Yy,"f")||R.__classPrivateFieldSet(this,Yy,this.asn.certificationRequestInfoRaw||T.AsnConvert.serialize(this.asn.certificationRequestInfo),"f"),R.__classPrivateFieldGet(this,Yy,"f")}constructor(e){let t=Sr.isAsnEncoded(e)?[e,Qw.CertificationRequest]:[e];super(t[0],t[1]),Yy.set(this,void 0),Xy.set(this,void 0),Qy.set(this,void 0),Zy.set(this,void 0),ev.set(this,void 0),tv.set(this,void 0),rv.set(this,void 0),Ff.set(this,void 0),this.tag=jt.CertificateRequestTag}onInit(e){}getAttribute(e){for(let t of this.attributes)if(t.type===e)return t;return null}getAttributes(e){return this.attributes.filter(t=>t.type===e)}getExtension(e){for(let t of this.extensions)if(t.type===e)return t;return null}getExtensions(e){return this.extensions.filter(t=>t.type===e)}async verify(e=vt.get()){let t={...this.publicKey.algorithm,...this.signatureAlgorithm},s=await this.publicKey.export(t,["verify"],e),i=Je.container.resolveAll(Wi).reverse(),n=null;for(let c of i)if(n=c.toWebSignature(t,this.signature),n)break;if(!n)throw Error("Cannot convert WebCrypto signature value to ASN.1 format");return await e.subtle.verify(this.signatureAlgorithm,s,n,this.tbs)}toTextObject(){let e=this.toTextObjectEmpty(),t=T.AsnConvert.parse(this.rawData,Qw.CertificationRequest),s=t.certificationRequestInfo,i=new ge("",{Version:`${X.Version[s.version]} (${s.version})`,Subject:this.subject,"Subject Public Key Info":this.publicKey});if(this.attributes.length){let n=new ge("");for(let o of this.attributes){let c=o.toTextObject();n[c[ge.NAME]]=c}i.Attributes=n}return e.Data=i,e.Signature=new ge("",{Algorithm:ws.serializeAlgorithm(t.signatureAlgorithm),"":t.signature}),e}};Yy=new WeakMap,Xy=new WeakMap,Qy=new WeakMap,Zy=new WeakMap,ev=new WeakMap,tv=new WeakMap,rv=new WeakMap,Ff=new WeakMap;Dv.NAME="PKCS#10 Certificate Request";var Uk=class{static async create(e,t=vt.get()){if(!e.keys.privateKey)throw new Error("Bad field 'keys' in 'params' argument. 'privateKey' is empty");if(!e.keys.publicKey)throw new Error("Bad field 'keys' in 'params' argument. 'publicKey' is empty");let s=await t.subtle.exportKey("spki",e.keys.publicKey),i=new Qw.CertificationRequest({certificationRequestInfo:new Qw.CertificationRequestInfo({subjectPKInfo:T.AsnConvert.parse(s,X.SubjectPublicKeyInfo)})});if(e.name){let m=e.name instanceof Tt?e.name:new Tt(e.name);i.certificationRequestInfo.subject=T.AsnConvert.parse(m.toArrayBuffer(),X.Name)}if(e.attributes)for(let m of e.attributes)i.certificationRequestInfo.attributes.push(T.AsnConvert.parse(m.rawData,X.Attribute));if(e.extensions&&e.extensions.length){let m=new X.Attribute({type:Fk.id_pkcs9_at_extensionRequest}),p=new X.Extensions;for(let A of e.extensions)p.push(T.AsnConvert.parse(A.rawData,X.Extension));m.values.push(T.AsnConvert.serialize(p)),i.certificationRequestInfo.attributes.push(m)}let n={...e.signingAlgorithm,...e.keys.privateKey.algorithm},o=Je.container.resolve(As);i.signatureAlgorithm=o.toAsnAlgorithm(n);let c=T.AsnConvert.serialize(i.certificationRequestInfo),l=await t.subtle.sign(n,e.keys.privateKey,c),h=Je.container.resolveAll(Wi).reverse(),d=null;for(let m of h)if(d=m.toAsnSignature(n,l),d)break;if(!d)throw Error("Cannot convert WebCrypto signature value to ASN.1 format");return i.signature=d,new Dv(T.AsnConvert.serialize(i))}},sv,iv,nv,av,ov,cv,uv,lv,hv,fv,Jf,dv,_a=class extends Sr{get publicKey(){return R.__classPrivateFieldGet(this,dv,"f")||R.__classPrivateFieldSet(this,dv,new Ss(this.asn.tbsCertificate.subjectPublicKeyInfo),"f"),R.__classPrivateFieldGet(this,dv,"f")}get serialNumber(){if(!R.__classPrivateFieldGet(this,iv,"f")){let e=this.asn.tbsCertificate,t=new Uint8Array(e.serialNumber);t.length>1&&t[0]===0&&t[1]>127&&(t=t.slice(1)),R.__classPrivateFieldSet(this,iv,U.Convert.ToHex(t),"f")}return R.__classPrivateFieldGet(this,iv,"f")}get subjectName(){return R.__classPrivateFieldGet(this,nv,"f")||R.__classPrivateFieldSet(this,nv,new Tt(this.asn.tbsCertificate.subject),"f"),R.__classPrivateFieldGet(this,nv,"f")}get subject(){return R.__classPrivateFieldGet(this,av,"f")||R.__classPrivateFieldSet(this,av,this.subjectName.toString(),"f"),R.__classPrivateFieldGet(this,av,"f")}get issuerName(){return R.__classPrivateFieldGet(this,ov,"f")||R.__classPrivateFieldSet(this,ov,new Tt(this.asn.tbsCertificate.issuer),"f"),R.__classPrivateFieldGet(this,ov,"f")}get issuer(){return R.__classPrivateFieldGet(this,cv,"f")||R.__classPrivateFieldSet(this,cv,this.issuerName.toString(),"f"),R.__classPrivateFieldGet(this,cv,"f")}get notBefore(){if(!R.__classPrivateFieldGet(this,uv,"f")){let e=this.asn.tbsCertificate.validity.notBefore.utcTime||this.asn.tbsCertificate.validity.notBefore.generalTime;if(!e)throw new Error("Cannot get 'notBefore' value");R.__classPrivateFieldSet(this,uv,e,"f")}return R.__classPrivateFieldGet(this,uv,"f")}get notAfter(){if(!R.__classPrivateFieldGet(this,lv,"f")){let e=this.asn.tbsCertificate.validity.notAfter.utcTime||this.asn.tbsCertificate.validity.notAfter.generalTime;if(!e)throw new Error("Cannot get 'notAfter' value");R.__classPrivateFieldSet(this,lv,e,"f")}return R.__classPrivateFieldGet(this,lv,"f")}get signatureAlgorithm(){if(!R.__classPrivateFieldGet(this,hv,"f")){let e=Je.container.resolve(As);R.__classPrivateFieldSet(this,hv,e.toWebAlgorithm(this.asn.signatureAlgorithm),"f")}return R.__classPrivateFieldGet(this,hv,"f")}get signature(){return R.__classPrivateFieldGet(this,fv,"f")||R.__classPrivateFieldSet(this,fv,this.asn.signatureValue,"f"),R.__classPrivateFieldGet(this,fv,"f")}get extensions(){return R.__classPrivateFieldGet(this,Jf,"f")||(R.__classPrivateFieldSet(this,Jf,[],"f"),this.asn.tbsCertificate.extensions&&R.__classPrivateFieldSet(this,Jf,this.asn.tbsCertificate.extensions.map(e=>Mt.create(T.AsnConvert.serialize(e))),"f")),R.__classPrivateFieldGet(this,Jf,"f")}get tbs(){return R.__classPrivateFieldGet(this,sv,"f")||R.__classPrivateFieldSet(this,sv,this.asn.tbsCertificateRaw||T.AsnConvert.serialize(this.asn.tbsCertificate),"f"),R.__classPrivateFieldGet(this,sv,"f")}constructor(e){let t=Sr.isAsnEncoded(e)?[e,X.Certificate]:[e];super(t[0],t[1]),sv.set(this,void 0),iv.set(this,void 0),nv.set(this,void 0),av.set(this,void 0),ov.set(this,void 0),cv.set(this,void 0),uv.set(this,void 0),lv.set(this,void 0),hv.set(this,void 0),fv.set(this,void 0),Jf.set(this,void 0),dv.set(this,void 0),this.tag=jt.CertificateTag}onInit(e){}getExtension(e){for(let t of this.extensions)if(typeof e=="string"){if(t.type===e)return t}else if(t instanceof e)return t;return null}getExtensions(e){return this.extensions.filter(t=>typeof e=="string"?t.type===e:t instanceof e)}async verify(e={},t=vt.get()){let s,i,n=e.publicKey;try{if(!n)s={...this.publicKey.algorithm,...this.signatureAlgorithm},i=await this.publicKey.export(s,["verify"],t);else if("publicKey"in n)s={...n.publicKey.algorithm,...this.signatureAlgorithm},i=await n.publicKey.export(s,["verify"],t);else if(n instanceof Ss)s={...n.algorithm,...this.signatureAlgorithm},i=await n.export(s,["verify"],t);else if(U.BufferSourceConverter.isBufferSource(n)){let h=new Ss(n);s={...h.algorithm,...this.signatureAlgorithm},i=await h.export(s,["verify"],t)}else s={...n.algorithm,...this.signatureAlgorithm},i=n}catch{return!1}let o=Je.container.resolveAll(Wi).reverse(),c=null;for(let h of o)if(c=h.toWebSignature(s,this.signature),c)break;if(!c)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");let l=await t.subtle.verify(this.signatureAlgorithm,i,c,this.tbs);if(e.signatureOnly)return l;{let d=(e.date||new Date).getTime();return l&&this.notBefore.getTime()<d&&d<this.notAfter.getTime()}}async getThumbprint(e,t){let s,i="SHA-1";return e&&(typeof e=="object"&&"subtle"in e?s=e:(i=e,s=t)),s??(s=vt.get()),await s.subtle.digest(i,this.rawData)}async isSelfSigned(e=vt.get()){return this.subject===this.issuer&&await this.verify({signatureOnly:!0},e)}toTextObject(){let e=this.toTextObjectEmpty(),t=T.AsnConvert.parse(this.rawData,X.Certificate),s=t.tbsCertificate,i=new ge("",{Version:`${X.Version[s.version]} (${s.version})`,"Serial Number":s.serialNumber,"Signature Algorithm":ws.serializeAlgorithm(s.signature),Issuer:this.issuer,Validity:new ge("",{"Not Before":s.validity.notBefore.getTime(),"Not After":s.validity.notAfter.getTime()}),Subject:this.subject,"Subject Public Key Info":this.publicKey});if(s.issuerUniqueID&&(i["Issuer Unique ID"]=s.issuerUniqueID),s.subjectUniqueID&&(i["Subject Unique ID"]=s.subjectUniqueID),this.extensions.length){let n=new ge("");for(let o of this.extensions){let c=o.toTextObject();n[c[ge.NAME]]=c}i.Extensions=n}return e.Data=i,e.Signature=new ge("",{Algorithm:ws.serializeAlgorithm(t.signatureAlgorithm),"":t.signatureValue}),e}};sv=new WeakMap,iv=new WeakMap,nv=new WeakMap,av=new WeakMap,ov=new WeakMap,cv=new WeakMap,uv=new WeakMap,lv=new WeakMap,hv=new WeakMap,fv=new WeakMap,Jf=new WeakMap,dv=new WeakMap;_a.NAME="Certificate";var r_=class extends Array{constructor(e){if(super(),Sr.isAsnEncoded(e))this.import(e);else if(e instanceof _a)this.push(e);else if(Array.isArray(e))for(let t of e)this.push(t)}export(e){let t=new mr.SignedData;t.version=1,t.encapContentInfo.eContentType=mr.id_data,t.encapContentInfo.eContent=new mr.EncapsulatedContent({single:new T.OctetString}),t.certificates=new mr.CertificateSet(this.map(n=>new mr.CertificateChoices({certificate:T.AsnConvert.parse(n.rawData,X.Certificate)})));let s=new mr.ContentInfo({contentType:mr.id_signedData,content:T.AsnConvert.serialize(t)}),i=T.AsnConvert.serialize(s);return e==="raw"?i:this.toString(e)}import(e){let t=Sr.toArrayBuffer(e),s=T.AsnConvert.parse(t,mr.ContentInfo);if(s.contentType!==mr.id_signedData)throw new TypeError("Cannot parse CMS package. Incoming data is not a SignedData object.");let i=T.AsnConvert.parse(s.content,mr.SignedData);this.clear();for(let n of i.certificates||[])n.certificate&&this.push(new _a(n.certificate))}clear(){for(;this.pop(););}toString(e="pem"){let t=this.export("raw");switch(e){case"pem":return jt.encode(t,"CMS");case"pem-chain":return this.map(s=>s.toString("pem")).join(`
17
+ `);case"asn":return T.AsnConvert.toString(t);case"hex":return U.Convert.ToHex(t);case"base64":return U.Convert.ToBase64(t);case"base64url":return U.Convert.ToBase64Url(t);case"text":return ws.serialize(this.toTextObject());default:throw TypeError("Argument 'format' is unsupported value")}}toTextObject(){let e=T.AsnConvert.parse(this.export("raw"),mr.ContentInfo),t=T.AsnConvert.parse(e.content,mr.SignedData);return new ge("X509Certificates",{"Content Type":Jr.toString(e.contentType),Content:new ge("",{Version:`${mr.CMSVersion[t.version]} (${t.version})`,Certificates:new ge("",{Certificate:this.map(i=>i.toTextObject())})})})}},Hk=class{constructor(e={}){this.certificates=[],e.certificates&&(this.certificates=e.certificates)}async build(e,t=vt.get()){let s=new r_(e),i=e;for(;i=await this.findIssuer(i,t);){let n=await i.getThumbprint(t);for(let o of s){let c=await o.getThumbprint(t);if(U.isEqual(n,c))throw new Error("Cannot build a certificate chain. Circular dependency.")}s.push(i)}return s}async findIssuer(e,t=vt.get()){if(!await e.isSelfSigned(t)){let s=e.getExtension(O.id_ce_authorityKeyIdentifier);for(let i of this.certificates)if(i.subject===e.issuer){if(s){if(s.keyId){let n=i.getExtension(O.id_ce_subjectKeyIdentifier);if(n&&n.keyId!==s.keyId)continue}else if(s.certId){let n=i.getExtension(O.id_ce_subjectAltName);if(n&&!(s.certId.serialNumber===i.serialNumber&&U.isEqual(T.AsnConvert.serialize(s.certId.name),T.AsnConvert.serialize(n))))continue}}try{let n={...i.publicKey.algorithm,...e.signatureAlgorithm},o=await i.publicKey.export(n,["verify"],t);if(!await e.verify({publicKey:o,signatureOnly:!0},t))continue}catch{continue}return i}}return null}};function Jk(r,e=vt.get()){let t=U.BufferSourceConverter.toUint8Array(U.Convert.FromHex(r||"")),s=t&&t.length&&t.some(n=>n>0)?new Uint8Array(t):void 0;s||(s=e.getRandomValues(new Uint8Array(16)));let i=0;for(;i<s.length-1&&s[i]===0;)i++;if(s=s.slice(i),s[0]>127){let n=new Uint8Array(s.length+1);n[0]=0,n.set(s,1),s=n}return s.buffer}var Kk=class{static async createSelfSigned(e,t=vt.get()){if(!e.keys.privateKey)throw new Error("Bad field 'keys' in 'params' argument. 'privateKey' is empty");if(!e.keys.publicKey)throw new Error("Bad field 'keys' in 'params' argument. 'publicKey' is empty");return this.create({serialNumber:e.serialNumber,subject:e.name,issuer:e.name,notBefore:e.notBefore,notAfter:e.notAfter,publicKey:e.keys.publicKey,signingKey:e.keys.privateKey,signingAlgorithm:e.signingAlgorithm,extensions:e.extensions},t)}static async create(e,t=vt.get()){var s;let i;e.publicKey instanceof Ss?i=e.publicKey.rawData:"publicKey"in e.publicKey?i=e.publicKey.publicKey.rawData:U.BufferSourceConverter.isBufferSource(e.publicKey)?i=e.publicKey:i=await t.subtle.exportKey("spki",e.publicKey);let n=Jk(e.serialNumber,t),o=e.notBefore||new Date,c=e.notAfter||new Date(o.getTime()+31536e6),l=new O.Certificate({tbsCertificate:new O.TBSCertificate({version:O.Version.v3,serialNumber:n,validity:new O.Validity({notBefore:o,notAfter:c}),extensions:new O.Extensions(((s=e.extensions)===null||s===void 0?void 0:s.map(S=>T.AsnConvert.parse(S.rawData,O.Extension)))||[]),subjectPublicKeyInfo:T.AsnConvert.parse(i,O.SubjectPublicKeyInfo)})});if(e.subject){let S=e.subject instanceof Tt?e.subject:new Tt(e.subject);l.tbsCertificate.subject=T.AsnConvert.parse(S.toArrayBuffer(),O.Name)}if(e.issuer){let S=e.issuer instanceof Tt?e.issuer:new Tt(e.issuer);l.tbsCertificate.issuer=T.AsnConvert.parse(S.toArrayBuffer(),O.Name)}let h={hash:"SHA-256"},d="signingKey"in e?{...h,...e.signingAlgorithm,...e.signingKey.algorithm}:{...h,...e.signingAlgorithm},m=Je.container.resolve(As);l.tbsCertificate.signature=l.signatureAlgorithm=m.toAsnAlgorithm(d);let p=T.AsnConvert.serialize(l.tbsCertificate),A="signingKey"in e?await t.subtle.sign(d,e.signingKey,p):e.signature,w=Je.container.resolveAll(Wi).reverse(),C=null;for(let S of w)if(C=S.toAsnSignature(d,A),C)break;if(!C)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");return l.signatureValue=C,new _a(T.AsnConvert.serialize(l))}},pv,mv,Gf,Wf,zf;H.X509CrlReason=void 0;(function(r){r[r.unspecified=0]="unspecified",r[r.keyCompromise=1]="keyCompromise",r[r.cACompromise=2]="cACompromise",r[r.affiliationChanged=3]="affiliationChanged",r[r.superseded=4]="superseded",r[r.cessationOfOperation=5]="cessationOfOperation",r[r.certificateHold=6]="certificateHold",r[r.removeFromCRL=8]="removeFromCRL",r[r.privilegeWithdrawn=9]="privilegeWithdrawn",r[r.aACompromise=10]="aACompromise"})(H.X509CrlReason||(H.X509CrlReason={}));var td=class extends Qs{get serialNumber(){return R.__classPrivateFieldGet(this,pv,"f")||R.__classPrivateFieldSet(this,pv,U.Convert.ToHex(this.asn.userCertificate),"f"),R.__classPrivateFieldGet(this,pv,"f")}get revocationDate(){return R.__classPrivateFieldGet(this,mv,"f")||R.__classPrivateFieldSet(this,mv,this.asn.revocationDate.getTime(),"f"),R.__classPrivateFieldGet(this,mv,"f")}get reason(){return R.__classPrivateFieldGet(this,Gf,"f")===void 0&&this.extensions,R.__classPrivateFieldGet(this,Gf,"f")}get invalidity(){return R.__classPrivateFieldGet(this,Wf,"f")===void 0&&this.extensions,R.__classPrivateFieldGet(this,Wf,"f")}get extensions(){return R.__classPrivateFieldGet(this,zf,"f")||(R.__classPrivateFieldSet(this,zf,[],"f"),this.asn.crlEntryExtensions&&R.__classPrivateFieldSet(this,zf,this.asn.crlEntryExtensions.map(e=>{let t=Mt.create(T.AsnConvert.serialize(e));switch(t.type){case X.id_ce_cRLReasons:R.__classPrivateFieldGet(this,Gf,"f")===void 0&&R.__classPrivateFieldSet(this,Gf,T.AsnConvert.parse(t.value,X.CRLReason).reason,"f");break;case X.id_ce_invalidityDate:R.__classPrivateFieldGet(this,Wf,"f")===void 0&&R.__classPrivateFieldSet(this,Wf,T.AsnConvert.parse(t.value,X.InvalidityDate).value,"f");break}return t}),"f")),R.__classPrivateFieldGet(this,zf,"f")}constructor(...e){let t;if(U.BufferSourceConverter.isBufferSource(e[0])?t=U.BufferSourceConverter.toArrayBuffer(e[0]):typeof e[0]=="string"?t=T.AsnConvert.serialize(new X.RevokedCertificate({userCertificate:Jk(e[0]),revocationDate:new X.Time(e[1]),crlEntryExtensions:e[2]})):e[0]instanceof X.RevokedCertificate&&(t=e[0]),!t)throw new TypeError("Cannot create X509CrlEntry instance. Wrong constructor arguments.");super(t,X.RevokedCertificate),pv.set(this,void 0),mv.set(this,void 0),Gf.set(this,void 0),Wf.set(this,void 0),zf.set(this,void 0)}onInit(e){}};pv=new WeakMap,mv=new WeakMap,Gf=new WeakMap,Wf=new WeakMap,zf=new WeakMap;var gv,yv,vv,Sv,Av,wv,Yf,s_=class extends Sr{get version(){return this.asn.tbsCertList.version}get signatureAlgorithm(){if(!R.__classPrivateFieldGet(this,yv,"f")){let e=Je.container.resolve(As);R.__classPrivateFieldSet(this,yv,e.toWebAlgorithm(this.asn.signatureAlgorithm),"f")}return R.__classPrivateFieldGet(this,yv,"f")}get signature(){return this.asn.signature}get issuer(){return this.issuerName.toString()}get issuerName(){return R.__classPrivateFieldGet(this,vv,"f")||R.__classPrivateFieldSet(this,vv,new Tt(this.asn.tbsCertList.issuer),"f"),R.__classPrivateFieldGet(this,vv,"f")}get thisUpdate(){if(!R.__classPrivateFieldGet(this,Sv,"f")){let e=this.asn.tbsCertList.thisUpdate.getTime();if(!e)throw new Error("Cannot get 'thisUpdate' value");R.__classPrivateFieldSet(this,Sv,e,"f")}return R.__classPrivateFieldGet(this,Sv,"f")}get nextUpdate(){var e;return R.__classPrivateFieldGet(this,Av,"f")===void 0&&R.__classPrivateFieldSet(this,Av,((e=this.asn.tbsCertList.nextUpdate)===null||e===void 0?void 0:e.getTime())||void 0,"f"),R.__classPrivateFieldGet(this,Av,"f")}get entries(){var e;return R.__classPrivateFieldGet(this,wv,"f")||R.__classPrivateFieldSet(this,wv,((e=this.asn.tbsCertList.revokedCertificates)===null||e===void 0?void 0:e.map(t=>new td(t)))||[],"f"),R.__classPrivateFieldGet(this,wv,"f")}get extensions(){return R.__classPrivateFieldGet(this,Yf,"f")||(R.__classPrivateFieldSet(this,Yf,[],"f"),this.asn.tbsCertList.crlExtensions&&R.__classPrivateFieldSet(this,Yf,this.asn.tbsCertList.crlExtensions.map(e=>Mt.create(T.AsnConvert.serialize(e))),"f")),R.__classPrivateFieldGet(this,Yf,"f")}get tbs(){return R.__classPrivateFieldGet(this,gv,"f")||R.__classPrivateFieldSet(this,gv,this.asn.tbsCertListRaw||T.AsnConvert.serialize(this.asn.tbsCertList),"f"),R.__classPrivateFieldGet(this,gv,"f")}get tbsCertListSignatureAlgorithm(){return this.asn.tbsCertList.signature}get certListSignatureAlgorithm(){return this.asn.signatureAlgorithm}constructor(e){super(e,Sr.isAsnEncoded(e)?X.CertificateList:void 0),this.tag=jt.CrlTag,gv.set(this,void 0),yv.set(this,void 0),vv.set(this,void 0),Sv.set(this,void 0),Av.set(this,void 0),wv.set(this,void 0),Yf.set(this,void 0)}onInit(e){}getExtension(e){for(let t of this.extensions)if(typeof e=="string"){if(t.type===e)return t}else if(t instanceof e)return t;return null}getExtensions(e){return this.extensions.filter(t=>typeof e=="string"?t.type===e:t instanceof e)}async verify(e,t=vt.get()){if(!this.certListSignatureAlgorithm.isEqual(this.tbsCertListSignatureAlgorithm))throw new Error("algorithm identifier in the sequence tbsCertList and CertificateList mismatch");let s,i,n=e.publicKey;try{n instanceof _a?(s={...n.publicKey.algorithm,...n.signatureAlgorithm},i=await n.publicKey.export(s,["verify"])):n instanceof Ss?(s={...n.algorithm,...this.signatureAlgorithm},i=await n.export(s,["verify"])):(s={...n.algorithm,...this.signatureAlgorithm},i=n)}catch{return!1}let o=Je.container.resolveAll(Wi).reverse(),c=null;for(let l of o)if(c=l.toWebSignature(s,this.signature),c)break;if(!c)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");return await t.subtle.verify(this.signatureAlgorithm,i,c,this.tbs)}async getThumbprint(e,t){let s,i="SHA-1";return e&&(typeof e=="object"&&"subtle"in e?s=e:(i=e,s=t)),s??(s=vt.get()),await s.subtle.digest(i,this.rawData)}findRevoked(e){let t=typeof e=="string"?e:e.serialNumber,s=Jk(t);for(let i of this.asn.tbsCertList.revokedCertificates||[])if(U.BufferSourceConverter.isEqual(i.userCertificate,s))return new td(T.AsnConvert.serialize(i));return null}};gv=new WeakMap,yv=new WeakMap,vv=new WeakMap,Sv=new WeakMap,Av=new WeakMap,wv=new WeakMap,Yf=new WeakMap;var $k=class{static async create(e,t=vt.get()){var s;let i=e.issuer instanceof Tt?e.issuer:new Tt(e.issuer),n=new O.CertificateList({tbsCertList:new O.TBSCertList({version:O.Version.v2,issuer:T.AsnConvert.parse(i.toArrayBuffer(),O.Name),thisUpdate:new X.Time(e.thisUpdate||new Date)})});if(e.nextUpdate&&(n.tbsCertList.nextUpdate=new X.Time(e.nextUpdate)),e.extensions&&e.extensions.length&&(n.tbsCertList.crlExtensions=new O.Extensions(e.extensions.map(p=>T.AsnConvert.parse(p.rawData,O.Extension))||[])),e.entries&&e.entries.length){n.tbsCertList.revokedCertificates=[];for(let p of e.entries){let A=Sr.toArrayBuffer(p.serialNumber);if(n.tbsCertList.revokedCertificates.findIndex(S=>U.isEqual(S.userCertificate,A))>-1)throw new Error(`Certificate serial number ${p.serialNumber} already exists in tbsCertList`);let C=new X.RevokedCertificate({userCertificate:A,revocationDate:new X.Time(p.revocationDate||new Date)});if("extensions"in p&&(!((s=p.extensions)===null||s===void 0)&&s.length)?C.crlEntryExtensions=p.extensions.map(S=>T.AsnConvert.parse(S.rawData,O.Extension)):C.crlEntryExtensions=[],!(p instanceof td)&&(p.reason&&C.crlEntryExtensions.push(new O.Extension({extnID:O.id_ce_cRLReasons,critical:!1,extnValue:new T.OctetString(T.AsnConvert.serialize(new O.CRLReason(p.reason)))})),p.invalidity&&C.crlEntryExtensions.push(new O.Extension({extnID:O.id_ce_invalidityDate,critical:!1,extnValue:new T.OctetString(T.AsnConvert.serialize(new O.InvalidityDate(p.invalidity)))})),p.issuer)){let S=e.issuer instanceof Tt?e.issuer:new Tt(e.issuer);C.crlEntryExtensions.push(new O.Extension({extnID:O.id_ce_certificateIssuer,critical:!1,extnValue:new T.OctetString(T.AsnConvert.serialize(T.AsnConvert.parse(S.toArrayBuffer(),O.Name)))}))}n.tbsCertList.revokedCertificates.push(C)}}let o={...e.signingAlgorithm,...e.signingKey.algorithm},c=Je.container.resolve(As);n.tbsCertList.signature=n.signatureAlgorithm=c.toAsnAlgorithm(o);let l=T.AsnConvert.serialize(n.tbsCertList),h=await t.subtle.sign(o,e.signingKey,l),d=Je.container.resolveAll(Wi).reverse(),m=null;for(let p of d)if(m=p.toAsnSignature(o,h),m)break;if(!m)throw Error("Cannot convert ASN.1 signature value to WebCrypto format");return n.signature=m,new s_(T.AsnConvert.serialize(n))}};Mt.register(O.id_ce_basicConstraints,Iv);Mt.register(O.id_ce_extKeyUsage,Ev);Mt.register(O.id_ce_keyUsage,kv);Mt.register(O.id_ce_subjectKeyIdentifier,Nv);Mt.register(O.id_ce_authorityKeyIdentifier,Pv);Mt.register(O.id_ce_subjectAltName,Bv);Mt.register(O.id_ce_cRLDistributionPoints,Ov);Mt.register(O.id_pe_authorityInfoAccess,Tv);Mt.register(O.id_ce_issuerAltName,Vv);hu.register(Xf.id_pkcs9_at_challengePassword,Rv);hu.register(Xf.id_pkcs9_at_extensionRequest,ed);Je.container.registerSingleton(Wi,t_);Je.container.registerSingleton(Wi,ei);ei.namedCurveSize.set("P-256",32);ei.namedCurveSize.set("K-256",32);ei.namedCurveSize.set("P-384",48);ei.namedCurveSize.set("P-521",66);H.AlgorithmProvider=Zw;H.AsnData=Qs;H.AsnDefaultSignatureFormatter=t_;H.AsnEcSignatureFormatter=ei;H.Attribute=lu;H.AttributeFactory=hu;H.AuthorityInfoAccessExtension=Tv;H.AuthorityKeyIdentifierExtension=Pv;H.BasicConstraintsExtension=Iv;H.CRLDistributionPointsExtension=Ov;H.CertificatePolicyExtension=xv;H.ChallengePasswordAttribute=Rv;H.CryptoProvider=Qf;H.DN=Hw;H.DNS=Uw;H.DefaultAlgorithmSerializer=e_;H.EMAIL=Kw;H.ExtendedKeyUsageExtension=Ev;H.Extension=yr;H.ExtensionFactory=Mt;H.ExtensionsAttribute=ed;H.GUID=Jw;H.GeneralName=vs;H.GeneralNames=Zs;H.IP=$w;H.IssuerAlternativeNameExtension=Vv;H.KeyUsagesExtension=kv;H.Name=Tt;H.NameIdentifier=bv;H.OidSerializer=Jr;H.PemConverter=jt;H.PemData=Sr;H.Pkcs10CertificateRequest=Dv;H.Pkcs10CertificateRequestGenerator=Uk;H.PublicKey=Ss;H.REGISTERED_ID=zy;H.SubjectAlternativeNameExtension=Bv;H.SubjectKeyIdentifierExtension=Nv;H.TextConverter=ws;H.TextObject=ge;H.UPN=Gw;H.URL=Fw;H.X509Certificate=_a;H.X509CertificateGenerator=Kk;H.X509Certificates=r_;H.X509ChainBuilder=Hk;H.X509Crl=s_;H.X509CrlEntry=td;H.X509CrlGenerator=$k;H.cryptoProvider=vt;H.diAlgorithm=rd;H.diAlgorithmProvider=As;H.diAsnSignatureFormatter=Wi;H.idEd25519=Yw;H.idEd448=Lk;H.idX25519=zw;H.idX448=Mk});var QL={};o_(QL,{crypto:()=>XL,pkijs:()=>zL,x509:()=>YL});module.exports=E(QL);var B6=c_(sN(),1),Mv=c_(Cx(),1),Gk=c_(S2(),1),jv=require("node:crypto"),WL=new Mv.CryptoEngine({name:"node",crypto:jv.webcrypto,subtle:jv.webcrypto.subtle});Mv.setEngine("node",WL);Gk.cryptoProvider.set(jv.webcrypto);var zL=Mv,YL=Gk,XL=jv.webcrypto;0&&(module.exports={crypto,pkijs,x509});
18
+ /*! Bundled license information:
19
+
20
+ reflect-metadata/Reflect.js:
21
+ (*! *****************************************************************************
22
+ Copyright (C) Microsoft. All rights reserved.
23
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
24
+ this file except in compliance with the License. You may obtain a copy of the
25
+ License at http://www.apache.org/licenses/LICENSE-2.0
26
+
27
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
28
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
29
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
30
+ MERCHANTABLITY OR NON-INFRINGEMENT.
31
+
32
+ See the Apache Version 2.0 License for specific language governing permissions
33
+ and limitations under the License.
34
+ ***************************************************************************** *)
35
+
36
+ pvtsutils/build/index.js:
37
+ (*!
38
+ * MIT License
39
+ *
40
+ * Copyright (c) 2017-2024 Peculiar Ventures, LLC
41
+ *
42
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
43
+ * of this software and associated documentation files (the "Software"), to deal
44
+ * in the Software without restriction, including without limitation the rights
45
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
46
+ * copies of the Software, and to permit persons to whom the Software is
47
+ * furnished to do so, subject to the following conditions:
48
+ *
49
+ * The above copyright notice and this permission notice shall be included in all
50
+ * copies or substantial portions of the Software.
51
+ *
52
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
53
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
54
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
55
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
56
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
57
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
58
+ * SOFTWARE.
59
+ *
60
+ *)
61
+
62
+ pvutils/build/utils.js:
63
+ (*!
64
+ Copyright (c) Peculiar Ventures, LLC
65
+ *)
66
+
67
+ asn1js/build/index.js:
68
+ (*!
69
+ * Copyright (c) 2014, GMO GlobalSign
70
+ * Copyright (c) 2015-2022, Peculiar Ventures
71
+ * All rights reserved.
72
+ *
73
+ * Author 2014-2019, Yury Strozhevsky
74
+ *
75
+ * Redistribution and use in source and binary forms, with or without modification,
76
+ * are permitted provided that the following conditions are met:
77
+ *
78
+ * * Redistributions of source code must retain the above copyright notice, this
79
+ * list of conditions and the following disclaimer.
80
+ *
81
+ * * Redistributions in binary form must reproduce the above copyright notice, this
82
+ * list of conditions and the following disclaimer in the documentation and/or
83
+ * other materials provided with the distribution.
84
+ *
85
+ * * Neither the name of the copyright holder nor the names of its
86
+ * contributors may be used to endorse or promote products derived from
87
+ * this software without specific prior written permission.
88
+ *
89
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
90
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
91
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
92
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
93
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
94
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
95
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
96
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
97
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
98
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
99
+ *
100
+ *)
101
+
102
+ @noble/hashes/utils.js:
103
+ (*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
104
+
105
+ pkijs/build/index.js:
106
+ (*!
107
+ * Copyright (c) 2014, GlobalSign
108
+ * Copyright (c) 2015-2019, Peculiar Ventures
109
+ * All rights reserved.
110
+ *
111
+ * Author 2014-2019, Yury Strozhevsky
112
+ *
113
+ * Redistribution and use in source and binary forms, with or without modification,
114
+ * are permitted provided that the following conditions are met:
115
+ *
116
+ * * Redistributions of source code must retain the above copyright notice, this
117
+ * list of conditions and the following disclaimer.
118
+ *
119
+ * * Redistributions in binary form must reproduce the above copyright notice, this
120
+ * list of conditions and the following disclaimer in the documentation and/or
121
+ * other materials provided with the distribution.
122
+ *
123
+ * * Neither the name of the {organization} nor the names of its
124
+ * contributors may be used to endorse or promote products derived from
125
+ * this software without specific prior written permission.
126
+ *
127
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
128
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
129
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
130
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
131
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
132
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
133
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
134
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
135
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
136
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
137
+ *
138
+ *)
139
+
140
+ tslib/tslib.es6.js:
141
+ (*! *****************************************************************************
142
+ Copyright (c) Microsoft Corporation.
143
+
144
+ Permission to use, copy, modify, and/or distribute this software for any
145
+ purpose with or without fee is hereby granted.
146
+
147
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
148
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
149
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
150
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
151
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
152
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
153
+ PERFORMANCE OF THIS SOFTWARE.
154
+ ***************************************************************************** *)
155
+
156
+ @peculiar/x509/build/x509.cjs.js:
157
+ (*!
158
+ * MIT License
159
+ *
160
+ * Copyright (c) Peculiar Ventures. All rights reserved.
161
+ *
162
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
163
+ * of this software and associated documentation files (the "Software"), to deal
164
+ * in the Software without restriction, including without limitation the rights
165
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
166
+ * copies of the Software, and to permit persons to whom the Software is
167
+ * furnished to do so, subject to the following conditions:
168
+ *
169
+ * The above copyright notice and this permission notice shall be included in all
170
+ * copies or substantial portions of the Software.
171
+ *
172
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
173
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
174
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
175
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
176
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
177
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
178
+ * SOFTWARE.
179
+ *
180
+ *)
181
+ */