@awacloud/pdf 0.0.0-stage → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (345) hide show
  1. package/CHANGELOG.md +609 -0
  2. package/LICENSE +661 -0
  3. package/NOTICE +77 -0
  4. package/README.md +363 -2
  5. package/dist/build/index.js +21 -0
  6. package/dist/build/pdf-full-rw.js +10972 -0
  7. package/dist/build/pdf-full-rw.meta.json +105 -0
  8. package/dist/build/pdf-full-rw.min.js +53 -0
  9. package/dist/build/pdf-full.js +6078 -0
  10. package/dist/build/pdf-full.meta.json +90 -0
  11. package/dist/build/pdf-full.min.js +32 -0
  12. package/dist/build/pdf-large-rw.js +10367 -0
  13. package/dist/build/pdf-large-rw.meta.json +99 -0
  14. package/dist/build/pdf-large-rw.min.js +53 -0
  15. package/dist/build/pdf-large.js +5473 -0
  16. package/dist/build/pdf-large.meta.json +84 -0
  17. package/dist/build/pdf-large.min.js +32 -0
  18. package/dist/build/pdf-legacy-rw.js +12402 -0
  19. package/dist/build/pdf-legacy-rw.meta.json +110 -0
  20. package/dist/build/pdf-legacy-rw.min.js +53 -0
  21. package/dist/build/pdf-legacy.js +7508 -0
  22. package/dist/build/pdf-legacy.meta.json +95 -0
  23. package/dist/build/pdf-legacy.min.js +32 -0
  24. package/dist/build/pdf-rw.js +7578 -0
  25. package/dist/build/pdf-rw.meta.json +77 -0
  26. package/dist/build/pdf-rw.min.js +53 -0
  27. package/dist/build/pdf.js +2684 -0
  28. package/dist/build/pdf.meta.json +62 -0
  29. package/dist/build/pdf.min.js +32 -0
  30. package/dist/standalone/pdf-full-rw.js +16798 -0
  31. package/dist/standalone/pdf-full-rw.meta.json +78 -0
  32. package/dist/standalone/pdf-full-rw.min.js +56 -0
  33. package/dist/standalone/pdf-full.js +11904 -0
  34. package/dist/standalone/pdf-full.meta.json +63 -0
  35. package/dist/standalone/pdf-full.min.js +35 -0
  36. package/dist/standalone/pdf-large-rw.js +16193 -0
  37. package/dist/standalone/pdf-large-rw.meta.json +72 -0
  38. package/dist/standalone/pdf-large-rw.min.js +56 -0
  39. package/dist/standalone/pdf-large.js +11299 -0
  40. package/dist/standalone/pdf-large.meta.json +57 -0
  41. package/dist/standalone/pdf-large.min.js +35 -0
  42. package/dist/standalone/pdf-legacy-rw.js +18228 -0
  43. package/dist/standalone/pdf-legacy-rw.meta.json +83 -0
  44. package/dist/standalone/pdf-legacy-rw.min.js +56 -0
  45. package/dist/standalone/pdf-legacy.js +13334 -0
  46. package/dist/standalone/pdf-legacy.meta.json +68 -0
  47. package/dist/standalone/pdf-legacy.min.js +35 -0
  48. package/dist/standalone/pdf-rw.js +13404 -0
  49. package/dist/standalone/pdf-rw.meta.json +50 -0
  50. package/dist/standalone/pdf-rw.min.js +56 -0
  51. package/dist/standalone/pdf.js +8510 -0
  52. package/dist/standalone/pdf.meta.json +35 -0
  53. package/dist/standalone/pdf.min.js +35 -0
  54. package/docs/README.md +53 -0
  55. package/docs/api/README.md +38 -0
  56. package/docs/api/_shared/README.md +91 -0
  57. package/docs/api/action/README.md +29 -0
  58. package/docs/api/action/action.md +81 -0
  59. package/docs/api/action/goTo.md +66 -0
  60. package/docs/api/action/launch.md +58 -0
  61. package/docs/api/action/named.md +55 -0
  62. package/docs/api/action/uri.md +54 -0
  63. package/docs/api/annot/README.md +53 -0
  64. package/docs/api/annot/annot.md +114 -0
  65. package/docs/api/annot/fileAttach.md +53 -0
  66. package/docs/api/annot/freeText.md +68 -0
  67. package/docs/api/annot/ink.md +69 -0
  68. package/docs/api/annot/link.md +74 -0
  69. package/docs/api/annot/markup.md +83 -0
  70. package/docs/api/annot/popup.md +52 -0
  71. package/docs/api/annot/projection.md +56 -0
  72. package/docs/api/annot/redact.md +67 -0
  73. package/docs/api/annot/square.md +87 -0
  74. package/docs/api/annot/stamp.md +54 -0
  75. package/docs/api/annot/text.md +69 -0
  76. package/docs/api/annot/widget.md +69 -0
  77. package/docs/api/associatedFiles/README.md +9 -0
  78. package/docs/api/associatedFiles/associatedFiles.md +78 -0
  79. package/docs/api/bundles/README.md +68 -0
  80. package/docs/api/bundles/dist-matrix.md +165 -0
  81. package/docs/api/bundles/pdf-full.md +148 -0
  82. package/docs/api/bundles/pdf-large.md +144 -0
  83. package/docs/api/bundles/pdf-legacy.md +169 -0
  84. package/docs/api/content/README.md +29 -0
  85. package/docs/api/content/color.md +99 -0
  86. package/docs/api/content/graphics.md +114 -0
  87. package/docs/api/content/images.md +124 -0
  88. package/docs/api/content/ops.md +100 -0
  89. package/docs/api/content/stream.md +107 -0
  90. package/docs/api/content/text.md +98 -0
  91. package/docs/api/crypto/README.md +29 -0
  92. package/docs/api/crypto/aesGcm.md +72 -0
  93. package/docs/api/crypto/permissions.md +79 -0
  94. package/docs/api/crypto/security.md +98 -0
  95. package/docs/api/crypto/standardV4.md +104 -0
  96. package/docs/api/crypto/standardV5.md +84 -0
  97. package/docs/api/crypto/standardV6.md +93 -0
  98. package/docs/api/destination/README.md +9 -0
  99. package/docs/api/destination/destination.md +79 -0
  100. package/docs/api/document/README.md +29 -0
  101. package/docs/api/document/builder.md +281 -0
  102. package/docs/api/document/catalog.md +98 -0
  103. package/docs/api/document/document.md +187 -0
  104. package/docs/api/document/encryptedWriter.md +149 -0
  105. package/docs/api/document/incrementalWriter.md +148 -0
  106. package/docs/api/document/page.md +99 -0
  107. package/docs/api/document/pages.md +82 -0
  108. package/docs/api/document/resources.md +102 -0
  109. package/docs/api/document/writer.md +157 -0
  110. package/docs/api/document/xrefStreamWriter.md +122 -0
  111. package/docs/api/embedded/README.md +13 -0
  112. package/docs/api/embedded/collection.md +80 -0
  113. package/docs/api/embedded/embeddedFile.md +86 -0
  114. package/docs/api/embedded/fileSpec.md +87 -0
  115. package/docs/api/errors.md +110 -0
  116. package/docs/api/extra/3d-richmedia.md +76 -0
  117. package/docs/api/extra/README.md +99 -0
  118. package/docs/api/extra/annot-extended.md +71 -0
  119. package/docs/api/extra/associated-files.md +70 -0
  120. package/docs/api/extra/ccitt-fax-decoder.md +74 -0
  121. package/docs/api/extra/color-spaces-extended.md +72 -0
  122. package/docs/api/extra/content-ops-extended.md +82 -0
  123. package/docs/api/extra/document-parts.md +69 -0
  124. package/docs/api/extra/embedded-files-portfolio.md +87 -0
  125. package/docs/api/extra/font-cid-typed.md +77 -0
  126. package/docs/api/extra/font-color-tagging.md +76 -0
  127. package/docs/api/extra/form-actions-extended.md +75 -0
  128. package/docs/api/extra/info-dict-deprecated.md +72 -0
  129. package/docs/api/extra/jbig2-read.md +80 -0
  130. package/docs/api/extra/legacy-deprecated-annots.md +89 -0
  131. package/docs/api/extra/legacy-deprecated-filters.md +78 -0
  132. package/docs/api/extra/legacy-rc4-read.md +74 -0
  133. package/docs/api/extra/legacy-xfa-read.md +65 -0
  134. package/docs/api/extra/linearization-write.md +71 -0
  135. package/docs/api/extra/misc.md +93 -0
  136. package/docs/api/extra/optional-content-extended.md +83 -0
  137. package/docs/api/extra/pdf-a-output-intent.md +65 -0
  138. package/docs/api/extra/pdf-sandbox.md +76 -0
  139. package/docs/api/extra/pdf-ua-tagged.md +63 -0
  140. package/docs/api/extra/pdf-x-prepress.md +65 -0
  141. package/docs/api/extra/redaction-iso32005.md +65 -0
  142. package/docs/api/extra/shading-typed.md +73 -0
  143. package/docs/api/extra/sig-aes-gcm.md +69 -0
  144. package/docs/api/extra/sig-pades.md +103 -0
  145. package/docs/api/extra/tagged-pdf-typed.md +78 -0
  146. package/docs/api/extra/transparency-typed.md +74 -0
  147. package/docs/api/extra/well-tagged-pdf.md +61 -0
  148. package/docs/api/extra/xmp-extended.md +65 -0
  149. package/docs/api/font/README.md +25 -0
  150. package/docs/api/font/embed.md +157 -0
  151. package/docs/api/font/encoding.md +95 -0
  152. package/docs/api/font/font.md +97 -0
  153. package/docs/api/font/type3.md +89 -0
  154. package/docs/api/form/README.md +35 -0
  155. package/docs/api/form/acroform.md +88 -0
  156. package/docs/api/form/appearance.md +87 -0
  157. package/docs/api/form/button.md +97 -0
  158. package/docs/api/form/choice.md +96 -0
  159. package/docs/api/form/fieldTree.md +93 -0
  160. package/docs/api/form/signature.md +90 -0
  161. package/docs/api/form/text.md +88 -0
  162. package/docs/api/linearization/README.md +11 -0
  163. package/docs/api/linearization/linearization.md +81 -0
  164. package/docs/api/main.md +116 -0
  165. package/docs/api/metadata/README.md +10 -0
  166. package/docs/api/metadata/info.md +70 -0
  167. package/docs/api/metadata/xmp.md +62 -0
  168. package/docs/api/ocg/README.md +23 -0
  169. package/docs/api/ocg/config.md +95 -0
  170. package/docs/api/ocg/ocg.md +77 -0
  171. package/docs/api/outline/README.md +11 -0
  172. package/docs/api/outline/outline.md +107 -0
  173. package/docs/api/pdf.md +152 -0
  174. package/docs/api/prepress/README.md +10 -0
  175. package/docs/api/prepress/outputIntent.md +79 -0
  176. package/docs/api/prepress/pageBoundary.md +75 -0
  177. package/docs/api/sig/README.md +32 -0
  178. package/docs/api/sig/byteRange.md +120 -0
  179. package/docs/api/sig/certChain.md +84 -0
  180. package/docs/api/sig/dss.md +111 -0
  181. package/docs/api/sig/oids.md +76 -0
  182. package/docs/api/sig/sha1.md +72 -0
  183. package/docs/api/sig/sign.md +317 -0
  184. package/docs/api/sig/signature.md +178 -0
  185. package/docs/api/sig/timestamp.md +84 -0
  186. package/docs/api/syntax/README.md +29 -0
  187. package/docs/api/syntax/crossRefStream.md +115 -0
  188. package/docs/api/syntax/filters/README.md +50 -0
  189. package/docs/api/syntax/filters/ascii85.md +76 -0
  190. package/docs/api/syntax/filters/asciiHex.md +73 -0
  191. package/docs/api/syntax/filters/dispatch.md +125 -0
  192. package/docs/api/syntax/filters/flate.md +134 -0
  193. package/docs/api/syntax/filters/runLength.md +78 -0
  194. package/docs/api/syntax/objStream.md +88 -0
  195. package/docs/api/syntax/parser-obj.md +97 -0
  196. package/docs/api/syntax/parser.md +151 -0
  197. package/docs/api/syntax/serializer.md +109 -0
  198. package/docs/api/syntax/tokenizer.md +104 -0
  199. package/docs/api/syntax/trailer.md +85 -0
  200. package/docs/api/syntax/xref.md +139 -0
  201. package/docs/api/tagged/README.md +25 -0
  202. package/docs/api/tagged/classMap.md +67 -0
  203. package/docs/api/tagged/markedContent.md +62 -0
  204. package/docs/api/tagged/parentTree.md +67 -0
  205. package/docs/api/tagged/roleMap.md +67 -0
  206. package/docs/api/tagged/structElement.md +76 -0
  207. package/docs/api/tagged/structTree.md +75 -0
  208. package/docs/guide/coverage.md +113 -0
  209. package/docs/guide/crypto.md +121 -0
  210. package/docs/guide/extending.md +76 -0
  211. package/docs/guide/getting-started.md +75 -0
  212. package/docs/guide/legacy-1.7.md +42 -0
  213. package/docs/guide/pades-integration.md +579 -0
  214. package/docs/guide/read-pdf.md +89 -0
  215. package/package.json +97 -4
  216. package/src/_shared/index.js +179 -0
  217. package/src/action/action.js +119 -0
  218. package/src/action/goTo.js +89 -0
  219. package/src/action/launch.js +61 -0
  220. package/src/action/named.js +54 -0
  221. package/src/action/uri.js +51 -0
  222. package/src/annot/annot.js +212 -0
  223. package/src/annot/fileAttach.js +55 -0
  224. package/src/annot/freeText.js +82 -0
  225. package/src/annot/ink.js +77 -0
  226. package/src/annot/link.js +77 -0
  227. package/src/annot/markup.js +91 -0
  228. package/src/annot/popup.js +53 -0
  229. package/src/annot/projection.js +52 -0
  230. package/src/annot/redact.js +87 -0
  231. package/src/annot/square.js +132 -0
  232. package/src/annot/stamp.js +48 -0
  233. package/src/annot/text.js +54 -0
  234. package/src/annot/widget.js +61 -0
  235. package/src/associatedFiles/associatedFiles.js +86 -0
  236. package/src/bundles/pdf-full.js +91 -0
  237. package/src/bundles/pdf-large.js +81 -0
  238. package/src/bundles/pdf-legacy.js +107 -0
  239. package/src/content/color.js +114 -0
  240. package/src/content/graphics.js +192 -0
  241. package/src/content/images.js +160 -0
  242. package/src/content/ops.js +137 -0
  243. package/src/content/stream.js +154 -0
  244. package/src/content/text.js +125 -0
  245. package/src/crypto/aesGcm.js +123 -0
  246. package/src/crypto/permissions.js +112 -0
  247. package/src/crypto/security.js +327 -0
  248. package/src/crypto/standardV4.js +443 -0
  249. package/src/crypto/standardV5.js +306 -0
  250. package/src/crypto/standardV6.js +334 -0
  251. package/src/destination/destination.js +183 -0
  252. package/src/document/builder.js +618 -0
  253. package/src/document/catalog.js +100 -0
  254. package/src/document/document.js +472 -0
  255. package/src/document/encryptedWriter.js +554 -0
  256. package/src/document/incrementalWriter.js +514 -0
  257. package/src/document/page.js +131 -0
  258. package/src/document/pages.js +103 -0
  259. package/src/document/resources.js +146 -0
  260. package/src/document/writer.js +211 -0
  261. package/src/document/xrefStreamWriter.js +353 -0
  262. package/src/embedded/collection.js +102 -0
  263. package/src/embedded/embeddedFile.js +99 -0
  264. package/src/embedded/fileSpec.js +137 -0
  265. package/src/errors.js +78 -0
  266. package/src/extra/3d-richmedia.js +171 -0
  267. package/src/extra/annot-extended.js +200 -0
  268. package/src/extra/associated-files.js +131 -0
  269. package/src/extra/ccitt-fax-decoder.js +776 -0
  270. package/src/extra/color-spaces-extended.js +196 -0
  271. package/src/extra/content-ops-extended.js +153 -0
  272. package/src/extra/document-parts.js +149 -0
  273. package/src/extra/embedded-files-portfolio.js +234 -0
  274. package/src/extra/font-cid-typed.js +185 -0
  275. package/src/extra/font-color-tagging.js +144 -0
  276. package/src/extra/form-actions-extended.js +196 -0
  277. package/src/extra/info-dict-deprecated.js +137 -0
  278. package/src/extra/jbig2-read.js +169 -0
  279. package/src/extra/legacy-deprecated-annots.js +198 -0
  280. package/src/extra/legacy-deprecated-filters.js +167 -0
  281. package/src/extra/legacy-rc4-read.js +235 -0
  282. package/src/extra/legacy-xfa-read.js +104 -0
  283. package/src/extra/linearization-write.js +97 -0
  284. package/src/extra/misc.js +217 -0
  285. package/src/extra/optional-content-extended.js +142 -0
  286. package/src/extra/pdf-a-output-intent.js +112 -0
  287. package/src/extra/pdf-sandbox.js +88 -0
  288. package/src/extra/pdf-ua-tagged.js +116 -0
  289. package/src/extra/pdf-x-prepress.js +114 -0
  290. package/src/extra/redaction-iso32005.js +136 -0
  291. package/src/extra/shading-typed.js +222 -0
  292. package/src/extra/sig-aes-gcm.js +135 -0
  293. package/src/extra/sig-pades.js +242 -0
  294. package/src/extra/tagged-pdf-typed.js +203 -0
  295. package/src/extra/transparency-typed.js +135 -0
  296. package/src/extra/well-tagged-pdf.js +138 -0
  297. package/src/extra/xmp-extended.js +190 -0
  298. package/src/font/embed.js +480 -0
  299. package/src/font/encoding.js +92 -0
  300. package/src/font/font.js +101 -0
  301. package/src/font/type3.js +75 -0
  302. package/src/form/acroform.js +94 -0
  303. package/src/form/appearance.js +90 -0
  304. package/src/form/button.js +105 -0
  305. package/src/form/choice.js +152 -0
  306. package/src/form/fieldTree.js +120 -0
  307. package/src/form/signature.js +100 -0
  308. package/src/form/text.js +101 -0
  309. package/src/linearization/linearization.js +107 -0
  310. package/src/main.js +411 -0
  311. package/src/metadata/info.js +87 -0
  312. package/src/metadata/xmp.js +62 -0
  313. package/src/ocg/config.js +156 -0
  314. package/src/ocg/ocg.js +124 -0
  315. package/src/outline/outline.js +157 -0
  316. package/src/pdf.js +133 -0
  317. package/src/prepress/outputIntent.js +118 -0
  318. package/src/prepress/pageBoundary.js +108 -0
  319. package/src/sig/byteRange.js +306 -0
  320. package/src/sig/certChain.js +247 -0
  321. package/src/sig/dss.js +317 -0
  322. package/src/sig/oids.js +157 -0
  323. package/src/sig/sha1.js +142 -0
  324. package/src/sig/sign.js +1899 -0
  325. package/src/sig/signature.js +1441 -0
  326. package/src/sig/timestamp.js +236 -0
  327. package/src/syntax/crossRefStream.js +133 -0
  328. package/src/syntax/filters/ascii85.js +122 -0
  329. package/src/syntax/filters/asciiHex.js +83 -0
  330. package/src/syntax/filters/dispatch.js +176 -0
  331. package/src/syntax/filters/flate.js +316 -0
  332. package/src/syntax/filters/runLength.js +96 -0
  333. package/src/syntax/objStream.js +99 -0
  334. package/src/syntax/parser-obj.js +52 -0
  335. package/src/syntax/parser.js +321 -0
  336. package/src/syntax/serializer.js +221 -0
  337. package/src/syntax/tokenizer.js +290 -0
  338. package/src/syntax/trailer.js +76 -0
  339. package/src/syntax/xref.js +341 -0
  340. package/src/tagged/classMap.js +81 -0
  341. package/src/tagged/markedContent.js +123 -0
  342. package/src/tagged/parentTree.js +126 -0
  343. package/src/tagged/roleMap.js +107 -0
  344. package/src/tagged/structElement.js +138 -0
  345. package/src/tagged/structTree.js +94 -0
@@ -0,0 +1,35 @@
1
+ /*!
2
+ * Copyright (c) 2026 AwaCloud SAS
3
+ * Author: Matthieu Bouilloux
4
+ * SPDX-License-Identifier: AGPL-3.0-only
5
+ * Dual-licensed; see the NOTICE file for licensing and any additional terms.
6
+ */
7
+ /* GENERATED — do not edit. Source: packages/front/office/pdf/tools/generate-bundles.mjs */
8
+ var q$={name:"pdfFullBundled",dependencies:[],factory(){let Z$=Object.create(null),Q$=Object.create(null);function a(A){Z$[A.name]=A}function M0(A){if(A in Q$)return Q$[A];let P=Z$[A];if(!P)throw Error("prebuilt: unknown module "+A);let j=P.dependencies.map(M0);return Q$[A]=P.factory.apply({},j)}a({name:"bitstream",dependencies:[],factory:function(){function A(Y,G,X){let U=G>>>3;return(Y[U]|Y[U+1]<<8)>>>(G&7)&X}function P(Y,G){let X=G>>>3;return(Y[X]|Y[X+1]<<8|Y[X+2]<<16)>>>(G&7)}function j(Y,G,X){let U=G>>>3,z=X<<(G&7);Y[U]|=z,Y[U+1]|=z>>>8}function H(Y,G,X){let U=G>>>3,z=X<<(G&7);Y[U]|=z,Y[U+1]|=z>>>8,Y[U+2]|=z>>>16}function D(Y){return Y+7>>>3}function R(Y,G,X){let U=G==null||G<0?0:G,z=X==null||X>Y.length?Y.length:X;return new Uint8Array(Y.subarray(U,z))}function O(Y){let G=Y[0];for(let X=Y.length-1;X>0;--X){let U=Y[X];if(U>G)G=U}return G}let M=new Uint16Array(32768);for(let Y=1;Y<32768;Y++)M[Y]=(Y&1)<<14|M[Y>>1]>>1;return{rev:M,byteOffset:D,readBits:A,writeBits:j,readBits16:P,writeBits16:H,slice:R,max:O}}}),a({name:"huffman",dependencies:["bitstream"],factory:function(A){let P=A.rev;function j(Y){let G=new Int32Array(16);for(let z=0;z<Y.length;++z)G[Y[z]]++;G[0]=0;let X=new Int32Array(16),U=0;for(let z=1;z<16;++z)U=U+G[z-1]<<1,X[z]=U;return X}function H(Y,G,X){let U=j(Y),z=Y.length;if(!X){let K=new Uint16Array(z);for(let V=0;V<z;++V){let F=Y[V];if(F)K[V]=P[U[F]++]>>>15-F}return K}let q=1<<G,C=new Uint16Array(q);for(let K=0;K<z;++K){let V=Y[K];if(!V)continue;let F=K<<4|V,$=1<<V;for(let Q=P[U[V]++]>>>15-V;Q<q;Q+=$)C[Q]=F}return C}function D(Y,G,X){let U=new Float64Array(X),z=0;for(let K=0;K<G;++K)if(Y[K]>0)U[z++]=Y[K]*G+K;U.sort();let q=new Int32Array(X),C=new Float64Array(X);for(let K=0;K<X;++K){let V=U[K]%G;q[K]=V,C[K]=(U[K]-V)/G}return{symbols:q,weights:C}}function R(Y,G){let X=Y.length,U=2*X,z=new Uint8Array(G*U),q=new Int32Array(G),C=new Float64Array(U),K=new Float64Array(U);C.set(Y),z.fill(1,0,X),q[0]=X;for(let $=1;$<G;++$){let Q=q[$-1]>>>1,J=$*U,Z=0,W=0,I=0;while(Z<X||W<Q){let S=W<Q?C[2*W]+C[2*W+1]:1/0;if(Z<X&&Y[Z]<=S)K[I]=Y[Z++],z[J+I]=1;else K[I]=S,++W;++I}q[$]=I;let N=C;C=K,K=N}let V=new Uint8Array(X),F=2*X-2;for(let $=G-1;$>=0&&F>0;--$){let Q=$*U,J=0;for(let Z=0;Z<F;++Z)J+=z[Q+Z];for(let Z=0;Z<J;++Z)V[Z]++;F=2*(F-J)}return V}function O(Y,G){let X=Y.length,U=X-1,z=new Float64Array(U),q=new Int32Array(U+X),C=0,K=0;for(let $=0;$<U;++$){let Q=0;for(let J=0;J<2;++J)if(C<X&&(K===$||Y[C]<=z[K]))Q+=Y[C],q[U+C++]=$;else Q+=z[K],q[K++]=$;z[$]=Q}let V=new Int32Array(U);for(let $=U-2;$>=0;--$)V[$]=V[q[$]]+1;let F=new Uint8Array(X);for(let $=0;$<X;++$){let Q=V[q[U+$]]+1;if(Q>G)return null;F[$]=Q}return F}function M(Y,G){let X=0,U=-1;for(let V=0;V<Y.length;++V)if(Y[V]>0)++X,U=V;if(X===0)return{t:new Uint8Array(0),l:0};let z=new Uint8Array(U+1);if(X===1)return z[U]=1,{t:z,l:1};let{symbols:q,weights:C}=D(Y,U+1,X),K=O(C,G)||R(C,G);for(let V=0;V<X;++V)z[q[V]]=K[V];return{t:z,l:K[0]}}return{buildTree:M,buildMap:H}}}),a({name:"lz77",dependencies:[],factory:function(){let A=Uint8Array,P=Int32Array,j=Object.freeze({windowBits:16,minMatch:4,maxMatch:258,chainDepth:16,lazy:!1,hashBits:17,niceLength:258,goodLength:258,maxLazy:258,chainSkip:!1,start:0,hashFn:null});function H(U){U=U||{};let z=Math.max(U.minMatch??j.minMatch,3),q=U.maxMatch??j.maxMatch,C=Math.min(Math.max(U.niceLength??q,z),q);return{windowBits:Math.min(U.windowBits??j.windowBits,24),minMatch:z,maxMatch:q,chainDepth:Math.max(U.chainDepth??j.chainDepth,1),lazy:U.lazy??j.lazy,hashBits:Math.min(U.hashBits??j.hashBits,22),niceLength:C,goodLength:Math.min(U.goodLength??j.goodLength,q),maxLazy:Math.min(U.maxLazy??j.maxLazy,C),chainSkip:U.chainSkip??j.chainSkip,start:Math.max(0,U.start|0),hashFn:typeof U.hashFn==="function"?U.hashFn:null}}function D(U){let z=(1<<U.hashBits)-1,q=32-U.hashBits,C=U.hashFn;if(C)return function(V,F){return C(V,F)&z};if(U.minMatch<=3)return function(V,F){let $=V[F]*506832829>>>0;return $=($^V[F+1]*982451653)>>>0,$=($^V[F+2]*1610612741)>>>0,$>>>q&z};return function(V,F){let $=V[F]*506832829>>>0;return $=($^V[F+1]*982451653)>>>0,$=($^V[F+2]*1610612741)>>>0,$=($^V[F+3]*805306457)>>>0,$>>>q&z}}let R=0;function O(U,z,q,C,K,V,F,$,Q,J,Z,W){if(W>=Q||W>=$)return 0;let I=U[z],N=U[z+1],S=W,B=0,x=C[q],v=0,E=J;while(x!==-1&&E-- >0){let T=x-v;if(T<0||z-T>=V)break;if(U[T+S]===U[z+S]&&U[T+S-1]===U[z+S-1]&&U[T]===I&&U[T+1]===N){let _=0;while(_<$&&U[T+_]===U[z+_])++_;if(_>S){if(S=_,B=z-T,_>=Q||_>=$)break;if(Z){let w=0;for(let h=0,l=Math.min(B,_-2);h<l;++h){let y=T+h,d=K[y&F];if(d===-1)continue;let n=y-d;if(n>w)w=n,x=y,v=h}}}}x=K[x&F]}if(B===0)return 0;return R=B,S}function M(U,z,q,C,K){let V=H(K);if(z+V.minMatch>U.length)return null;let F=1<<V.windowBits,$=D(V),Q=Math.min(V.maxMatch,U.length-z),J=O(U,z,$(U,z),q,C,F,F-1,Q,V.niceLength,V.chainDepth,V.chainSkip,V.minMatch-1);return J?{len:J,dist:R}:null}function Y(U,z,q){if(!(U instanceof A))throw Error("lz77.encode: data must be Uint8Array");let{literal:C,match:K}=q;if(typeof C!=="function"||typeof K!=="function")throw Error("lz77.encode: callbacks.literal and callbacks.match required");let{tokens:V,count:F}=G(U,z),$=H(z).start;for(let Q=0,J=0;Q<F;++Q,J+=2){let Z=V[J];if(Z===0)C($),$+=1;else K($,Z,V[J+1]),$+=Z}}function G(U,z){if(!(U instanceof A))throw Error("lz77.encodeTokens: data must be Uint8Array");let q=H(z),C=U.length,K=2*Math.max(0,C-q.start),V=z&&z.tokens,F;if(V){if(V.length<K)throw Error("lz77.encodeTokens: tokens buffer too small");F=V}else F=new P(K);let $=0;if(q.start>=C)return{tokens:F,count:0};let{maxMatch:Q,niceLength:J,chainDepth:Z,lazy:W,goodLength:I,maxLazy:N,chainSkip:S}=q,B=1<<q.windowBits,x=B-1,v=new P(1<<q.hashBits).fill(-1),E=new P(Math.min(B,C)).fill(-1),T=D(q),_=C-q.minMatch,w=q.minMatch-1;for(let l=0;l<q.start&&l<=_;++l){let y=T(U,l);E[l&x]=v[y],v[y]=l}let h=q.start;while(h<=_){let l=T(U,h),y=O(U,h,l,v,E,B,x,Math.min(Q,C-h),J,Z,S,w),d=R;if(E[h&x]=v[l],v[l]=h,y===0){F[$++]=0,F[$++]=U[h],h++;continue}if(W&&y<N&&h<_){let i=T(U,h+1),Y0=O(U,h+1,i,v,E,B,x,Math.min(Q,C-h-1),J,y>=I?Z>>2||1:Z,S,y);if(Y0)F[$++]=0,F[$++]=U[h],h++,y=Y0,d=R,E[h&x]=v[i],v[i]=h}F[$++]=y,F[$++]=d;let n=h+y;for(let i=h+1;i<n&&i<=_;++i){let Y0=T(U,i);E[i&x]=v[Y0],v[Y0]=i}h=n}while(h<C)F[$++]=0,F[$++]=U[h],h++;return{tokens:F,count:$/2}}function X(U,z){let q=0;for(let C of z)if("lit"in C)U[q++]=C.lit;else for(let K=0;K<C.len;++K)U[q]=U[q-C.dist],q++;return q}return{encode:Y,encodeTokens:G,findMatch:M,decodeStream:X,DEFAULT:j}}}),a({name:"deflate",dependencies:["bitstream","huffman","lz77"],factory:function(A,P,j){let{readBits:H,readBits16:D,writeBits:R,writeBits16:O,byteOffset:M,slice:Y,max:G}=A,{buildMap:X,buildTree:U}=P,z=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",null,null,"invalid data"];function q(L,g){let b=Error(g??z[L]??"unknown error");throw b.code=L,b}let C=Uint8Array,K=Uint16Array,V=Uint32Array,F=Int32Array,$=32768;function Q(L){if(L<8||L===28)return 0;return L-4>>2}function J(L){if(L<4)return 0;return L-2>>1}function Z(L,g){let b=new K(L.length);b[0]=g;for(let p=1;p<L.length;++p)b[p]=b[p-1]+(1<<L[p-1]);return b}let W=new C(29);for(let L=0;L<29;++L)W[L]=Q(L);let I=Z(W,3);I[28]=258;let N=new C(30);for(let L=0;L<30;++L)N[L]=J(L);let S=Z(N,1),B=new C([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),x=new C(288);for(let L=0;L<144;++L)x[L]=8;for(let L=144;L<256;++L)x[L]=9;for(let L=256;L<280;++L)x[L]=7;for(let L=280;L<288;++L)x[L]=8;let v=new C(30);for(let L=0;L<30;++L)v[L]=5;let E=X(x,9,1),T=X(v,5,1),_=X(x,9,0),w=X(v,5,0),h=new C(259);for(let L=0;L<28;++L){let g=I[L],b=1<<W[L];for(let p=g;p<g+b&&p<258;++p)h[p]=L}h[258]=28;let l=new C(256);for(let L=1,g=0;L<=256;++L){while(g<29&&L>=S[g+1])++g;l[L-1]=g}let y=new C(128);for(let L=0,g=0;L<128;++L){let b=(L<<8)+1;while(g<29&&b>=S[g+1])++g;y[L]=g}function d(L){if(L<=256)return l[L-1];let g=y[L-1>>8];return g<29&&L>=S[g+1]?g+1:g}let n=0,i=1,Y0=2,H0=3,z0=0,P0=1;function w0(L){let g=L&&L.length?L.subarray(Math.max(0,L.length-$)):null;return{bitPos:0,finalBlock:0,phase:n,storedRemaining:0,litTable:null,litBits:0,distTable:null,distBits:0,out:null,outLen:0,emitted:0,dictionary:g,fixedOut:!1}}function Q0(L,g,b){let p=L.dictionary?L.dictionary.length:0;if(b&&!p)L.out=b,L.fixedOut=!0;else L.out=new C(Math.max(65536,g*3));if(p)L.out.set(L.dictionary),L.outLen=p,L.emitted=p}function e(L,g){if(g<=L.out.length)return;if(L.fixedOut)q(8,"output exceeds provided buffer");let b=L.out.length||65536;while(b<g)b*=2;let p=new C(b);p.set(L.out.subarray(0,L.outLen)),L.out=p}function Z0(L,g){let b=g.length*8,p=L.bitPos,r=H(g,p,31)+257,J0=H(g,p+5,31)+1,K0=H(g,p+10,15)+4;if(p+=14,p>b)return L.bitPos=p,!1;if(r>286||J0>30)q(8,"too many length/distance codes");let O0=new C(19);for(let N0=0;N0<K0;++N0)O0[B[N0]]=H(g,p+N0*3,7);if(p+=K0*3,p>b)return L.bitPos=p,!1;let j0=G(O0),S0=(1<<j0)-1,T0=X(O0,j0,1),x0=r+J0,L0=new C(x0);for(let N0=0;N0<x0;){let k0=T0[H(g,p,S0)];if(!k0||p+(k0&15)>b){if(p+j0>b)return L.bitPos=b+1,!1;q(8,"invalid code-length code")}p+=k0&15;let y0=k0>>4;if(y0<16){L0[N0++]=y0;continue}let l0,h0=0;if(y0===16){if(N0===0)q(8,"code-length repeat with no previous length");h0=L0[N0-1],l0=3+H(g,p,3),p+=2}else if(y0===17)l0=3+H(g,p,7),p+=3;else l0=11+H(g,p,127),p+=7;if(p>b)return L.bitPos=p,!1;if(N0+l0>x0)q(8,"code-length repeat overruns the table");while(l0--)L0[N0++]=h0}let E0=L0.subarray(0,r),m0=L0.subarray(r);return L.litBits=G(E0),L.distBits=G(m0),L.litTable=X(E0,L.litBits,1),L.distTable=X(m0,L.distBits,1),L.bitPos=p,!0}function U0(L,g){let b=g.length*8;L.finalBlock=H(g,L.bitPos,1);let p=H(g,L.bitPos+1,3);if(L.bitPos+=3,L.bitPos>b)return!1;if(p===0){let r=M(L.bitPos);if(r+4>g.length)return L.bitPos=(r+4)*8,!1;let J0=g[r]|g[r+1]<<8;if((g[r+2]|g[r+3]<<8)!==(~J0&65535))q(8,"stored block LEN/NLEN mismatch");L.bitPos=(r+4)*8,L.storedRemaining=J0,L.phase=i}else if(p===1)L.litTable=E,L.litBits=9,L.distTable=T,L.distBits=5,L.phase=Y0;else if(p===2){if(!Z0(L,g))return!1;L.phase=Y0}else q(1);return!0}function k(L,g){let b=L.bitPos>>3,p=Math.min(L.storedRemaining,g.length-b);if(p>0){let r=L.outLen+p;e(L,r),L.out.set(g.subarray(b,b+p),L.outLen),L.outLen=r,L.storedRemaining-=p,L.bitPos+=p*8}if(L.storedRemaining>0)return!1;return L.phase=L.finalBlock?H0:n,!0}function c(L,g){let b=g.length*8,p=L.litTable,r=L.distTable,J0=(1<<L.litBits)-1,K0=(1<<L.distBits)-1;for(;;){let O0=L.bitPos,j0=p[D(g,L.bitPos)&J0];if(!j0||L.bitPos+(j0&15)>b){if(L.bitPos+L.litBits>b)return L.bitPos=O0,!1;q(2)}L.bitPos+=j0&15;let S0=j0>>4;if(S0<256){e(L,L.outLen+1),L.out[L.outLen++]=S0;continue}if(S0===256)return L.phase=L.finalBlock?H0:n,!0;let T0=S0-257;if(T0>=29)q(2);let x0=I[T0],L0=W[T0];if(L0){if(L.bitPos+L0>b)return L.bitPos=O0,!1;x0+=H(g,L.bitPos,(1<<L0)-1),L.bitPos+=L0}let E0=r[D(g,L.bitPos)&K0];if(!E0||L.bitPos+(E0&15)>b){if(L.bitPos+L.distBits>b)return L.bitPos=O0,!1;q(3)}L.bitPos+=E0&15;let m0=E0>>4;if(m0>=30)q(3);let N0=S[m0],k0=N[m0];if(k0){if(L.bitPos+k0>b)return L.bitPos=O0,!1;N0+=D(g,L.bitPos)&(1<<k0)-1,L.bitPos+=k0}if(N0>L.outLen)q(3);let y0=L.outLen+x0;e(L,y0);let l0=L.out;for(let h0=L.outLen;h0<y0;++h0)l0[h0]=l0[h0-N0];L.outLen=y0}}function f(L,g,b){for(;;){if(L.phase===H0)return P0;if(L.phase===n){let p=L.bitPos;if(!U0(L,g)){if(!b)q(0);return L.bitPos=p,L.phase=n,z0}}if(L.phase===i){if(!k(L,g)){if(!b)q(0);return z0}}else if(L.phase===Y0){if(!c(L,g)){if(!b)q(0);return z0}}}}function m(L){if(L.outLen<=$)return;let g=L.outLen-$;L.out.set(L.out.subarray(g,L.outLen),0),L.outLen=$,L.emitted=Math.max(0,L.emitted-g)}let u=15,o=3,$0=258,s=16384,V0=65536,X0=[null,{chainDepth:4,niceLength:8},{chainDepth:8,niceLength:16},{chainDepth:16,niceLength:32},{chainDepth:16,niceLength:16,goodLength:4,maxLazy:4},{chainDepth:32,niceLength:32,goodLength:8,maxLazy:16},{chainDepth:128,niceLength:128,goodLength:8,maxLazy:16},{chainDepth:256,niceLength:128,goodLength:8,maxLazy:32},{chainDepth:1024,niceLength:258,goodLength:32,maxLazy:128},{chainDepth:4096,niceLength:258,goodLength:32,maxLazy:258}];function I0(L,g,b){if(!(L>=g))return g;return L>b?b:L}function F0(L,g){if(L.mem!=null)return Math.min(22,12+L.mem);return I0(Math.ceil(Math.log2(g||1)),12,20)}function u0(L){let g=32-L;return function(p,r){return Math.imul(p[r]|p[r+1]<<8|p[r+2]<<16,2654435761)>>>g}}let f0=2097152,t=null;function G0(L){if(L>f0)return new F(L);if(!t||t.length<L)t=new F(L);return t}function C0(L,g){return{tokens:L,from:0,to:0,litFreq:new V(286),distFreq:new V(30),extraBits:0,blockStart:g,blockLen:0}}function q0(L,g,b){let{tokens:p,litFreq:r,distFreq:J0}=L,K0=0,O0=0;for(let j0=2*g,S0=2*b;j0<S0;j0+=2){let T0=p[j0],x0=p[j0+1];if(T0===0)++r[x0],O0+=1;else{let L0=h[T0],E0=d(x0);++r[257+L0],++J0[E0],K0+=W[L0]+N[E0],O0+=T0}}return L.from=g,L.to=b,L.extraBits=K0,O0}function W0(L,g){L.extraBits=0,L.blockStart=g,L.blockLen=0,L.litFreq.fill(0),L.distFreq.fill(0)}function A0(L,g){let b=(L.bitPos+g>>3)+8;if(b<=L.buf.length)return;let p=L.buf.length||1024;while(p<b)p*=2;let r=new C(p);r.set(L.buf),L.buf=r}function B0(L,g,b){let p=0;for(let r=0;r<b;++r)if(L[r])p+=L[r]*g[r];return p}function g0(L){let g=0;for(let b=0;b<L.length;++b)if(L[b]&&++g===2)return 2;return g}function D0(L){let g=[],b=L.length,p=0;while(p<b){let r=L[p],J0=1;while(p+J0<b&&L[p+J0]===r)++J0;if(p+=J0,r===0){while(J0>=11){let K0=J0<138?J0:138;g.push(18,K0-11,7),J0-=K0}if(J0>=3)g.push(17,J0-3,3),J0=0;while(J0-- >0)g.push(0,0,0)}else{g.push(r,0,0);let K0=J0-1;while(K0>=3){let O0=K0<6?K0:6;g.push(16,O0-3,2),K0-=O0}while(K0-- >0)g.push(r,0,0)}}return g}function v0(L,g,b,p,r){R(L.buf,L.bitPos,r?1:0),L.bitPos+=3;let J0=M(L.bitPos);if(L.buf[J0]=p&255,L.buf[J0+1]=p>>8&255,L.buf[J0+2]=~p&255,L.buf[J0+3]=~p>>8&255,p)L.buf.set(g.subarray(b,b+p),J0+4);L.bitPos=(J0+4+p)*8}function s0(L,g,b,p,r,J0){let K0=L.buf,O0=g.tokens,j0=L.bitPos;for(let S0=2*g.from,T0=2*g.to;S0<T0;S0+=2){let x0=O0[S0],L0=O0[S0+1];if(x0===0){O(K0,j0,b[L0]),j0+=p[L0];continue}let E0=h[x0];O(K0,j0,b[257+E0]),j0+=p[257+E0];let m0=W[E0];if(m0)R(K0,j0,x0-I[E0]),j0+=m0;let N0=d(L0);O(K0,j0,r[N0]),j0+=J0[N0];let k0=N[N0];if(k0)O(K0,j0,L0-S[N0]),j0+=k0}O(K0,j0,b[256]),L.bitPos=j0+p[256]}function a0(L,g,b,p){++g.litFreq[256];let r=g.blockLen,J0=8-(L.bitPos+3&7)&7,K0=r<=65535?8*(5+r)+J0:1/0,O0=3+B0(g.litFreq,x,286)+B0(g.distFreq,v,30)+g.extraBits,j0=U(g.litFreq,15),S0=U(g.distFreq,15),T0=Math.max(257,j0.t.length),x0=Math.max(1,S0.t.length),L0=new C(T0+x0);if(L0.set(j0.t,0),S0.t.length)L0.set(S0.t,T0);let E0=L0.subarray(0,T0),m0=L0.subarray(T0),N0=D0(L0),k0=new K(19),y0=0;for(let _0=0;_0<N0.length;_0+=3)++k0[N0[_0]],y0+=N0[_0+2];let l0=U(k0,7),h0=new C(19);h0.set(l0.t);let d0=19;while(d0>4&&!h0[B[d0-1]])--d0;let X$=17+3*d0+B0(k0,h0,19)+y0+B0(g.litFreq,E0,Math.min(286,T0))+B0(g.distFreq,m0,Math.min(30,x0))+g.extraBits;if(g0(g.litFreq)<2||g0(k0)<2)X$=1/0;let J$=Math.min(K0,O0,X$);if(A0(L,J$+64),J$===K0){v0(L,b,g.blockStart,r,p);return}if(R(L.buf,L.bitPos,p?1:0),J$===O0){R(L.buf,L.bitPos+1,1),L.bitPos+=3,s0(L,g,_,x,w,v);return}R(L.buf,L.bitPos+1,2),L.bitPos+=3;let{buf:i0,bitPos:b0}=L;R(i0,b0,T0-257),R(i0,b0+5,x0-1),R(i0,b0+10,d0-4),b0+=14;for(let _0=0;_0<d0;++_0)R(i0,b0+3*_0,h0[B[_0]]);b0+=3*d0;let Y$=X(h0,l0.l||1,0);for(let _0=0;_0<N0.length;_0+=3){let G$=N0[_0];O(i0,b0,Y$[G$]),b0+=h0[G$];let U$=N0[_0+2];if(U$)R(i0,b0,N0[_0+1]),b0+=U$}L.bitPos=b0,s0(L,g,X(E0,j0.l||1,0),E0,X(m0,S0.l||1,0),m0)}function c0(L,g,b,p){let r=g.length;if(b>=r){if(p)A0(L,48),v0(L,g,b,0,!0);return}let J0=b;while(J0<r){let K0=Math.min(65535,r-J0);A0(L,8*(K0+5)+8),v0(L,g,J0,K0,p&&J0+K0>=r),J0+=K0}}function p0(L,g){let b={buf:new C(4096),bitPos:g.carryBits&7};b.buf[0]=g.carryByte&255;let p=g.start;if(g.level===0)c0(b,L,p,g.final);else{let K0=j.encodeTokens(L,{windowBits:u,minMatch:o,maxMatch:$0,hashBits:g.hashBits,start:p,hashFn:u0(g.hashBits),lazy:g.lazy,chainSkip:!0,...X0[g.level],tokens:G0(2*Math.max(0,L.length-p))}),O0=C0(K0.tokens,p),j0=K0.count;for(let S0=0;;S0+=s){let T0=Math.min(j0,S0+s),x0=q0(O0,S0,T0);if(T0===j0){O0.blockLen=L.length-O0.blockStart,a0(b,O0,L,g.final);break}O0.blockLen=x0,a0(b,O0,L,!1),W0(O0,O0.blockStart+x0)}}if(g.final)return{bytes:Y(b.buf,0,M(b.bitPos)),carryByte:0,carryBits:0};let r=b.bitPos>>3,J0=b.bitPos&7;return{bytes:Y(b.buf,0,r),carryByte:J0?b.buf[r]:0,carryBits:J0}}function n0(L,g){if(typeof L==="function")g=L,L={};this.ondata=g,this._o=L||{},this._level=I0(this._o.level??6,0,9)|0;let b=this._o.dictionary;this._window=b&&b.length?Y(b,Math.max(0,b.length-$),b.length):new C(0),this._pending=[],this._pendingLen=0,this._carryByte=0,this._carryBits=0,this._done=!1}n0.prototype._compressPending=function(L){let g=this._window,b=new C(g.length+this._pendingLen);b.set(g);let p=g.length;for(let J0 of this._pending)b.set(J0,p),p+=J0.length;let r=p0(b,{start:g.length,level:this._level,lazy:this._o.lazy===!0,hashBits:F0(this._o,b.length),final:L,carryByte:this._carryByte,carryBits:this._carryBits});if(this._carryByte=r.carryByte,this._carryBits=r.carryBits,this._window=b.length>$?Y(b,b.length-$,b.length):b,this._pending=[],this._pendingLen=0,r.bytes.length>0||L)this.ondata(r.bytes,L)},n0.prototype.push=function(L,g){if(g=!!g,!this.ondata)q(5);if(this._done)q(4);if(L&&L.length)this._pending.push(L),this._pendingLen+=L.length;if(g)this._done=!0;if(g||this._pendingLen>=V0)this._compressPending(g)},n0.prototype.flush=function(){if(!this.ondata)q(5);if(this._done)q(4);this._compressPending(!1)};function o0(L,g){if(typeof L==="function")g=L,L={};this.ondata=g,this._state=w0((L||{}).dictionary),Q0(this._state,0,void 0),this._pending=new C(0),this._done=!1}o0.prototype._append=function(L){if(!this._pending.length)this._pending=L;else if(L.length){let g=new C(this._pending.length+L.length);g.set(this._pending),g.set(L,this._pending.length),this._pending=g}},o0.prototype.push=function(L,g){if(!this.ondata)q(5);if(this._done)q(4);g=!!g,this._append(L);let b=this._state,p=f(b,this._pending,!0);if(g&&p!==P0)q(0);this._done=g;let r=Y(b.out,b.emitted,b.outLen);b.emitted=b.outLen,this.ondata(r,g),m(b),this._pending=Y(this._pending,b.bitPos>>3),b.bitPos&=7};function r0(L,g={}){let b=L,p=0,r=g.dictionary;if(r&&r.length){let J0=r.subarray(Math.max(0,r.length-$));b=new C(J0.length+L.length),b.set(J0),b.set(L,J0.length),p=J0.length}return p0(b,{start:p,level:I0(g.level??6,0,9)|0,lazy:g.lazy===!0,hashBits:F0(g,b.length),final:!0,carryByte:0,carryBits:0}).bytes}function t0(L,g={}){if(!L.length)return g.out?g.out.subarray(0,0):new C(0);let b=w0(g.dictionary),p=b.dictionary?b.dictionary.length:0;if(Q0(b,L.length,g.out),f(b,L,!1),b.fixedOut)return b.out.subarray(0,b.outLen);if(g.out){let r=b.outLen-p;if(r>g.out.length)q(8,"output exceeds provided buffer");return g.out.set(b.out.subarray(p,b.outLen)),g.out.subarray(0,r)}return Y(b.out,p,b.outLen)}let e0=typeof queueMicrotask==="function"?queueMicrotask:(L)=>Promise.resolve().then(L);function $$(L,g={}){return new Promise((b,p)=>{e0(()=>{try{b(r0(L,g))}catch(r){p(r)}})})}function V$(L,g={}){return new Promise((b,p)=>{e0(()=>{try{b(t0(L,g))}catch(r){p(r)}})})}return{deflateSync:r0,inflateSync:t0,deflate:$$,inflate:V$,DeflateStream:n0,InflateStream:o0}}}),a({name:"adler32",dependencies:[],factory:function(){function A(){this._a=1,this._b=0}return A.prototype.append=function(P){let j=this._a,H=this._b,D=P.length|0;for(let R=0;R!==D;){let O=Math.min(R+2655,D);for(;R<O;++R)H+=j+=P[R];j=(j&65535)+15*(j>>16),H=(H&65535)+15*(H>>16)}this._a=j,this._b=H},A.prototype.get=function(){return(this._b%65521<<16|this._a%65521)>>>0},A}}),a({name:"b64",dependencies:[],factory:function(){let A=[];for(let Y=0;Y<64;Y++)A["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(Y)]=Y;function P(Y){return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[Y>>18&63]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[Y>>12&63]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[Y>>6&63]+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[Y&63]}function j(Y,G,X,U){return A[Y.charCodeAt(0)]<<18|A[G.charCodeAt(0)]<<12|A[X.charCodeAt(0)]<<6|A[U.charCodeAt(0)]}function H(Y,G){Y.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[G>>2]),Y.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[G<<4&63]),Y.push("==")}function D(Y,G){Y.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[G>>10]),Y.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[G>>4&63]),Y.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[G<<2&63]),Y.push("=")}function R(Y,G,X,U){X=X-U;for(let z=0;z<X;z+=3)G.push(P((Y[z]<<16)+(Y[z+1]<<8)+Y[z+2]));if(X=Y.length,U===1)H(G,Y[X-1]);else if(U===2)D(G,(Y[X-2]<<8)+Y[X-1]);return G.join("")}function O(Y,G){Y.push(G>>8&255),Y.push(G&255)}function M(Y,G,X,U,z){if(Y[U-2]==="=")z=2;else if(Y[U-1]==="=")z=1;U=z>0?U-4:U;let q;for(q=0;q<U;q+=4)X=j(Y[q],Y[q+1],Y[q+2],Y[q+3]),G.push(X>>16&255),G.push(X>>8&255),G.push(X&255);if(z===2)G.push((A[Y.charCodeAt(q)]<<2|A[Y.charCodeAt(q+1)]>>4)&255);else if(z===1)O(G,A[Y.charCodeAt(q)]<<10|A[Y.charCodeAt(q+1)]<<4|A[Y.charCodeAt(q+2)]>>2);return new Uint8Array(G)}return{fromBytes:function(Y){return R(Y,[],Y.length,Y.length%3)},toBytes:function(Y){return M(Y,[],0,Y.length,0)},test:function(Y){return/^(?=(.{4})*$)[A-Za-z0-9+/]*={0,2}$/.test(Y)}}}}),a({name:"hex",dependencies:[],factory:function(){let A=new Int8Array(128).fill(-1);for(let P=0;P<16;P++)if(A["0123456789abcdef".charCodeAt(P)]=P,P>=10)A["ABCDEF".charCodeAt(P-10)]=P;return{toBytes:(P)=>{let j=P.length;if(j%2!==0)throw Error(`hex: odd-length input (length ${j})`);let H=new Uint8Array(j>>1);for(let D=0,R=0;D<j;D+=2,R++){let O=P.charCodeAt(D),M=P.charCodeAt(D+1),Y=O<128?A[O]:-1,G=M<128?A[M]:-1;if(Y<0||G<0)throw Error(`hex: invalid character at index ${Y<0?D:D+1}`);H[R]=Y<<4|G}return H},fromBytes:(P)=>{let j=Array(P.length);for(let H=0;H<P.length;H++)j[H]="0123456789abcdef"[(P[H]&240)>>4]+"0123456789abcdef"[P[H]&15];return j.join("")},test:(P)=>{if(typeof P!=="string")return!1;if(P.length%2!==0)return!1;return/^[0-9a-fA-F]*$/.test(P)}}}}),a({name:"zlib",dependencies:["deflate","adler32"],factory:function(A,P){let{deflateSync:j,inflateSync:H,DeflateStream:D,InflateStream:R}=A;function O($,Q,J){$[Q]=J>>>24&255,$[Q+1]=J>>>16&255,$[Q+2]=J>>>8&255,$[Q+3]=J&255}function M($){return $.dictionary?6:2}function Y($,Q,J){let Z=Q.level??6,W=Z===0?0:Z<6?1:Z===9?3:2;if($[0]=120,$[1]=W<<6|(Q.dictionary?32:0),$[1]|=31-($[0]<<8|$[1])%31,Q.dictionary){let I=new J;I.append(Q.dictionary),O($,2,I.get())}}function G($,Q){if(($[0]&15)!==8||$[0]>>4>7||($[0]<<8|$[1])%31){let Z=Error("invalid zlib data");throw Z.code=6,Z}let J=$[1]>>5&1;if(J===+!Q){let Z=Error("invalid zlib data: "+(J?"need":"unexpected")+" dictionary");throw Z.code=6,Z}return($[1]>>3&4)+2}function X($,Q={}){let J=new P;J.append($);let Z=M(Q),W=j($,Q),I=new Uint8Array(Z+W.length+4);return Y(I,Q,P),I.set(W,Z),O(I,Z+W.length,J.get()),I}function U($,Q={}){let J=G($,Q.dictionary);return H($.subarray(J,-4),{out:Q.out,dictionary:Q.dictionary})}function z($,Q){let J=new Uint8Array($.length+Q.length);return J.set($),J.set(Q,$.length),J}function q($,Q){if(typeof $==="function")Q=$,$={};this.ondata=Q||null,this._opts=$||{},this._adler=new P,this._first=!0;let J=this;this._ds=new D(this._opts,function(Z,W){let I;if(J._first){let N=M(J._opts),S=new Uint8Array(N);Y(S,J._opts,P),I=z(S,Z),J._first=!1}else I=Z;if(W){let N=new Uint8Array(4);O(N,0,J._adler.get()),I=z(I,N)}if(J.ondata)J.ondata(I,W)})}q.prototype.push=function($,Q){this._adler.append($),this._ds.push($,!!Q)};function C($,Q){if(typeof $==="function")Q=$,$={};this.ondata=Q||null,this._opts=$||{},this._buf=[],this._bufLen=0,this._hdr=-1,this._inf=null,this._tail=new Uint8Array(4),this._tailLen=0}C.prototype.push=function($,Q){if(this._hdr===-1){this._buf.push($),this._bufLen+=$.length;let J=new Uint8Array(this._bufLen),Z=0;for(let N of this._buf)J.set(N,Z),Z+=N.length;let W;try{W=G(J,this._opts.dictionary)}catch(N){if(Q)throw N;return}this._hdr=W,this._buf=null;let I=this;this._inf=new R(this._opts,function(N,S){if(I.ondata)I.ondata(N,S)}),this._feedPayload(J.subarray(W),!!Q)}else this._feedPayload($,!!Q)},C.prototype._feedPayload=function($,Q){let J=new Uint8Array(this._tailLen+$.length);if(J.set(this._tail.subarray(0,this._tailLen)),J.set($,this._tailLen),!Q){let Z=J.length>4?J.length-4:0;if(Z>0)this._inf.push(J.subarray(0,Z),!1);let W=J.length-Z;this._tailLen=W,this._tail.set(J.subarray(Z))}else{let Z=Math.max(0,J.length-4);this._inf.push(J.subarray(0,Z),!0)}};let K=typeof queueMicrotask==="function"?queueMicrotask:($)=>Promise.resolve().then($);function V($,Q={}){return new Promise((J,Z)=>{K(()=>{try{J(X($,Q))}catch(W){Z(W)}})})}function F($,Q={}){return new Promise((J,Z)=>{K(()=>{try{J(U($,Q))}catch(W){Z(W)}})})}return{zlibSync:X,unzlibSync:U,zlib:V,unzlib:F,ZlibStream:q,UnzlibStream:C}}}),a({name:"lzw",dependencies:[],factory:function(){let A=Uint8Array;function P(O){O=O||{};let M=O.minCodeBits??8,Y=O.maxBits??12,G=!!O.bigEndian,X=O.useClearEnd??!0;if(M<2||M>12)throw Error("lzw: minCodeBits must be in [2, 12]");if(Y<M+1||Y>16)throw Error("lzw: maxBits must be in [minCodeBits+1, 16]");return{minCodeBits:M,maxBits:Y,bigEndian:G,useClearEnd:X}}function j(O){let M=new A(256),Y=0,G=0,X=0;function U(K){if(Y+K>M.length){let V=M.length;while(V<Y+K)V*=2;let F=new A(V);F.set(M.subarray(0,Y)),M=F}}function z(K,V){if(O){G=G<<V|K,X+=V;while(X>=8)X-=8,U(1),M[Y++]=G>>>X&255}else{G|=K<<X,X+=V;while(X>=8)U(1),M[Y++]=G&255,G>>>=8,X-=8}}function q(){if(X>0){if(U(1),O)M[Y++]=G<<8-X&255;else M[Y++]=G&255;G=0,X=0}}function C(){return M.slice(0,Y)}return{writeCode:z,flush:q,bytes:C}}function H(O,M){let Y=0,G=0,X=0;function U(z){if(M){while(X<z){if(Y>=O.length)return-1;G=G<<8|O[Y++],X+=8}return X-=z,G>>>X&(1<<z)-1}while(X<z){if(Y>=O.length)return-1;G|=O[Y++]<<X,X+=8}let q=G&(1<<z)-1;return G>>>=z,X-=z,q}return{readCode:U}}function D(O,M){if(!(O instanceof A))throw Error("lzw.encode: data must be Uint8Array");let Y=P(M),G=1<<Y.minCodeBits,X=Y.useClearEnd?G:-1,U=Y.useClearEnd?G+1:-1,z=Y.useClearEnd?G+2:G,q=j(Y.bigEndian),C=Y.minCodeBits+1,K=z,V=(1<<Y.maxBits)-1,F=new Map;for(let Q=0;Q<G;++Q)F.set(String.fromCharCode(Q),Q);if(Y.useClearEnd)q.writeCode(X,C);if(O.length===0){if(Y.useClearEnd)q.writeCode(U,C);return q.flush(),q.bytes()}let $=String.fromCharCode(O[0]);for(let Q=1;Q<O.length;++Q){let J=String.fromCharCode(O[Q]),Z=$+J;if(F.has(Z))$=Z;else{if(q.writeCode(F.get($),C),K<=V){if(F.set(Z,K++),K===1<<C&&C<Y.maxBits)C++}$=J}}if(q.writeCode(F.get($),C),Y.useClearEnd)q.writeCode(U,C);return q.flush(),q.bytes()}function R(O,M){if(!(O instanceof A))throw Error("lzw.decode: data must be Uint8Array");let Y=P(M),G=1<<Y.minCodeBits,X=Y.useClearEnd?G:-1,U=Y.useClearEnd?G+1:-1,z=Y.useClearEnd?G+2:G,q=H(O,Y.bigEndian),C=new A(Math.max(O.length*2,256)),K=0;function V(I){if(K+I.length>C.length){let N=C.length;while(N<K+I.length)N*=2;let S=new A(N);S.set(C.subarray(0,K)),C=S}C.set(I,K),K+=I.length}let F=Array(1<<Y.maxBits);function $(){for(let I=0;I<G;++I)F[I]=new A([I]);return z}let Q=$(),J=Y.minCodeBits+1,Z=null,W=(1<<Y.maxBits)-1;for(;;){let I=q.readCode(J);if(I<0)break;if(I===U)break;if(I===X){Q=$(),J=Y.minCodeBits+1,Z=null;continue}let N;if(I<Q){if(N=F[I],!N)throw Error("lzw.decode: invalid code "+I+" (unassigned)")}else if(I===Q&&Z)N=new A(Z.length+1),N.set(Z,0),N[Z.length]=Z[0];else throw Error("lzw.decode: code "+I+" out of range (nextCode="+Q+")");if(V(N),Z&&Q<=W){let S=new A(Z.length+1);if(S.set(Z,0),S[Z.length]=N[0],F[Q++]=S,Q===(1<<J)-1&&J<Y.maxBits)J++}Z=N}return K===C.length?C:C.slice(0,K)}return{encode:D,decode:R}}}),a({name:"utf8",dependencies:[],factory:function(){let A=typeof TextEncoder<"u",P=typeof TextDecoder<"u",j=A?new TextEncoder:null,H=P?new TextDecoder("utf-8",{fatal:!1}):null;function D(O){let M=O.length,Y=new Uint8Array(M*3),G=0;for(let X=0;X<M;X++){let U=O.charCodeAt(X);if(U>=55296&&U<=56319&&X+1<M){let z=O.charCodeAt(X+1);if(z>=56320&&z<=57343)U=65536+(U-55296<<10)+(z-56320),X++;else U=65533}else if(U>=56320&&U<=57343)U=65533;if(U<128)Y[G++]=U;else if(U<2048)Y[G++]=192|U>>6,Y[G++]=128|U&63;else if(U<65536)Y[G++]=224|U>>12,Y[G++]=128|U>>6&63,Y[G++]=128|U&63;else Y[G++]=240|U>>18,Y[G++]=128|U>>12&63,Y[G++]=128|U>>6&63,Y[G++]=128|U&63}return Y.subarray(0,G)}function R(O){let M=[],Y=O.length,G=0;while(G<Y){let X=O[G],U;if(X<128)U=X,G+=1;else if(X<192)U=65533,G+=1;else if(X<224){if(G+1>=Y){M.push(String.fromCharCode(65533));break}U=(X&31)<<6|O[G+1]&63,G+=2}else if(X<240){if(G+2>=Y){M.push(String.fromCharCode(65533));break}U=(X&15)<<12|(O[G+1]&63)<<6|O[G+2]&63,G+=3}else if(X<248){if(G+3>=Y){M.push(String.fromCharCode(65533));break}U=(X&7)<<18|(O[G+1]&63)<<12|(O[G+2]&63)<<6|O[G+3]&63,G+=4}else U=65533,G+=1;if(U<65536)M.push(String.fromCharCode(U));else U-=65536,M.push(String.fromCharCode(55296|U>>10,56320|U&1023))}return M.join("")}return{toBytes:function(O){if(O===""||O==null)return new Uint8Array(0);if(j)return j.encode(String(O));return D(String(O))},fromBytes:function(O){if(!O||O.length===0)return"";if(H){let M=O instanceof Uint8Array?O:new Uint8Array(O);return H.decode(M)}return R(O)}}}}),a({name:"aes",dependencies:[],factory:function(){let A=[[[],[],[],[],[]],[[],[],[],[],[]]];(function(){let G=A[0],X=A[1],U=G[4],z=X[4],q=[],C=[],K,V,F,$,Q,J,Z,W,I;for(I=0;I<256;I++)C[(q[I]=I<<1^(I>>7)*283)^I]=I;for(K=V=0;!U[K];K^=F||1,V=C[V]||1){J=V^V<<1^V<<2^V<<3^V<<4,J=J>>8^J&255^99,U[K]=J,z[J]=K,Q=q[$=q[F=q[K]]],W=Q*16843009^$*65537^F*257^K*16843008,Z=q[J]*257^J*16843008;for(I=0;I<4;I++)G[I][K]=Z=Z<<24^Z>>>8,X[I][J]=W=W<<24^W>>>8}for(I=0;I<5;I++)G[I]=G[I].slice(0),X[I]=X[I].slice(0)})();function P(Y,G,X,U){if(Y.length!==4)return console.warn("[crypto] INVALID: aes: invalid block size"),!1;let z=X[G],q=Y[0]^z[0],C=Y[G?3:1]^z[1],K=Y[2]^z[2],V=Y[G?1:3]^z[3],F,$,Q,J=z.length/4-2,Z=4,W=[0,0,0,0],I=U[G],N=I[0],S=I[1],B=I[2],x=I[3],v=I[4];for(let E=0;E<J;E++)F=N[q>>>24]^S[C>>16&255]^B[K>>8&255]^x[V&255]^z[Z],$=N[C>>>24]^S[K>>16&255]^B[V>>8&255]^x[q&255]^z[Z+1],Q=N[K>>>24]^S[V>>16&255]^B[q>>8&255]^x[C&255]^z[Z+2],V=N[V>>>24]^S[q>>16&255]^B[C>>8&255]^x[K&255]^z[Z+3],Z+=4,q=F,C=$,K=Q;for(let E=0;E<4;E++)W[G?3&-E:E]=v[q>>>24]<<24^v[C>>16&255]<<16^v[K>>8&255]<<8^v[V&255]^z[Z++],F=q,q=C,C=K,K=V,V=F;return W}function j(Y,G){let X=0,U=Y&255;for(let z=0;z<256;z++){let q=-(((z^U)>>>0)-1>>>8&1)&255;X|=G[z]&q}return X&255}function H(Y){return(Y<<1^(Y>>7)*27)&255}function D(Y,G,X,U){let z=Y^G^X^U,q=Y^z^H(Y^G),C=G^z^H(G^X),K=X^z^H(X^U),V=U^z^H(U^Y);return[q,C,K,V]}function R(Y,G,X,U){let z=H,q=(Q)=>z(z(Q)),C=(Q)=>z(q(Q)),K=(Q)=>C(Q)^Q,V=(Q)=>C(Q)^z(Q)^Q,F=(Q)=>C(Q)^q(Q)^Q,$=(Q)=>C(Q)^q(Q)^z(Q);return[($(Y)^V(G)^F(X)^K(U))&255,(K(Y)^$(G)^V(X)^F(U))&255,(F(Y)^K(G)^$(X)^V(U))&255,(V(Y)^F(G)^K(X)^$(U))&255]}function O(Y,G,X){if(Y.length!==4)return console.warn("[crypto] INVALID: aes: invalid block size"),!1;let U=A[0][4],z=A[1][4],q=G?z:U,C=!G,K=new Uint8Array(16);for(let J=0;J<4;J++){let Z=Y[J];K[J*4]=Z>>>24&255,K[J*4+1]=Z>>>16&255,K[J*4+2]=Z>>>8&255,K[J*4+3]=Z&255}let V=X[0],F=V.length/4-1,$=new Uint8Array(V.length*4);for(let J=0;J<V.length;J++)$[J*4]=V[J]>>>24&255,$[J*4+1]=V[J]>>>16&255,$[J*4+2]=V[J]>>>8&255,$[J*4+3]=V[J]&255;if(C){for(let J=0;J<16;J++)K[J]^=$[J];for(let J=1;J<F;J++){for(let W=0;W<16;W++)K[W]=j(K[W],q);let Z=new Uint8Array(K);for(let W=0;W<4;W++)for(let I=0;I<4;I++)K[I*4+W]=Z[(I+W&3)*4+W];for(let W=0;W<4;W++){let I=W*4,N=D(K[I],K[I+1],K[I+2],K[I+3]);K[I]=N[0],K[I+1]=N[1],K[I+2]=N[2],K[I+3]=N[3]}for(let W=0;W<16;W++)K[W]^=$[J*16+W]}for(let J=0;J<16;J++)K[J]=j(K[J],q);{let J=new Uint8Array(K);for(let Z=0;Z<4;Z++)for(let W=0;W<4;W++)K[W*4+Z]=J[(W+Z&3)*4+Z]}for(let J=0;J<16;J++)K[J]^=$[F*16+J]}else{for(let J=0;J<16;J++)K[J]^=$[F*16+J];for(let J=F-1;J>=1;J--){let Z=new Uint8Array(K);for(let W=0;W<4;W++)for(let I=0;I<4;I++)K[I*4+W]=Z[(I-W+4&3)*4+W];for(let W=0;W<16;W++)K[W]=j(K[W],q);for(let W=0;W<16;W++)K[W]^=$[J*16+W];for(let W=0;W<4;W++){let I=W*4,N=R(K[I],K[I+1],K[I+2],K[I+3]);K[I]=N[0],K[I+1]=N[1],K[I+2]=N[2],K[I+3]=N[3]}}{let J=new Uint8Array(K);for(let Z=0;Z<4;Z++)for(let W=0;W<4;W++)K[W*4+Z]=J[(W-Z+4&3)*4+Z]}for(let J=0;J<16;J++)K[J]=j(K[J],q);for(let J=0;J<16;J++)K[J]^=$[J]}let Q=[0,0,0,0];for(let J=0;J<4;J++)Q[J]=K[J*4]<<24|K[J*4+1]<<16|K[J*4+2]<<8|K[J*4+3];return Q}let M={};return M.fn=function(Y,G=!0){let X=Y.length;if(X!==4&&X!==6&&X!==8)return console.warn("[crypto] INVALID: aes: invalid key size"),!1;let U=A[0][4],z=Y.slice(0),q=1,C,K;for(C=X;C<4*X+28;C++){if(K=z[C-1],C%X===0||X===8&&C%X===4){if(K=U[K>>>24]<<24^U[K>>16&255]<<16^U[K>>8&255]<<8^U[K&255],C%X===0)K=K<<8^K>>>24^q<<24,q=q<<1^(q>>7)*283}z[C]=z[C-X]^K}let V=[z],F={encrypt($){return O($,0,V)}};if(G)F.decrypt=($)=>O($,1,V);return F},M.ttable={fn(Y,G=!0){let X=A.slice(),U=X[0][4],z=X[1],q=Y.length,C=1,K,V,F;if(q!==4&&q!==6&&q!==8)return console.warn("[crypto] INVALID: aes: invalid key size"),!1;let $=Y.slice(0),Q=[],J=[$,Q];for(K=q;K<4*q+28;K++){if(F=$[K-1],K%q===0||q===8&&K%q===4){if(F=U[F>>>24]<<24^U[F>>16&255]<<16^U[F>>8&255]<<8^U[F&255],K%q===0)F=F<<8^F>>>24^C<<24,C=C<<1^(C>>7)*283}$[K]=$[K-q]^F}if(G)for(V=0;K;V++,K--)if(F=$[V&3?K:K-4],K<=4||V<4)Q[V]=F;else Q[V]=z[0][U[F>>>24]]^z[1][U[F>>16&255]]^z[2][U[F>>8&255]]^z[3][U[F&255]];let Z={encrypt(W){return P(W,0,J,X)}};if(G)Z.decrypt=function(W){return P(W,1,J,X)};return Z}},M.bitsliced={fn:M.fn},M}}),a({name:"cbc",dependencies:["bitArray"],factory:function(A){function P(R,O){if(R.length%4!==0||A.bitLength(R)!==R.length*32)return console.warn(`[crypto] INVALID: cbc: ${O} must be a whole number of 16-byte blocks`),!1;return!0}function j(R){if(A.bitLength(R)!==128)return console.warn("[crypto] INVALID: cbc: iv must be 128 bits"),!1;return!0}function H(R,O,M){if(!j(M))return!1;if(!P(O,"plaintext"))return!1;let Y=O.length,G=Array(Y),X=M[0],U=M[1],z=M[2],q=M[3];for(let C=0;C<Y;C+=4){let K=[O[C]^X,O[C+1]^U,O[C+2]^z,O[C+3]^q],V=R.encrypt(K);G[C]=V[0],G[C+1]=V[1],G[C+2]=V[2],G[C+3]=V[3],X=V[0],U=V[1],z=V[2],q=V[3]}return G}function D(R,O,M){if(!j(M))return!1;if(!P(O,"ciphertext"))return!1;if(typeof R.decrypt!=="function")return console.warn("[crypto] INVALID: cbc: prf does not expose decrypt (build the cipher with full=true)"),!1;let Y=O.length,G=Array(Y),X=M[0],U=M[1],z=M[2],q=M[3];for(let C=0;C<Y;C+=4){let K=O[C],V=O[C+1],F=O[C+2],$=O[C+3],Q=R.decrypt([K,V,F,$]);G[C]=Q[0]^X,G[C+1]=Q[1]^U,G[C+2]=Q[2]^z,G[C+3]=Q[3]^q,X=K,U=V,z=F,q=$}return G}return{encrypt:H,decrypt:D}}}),a({name:"gcm",dependencies:["bitArray"],factory:function(A){function P(K,V){let F=[0,0,0,0],$=[V[0],V[1],V[2],V[3]];for(let Q=0;Q<128;Q++){let J=Q>>>5,Z=31-(Q&31);if(K[J]>>>Z&1)F[0]^=$[0],F[1]^=$[1],F[2]^=$[2],F[3]^=$[3];let W=$[3]&1;if($[3]=$[3]>>>1|($[2]&1)<<31,$[2]=$[2]>>>1|($[1]&1)<<31,$[1]=$[1]>>>1|($[0]&1)<<31,$[0]=$[0]>>>1,W)$[0]^=-520093696}return F}function j(K,V){let F=0,$=0,Q=0,J=0;for(let Z=0;Z<V.length;Z+=4){F^=V[Z],$^=V[Z+1],Q^=V[Z+2],J^=V[Z+3];let W=P([F,$,Q,J],K);F=W[0],$=W[1],Q=W[2],J=W[3]}return[F,$,Q,J]}function H(K){let V=A.ba_to_ui8(K),F=(16-V.length%16)%16;if(F===0)return A.ui8_to_ba(V);let $=new Uint8Array(V.length+F);return $.set(V,0),A.ui8_to_ba($)}function D(K){let V=K|0;return[Math.floor(K/4294967296)|0,V]}function R(K,V,F){let $=A.bitLength(F);if($===0)return[];let Q=A.ba_to_ui8(F),J=(16-Q.length%16)%16,Z;if(J===0)Z=A.ui8_to_ba(Q);else{let I=new Uint8Array(Q.length+J);I.set(Q,0),Z=A.ui8_to_ba(I)}let W=[V[0],V[1],V[2],V[3]];for(let I=0;I<Z.length;I+=4){let N=K.encrypt(W);Z[I]=Z[I]^N[0]|0,Z[I+1]=Z[I+1]^N[1]|0,Z[I+2]=Z[I+2]^N[2]|0,Z[I+3]=Z[I+3]^N[3]|0,W[3]=W[3]+1|0}return A.clamp(Z,$)}function O(K,V){let F=A.bitLength(V);if(F===96){let J=A.ba_to_ui8(V),Z=new Uint8Array(16);return Z.set(J,0),Z[15]=1,A.ui8_to_ba(Z)}let $=H(V),Q=[0,0].concat(D(F));return j(K,$.concat(Q))}function M(K){return[K[0],K[1],K[2],K[3]+1|0]}function Y(K,V,F,$,Q,J){let Z=A.bitLength($),W=A.bitLength(Q),I=H($).concat(H(Q)).concat(D(Z)).concat(D(W)),N=j(V,I);return A.clamp(R(K,F,N),J)}function G(K,V){if(A.bitLength(K)===0)return console.warn("[crypto] INVALID: gcm: iv must not be empty"),!1;if(V<32||V>128)return console.warn("[crypto] INVALID: gcm: tag length must be 32..128 bits"),!1;return!0}function X(K,V,F,$,Q){if($=$||[],Q=Q===void 0?128:Q,!G(F,Q))return!1;let J=K.encrypt([0,0,0,0]),Z=O(J,F),W=R(K,M(Z),V),I=Y(K,J,Z,$,W,Q);return{ct:W,tag:I}}function U(K,V,F,$,Q,J){if($=$||[],J=J===void 0?A.bitLength(Q):J,!G(F,J))return!1;let Z=K.encrypt([0,0,0,0]),W=O(Z,F),I=Y(K,Z,W,$,V,J);if(!A.equal(A.clamp(Q,J),I))return console.error("[crypto] CORRUPT: gcm: authentication tag mismatch"),!1;return R(K,M(W),V)}function z(K,V,F,$){let Q=X(K,[],F,V,$);return Q===!1?!1:Q.tag}function q(K,V,F,$,Q){Q=Q===void 0?A.bitLength($):Q;let J=z(K,V,F,Q);if(J===!1)return!1;return A.equal(A.clamp($,Q),J)}function C(K){let V=new Set,F=($)=>{let Q=A.ba_to_ui8($),J="";for(let Z=0;Z<Q.length;Z++)J+=(Q[Z]<16?"0":"")+Q[Z].toString(16);return J};return{seenNonces:V,encrypt($,Q,J,Z){let W=F(Q);if(V.has(W))return console.error("[crypto] CORRUPT: gcm: nonce reuse rejected by tracker"),!1;return V.add(W),X(K,$,Q,J,Z)},decrypt($,Q,J,Z,W){return U(K,$,Q,J,Z,W)}}}return{encrypt:X,decrypt:U,gmac:z,gmacVerify:q,nonceTracker:C,_internal:{ghash:j,gctr:R}}}}),a({name:"sha256",dependencies:["bitArray","utf8"],factory:function(A,P){let j=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],H=[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];function D(O,M){let Y={};return Y.fn=function(G){if(G)this._h=G._h.slice(0),this._buffer=G._buffer.slice(0),this._length=G._length;else this.reset()},Y.hash=function(G){return new Y.fn().update(G).finalize()},Y.fn.prototype={blockSize:512,_init:O,_key:H,reset(){return this._h=this._init.slice(0),this._buffer=[],this._length=0,this},update(G){if(typeof G==="string")G=A.ui8_to_ba(P.toBytes(G));let X=this._buffer=A.concat(this._buffer,G),U=this._length,z=this._length=U+A.bitLength(G);if(z>9007199254740991)return console.warn("[crypto] INVALID: sha256: cannot hash more than 2^53 - 1 bits"),!1;let q=new Uint32Array(X),C=0;for(let K=512+U-(512+U&511);K<=z;K+=512)this._block(q.subarray(16*C,16*(C+1))),C+=1;return X.splice(0,16*C),this},finalize(){let G=this._buffer,X=this._h;G=A.concat(G,[A.partial(1,1)]);for(let U=G.length+2;U&15;U++)G.push(0);G.push(Math.floor(this._length/4294967296)),G.push(this._length|0);while(G.length)this._block(G.splice(0,16));return this.reset(),M<8?X.slice(0,M):X},_block(G){let X=this._h,U=this._key,z=X[0],q=X[1],C=X[2],K=X[3],V=X[4],F=X[5],$=X[6],Q=X[7],J,Z,W;for(let I=0;I<64;I++){if(I<16)J=G[I];else Z=G[I+1&15],W=G[I+14&15],J=G[I&15]=(Z>>>7^Z>>>18^Z>>>3^Z<<25^Z<<14)+(W>>>17^W>>>19^W>>>10^W<<15^W<<13)+G[I&15]+G[I+9&15]|0;J=J+Q+(V>>>6^V>>>11^V>>>25^V<<26^V<<21^V<<7)+($^V&(F^$))+U[I],Q=$,$=F,F=V,V=K+J|0,K=C,C=q,q=z,z=J+(q&C^K&(q^C))+(q>>>2^q>>>13^q>>>22^q<<30^q<<19^q<<10)|0}X[0]=X[0]+z|0,X[1]=X[1]+q|0,X[2]=X[2]+C|0,X[3]=X[3]+K|0,X[4]=X[4]+V|0,X[5]=X[5]+F|0,X[6]=X[6]+$|0,X[7]=X[7]+Q|0}},Y}let R=D(j,8);return{fn:R.fn,hash:R.hash,_internal:{makeSha:D}}}}),a({name:"sha384",dependencies:["sha512"],factory:function(A){let P=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428];return A._internal.makeSha(P,12)}}),a({name:"sha512",dependencies:["bitArray","utf8"],factory:function(A,P){let j=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],H=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function D(O,M){let Y={};return Y.fn=function(G){if(G)this._h=G._h.slice(0),this._buffer=G._buffer.slice(0),this._length=G._length;else this.reset()},Y.hash=function(G){return new Y.fn().update(G).finalize()},Y.fn.prototype={blockSize:1024,_init:O,_outWords:M,_key:H,reset(){return this._h=this._init.slice(0),this._buffer=[],this._length=0,this},update(G){if(typeof G==="string")G=A.ui8_to_ba(P.toBytes(G));let X=this._buffer=A.concat(this._buffer,G),U=this._length,z=this._length=U+A.bitLength(G);if(z>9007199254740991)return console.warn("[crypto] INVALID: sha512: cannot hash more than 2^53 - 1 bits"),!1;let q=new Uint32Array(X),C=0;for(let K=1024+U-(1024+U&1023);K<=z;K+=1024)this._block(q.subarray(32*C,32*(C+1))),C+=1;return X.splice(0,32*C),this},finalize(){let G=this._buffer,X=this._h;G=A.concat(G,[A.partial(1,1)]);for(let U=G.length+4;U&31;U++)G.push(0);G.push(0),G.push(0),G.push(Math.floor(this._length/4294967296)),G.push(this._length|0);while(G.length)this._block(G.splice(0,32));return this.reset(),M<16?X.slice(0,M):X},_block(G){let X=this._h,U=this._key,z=X[0],q=X[1],C=X[2],K=X[3],V=X[4],F=X[5],$=X[6],Q=X[7],J=X[8],Z=X[9],W=X[10],I=X[11],N=X[12],S=X[13],B=X[14],x=X[15],v=Array(160);for(let s=0;s<32;s++)v[s]=G[s];let E=z,T=q,_=C,w=K,h=V,l=F,y=$,d=Q,n=J,i=Z,Y0=W,H0=I,z0=N,P0=S,w0=B,Q0=x,e,Z0;for(let s=0;s<80;s++){if(s<16)e=v[s*2],Z0=v[s*2+1];else{let D0=v[(s-15)*2],v0=v[(s-15)*2+1],s0=(v0<<31|D0>>>1)^(v0<<24|D0>>>8)^D0>>>7,a0=(D0<<31|v0>>>1)^(D0<<24|v0>>>8)^(D0<<25|v0>>>7),c0=v[(s-2)*2],p0=v[(s-2)*2+1],n0=(p0<<13|c0>>>19)^(c0<<3|p0>>>29)^c0>>>6,o0=(c0<<13|p0>>>19)^(p0<<3|c0>>>29)^(c0<<26|p0>>>6),r0=v[(s-7)*2],t0=v[(s-7)*2+1],e0=v[(s-16)*2],$$=v[(s-16)*2+1];Z0=a0+t0,e=s0+r0+(Z0>>>0<a0>>>0?1:0),Z0+=o0,e+=n0+(Z0>>>0<o0>>>0?1:0),Z0+=$$,e+=e0+(Z0>>>0<$$>>>0?1:0)}v[s*2]=e|=0,v[s*2+1]=Z0|=0;let V0=n&Y0^~n&z0,X0=i&H0^~i&P0,I0=E&_^E&h^_&h,F0=T&w^T&l^w&l,u0=(T<<4|E>>>28)^(E<<30|T>>>2)^(E<<25|T>>>7),f0=(E<<4|T>>>28)^(T<<30|E>>>2)^(T<<25|E>>>7),t=(i<<18|n>>>14)^(i<<14|n>>>18)^(n<<23|i>>>9),G0=(n<<18|i>>>14)^(n<<14|i>>>18)^(i<<23|n>>>9),C0=U[s*2],q0=U[s*2+1],W0=Q0+G0,A0=w0+t+(W0>>>0<Q0>>>0?1:0);W0+=X0,A0+=V0+(W0>>>0<X0>>>0?1:0),W0+=q0,A0+=C0+(W0>>>0<q0>>>0?1:0),W0=W0+Z0|0,A0+=e+(W0>>>0<Z0>>>0?1:0);let B0=f0+F0,g0=u0+I0+(B0>>>0<f0>>>0?1:0);w0=z0,Q0=P0,z0=Y0,P0=H0,Y0=n,H0=i,i=d+W0|0,n=y+A0+(i>>>0<d>>>0?1:0)|0,y=h,d=l,h=_,l=w,_=E,w=T,T=W0+B0|0,E=A0+g0+(T>>>0<W0>>>0?1:0)|0}let U0=X[1]=q+T|0;X[0]=z+E+(U0>>>0<T>>>0?1:0)|0;let k=X[3]=K+w|0;X[2]=C+_+(k>>>0<w>>>0?1:0)|0;let c=X[5]=F+l|0;X[4]=V+h+(c>>>0<l>>>0?1:0)|0;let f=X[7]=Q+d|0;X[6]=$+y+(f>>>0<d>>>0?1:0)|0;let m=X[9]=Z+i|0;X[8]=J+n+(m>>>0<i>>>0?1:0)|0;let u=X[11]=I+H0|0;X[10]=W+Y0+(u>>>0<H0>>>0?1:0)|0;let o=X[13]=S+P0|0;X[12]=N+z0+(o>>>0<P0>>>0?1:0)|0;let $0=X[15]=x+Q0|0;X[14]=B+w0+($0>>>0<Q0>>>0?1:0)|0}},Y}let R=D(j,16);return{fn:R.fn,hash:R.hash,_internal:{makeSha:D}}}}),a({name:"bitArray",dependencies:[],factory:function(){let A={ba_to_ui8:function(P){let j=[],H=A.bitLength(P),D,R;for(D=0;D<H/8;D++){if((D&3)===0)R=P[D/4];j.push(R>>>8>>>8>>>8),R<<=8}return new Uint8Array(j)},ui8_to_ba:function(P){let j=[],H,D=0;for(H=0;H<P.length;H++)if(D=D<<8|P[H],(H&3)===3)j.push(D),D=0;if(H&3)j.push(A.partial(8*(H&3),D));return j},bitSlice:function(P,j,H){return P=A._shiftRight(P.slice(j/32),32-(j&31)).slice(1),H===void 0?P:A.clamp(P,H-j)},extract:function(P,j,H){let D,R=(-j-H&31)>>0;if((j+H-1^j)&-32)D=P[j/32|0]<<32-R^P[j/32+1|0]>>>R;else D=P[j/32|0]>>>R;return D&(1<<H)-1},concat:function(P,j){if(P.length===0||j.length===0)return P.concat(j);let H=P[P.length-1],D=A.getPartial(H);if(D===32)return P.concat(j);else return A._shiftRight(j,D,H|0,P.slice(0,P.length-1))},bitLength:function(P){let j=P.length,H;if(j===0)return 0;return H=P[j-1],(j-1)*32+A.getPartial(H)},clamp:function(P,j){if(P.length*32<j)return P;P=P.slice(0,Math.ceil(j/32));let H=P.length;if(j=j&31,H>0&&j)P[H-1]=A.partial(j,P[H-1]&2147483648>>j-1,1);return P},partial:function(P,j,H){if(P===32)return j;return(H?j|0:j<<32-P)+P*1099511627776},getPartial:function(P){return Math.round(P/1099511627776)||32},equal:function(P,j){if(A.bitLength(P)!==A.bitLength(j))return!1;let H=0,D;for(D=0;D<P.length;D++)H|=P[D]^j[D];return H===0},_shiftRight:function(P,j,H,D){let R,O,M;if(D===void 0)D=[];for(;j>=32;j-=32)D.push(H),H=0;if(j===0)return D.concat(P);for(R=0;R<P.length;R++)D.push(H|P[R]>>>j),H=P[R]<<32-j;return O=P.length?P[P.length-1]:0,M=A.getPartial(O),D.push(A.partial(j+M&31,j+M>32?H:D.pop(),1)),D},_xor4:function(P,j){return[P[0]^j[0],P[1]^j[1],P[2]^j[2],P[3]^j[3]]},byteswapM:function(P){if(P.length>0&&A.getPartial(P[P.length-1])!==32)return console.warn("[crypto] INVALID: bitArray.byteswapM: partial words not supported"),!1;let j,H,D=65280;for(j=0;j<P.length;++j)H=P[j],P[j]=H>>>24|H>>>8&D|(H&D)<<8|H<<24;return P}};return A}}),a({name:"asn1",dependencies:[],factory:function(){let A={INTEGER:2,BIT_STRING:3,OCTET_STRING:4,NULL:5,OID:6,SEQUENCE:48,SET:49};function P(Q){if(Q<128)return Uint8Array.of(Q);if(Q<=255)return Uint8Array.of(129,Q);if(Q<=65535)return Uint8Array.of(130,Q>>>8&255,Q&255);if(Q<=16777215)return Uint8Array.of(131,Q>>>16&255,Q>>>8&255,Q&255);if(Q<=4294967295)return Uint8Array.of(132,Q>>>24&255,Q>>>16&255,Q>>>8&255,Q&255);return console.warn("[crypto] INVALID: asn1: length exceeds 2^32-1"),!1}function j(Q,J){let Z=Q[J];if(Z<128)return{len:Z,next:J+1};let W=Z&127;if(W===0||W>4)return console.warn("[crypto] INVALID: asn1: unsupported length form"),!1;let I=0;for(let N=0;N<W;N++)I=I<<8|Q[J+1+N];if(I<128||W>1&&I>>>(W-1)*8===0)return console.warn("[crypto] INVALID: asn1: non-minimal length encoding"),!1;return{len:I>>>0,next:J+1+W}}function H(Q,J){let Z=P(J.length);if(Z===!1)return!1;let W=new Uint8Array(1+Z.length+J.length);return W[0]=Q,W.set(Z,1),W.set(J,1+Z.length),W}function D(Q){let J=0;for(let I of Q)J+=I.length;let Z=new Uint8Array(J),W=0;for(let I of Q)Z.set(I,W),W+=I.length;return Z}function R(Q){let J;if(typeof Q==="number"){if(!Number.isInteger(Q)||Q<0)return console.warn("[crypto] INVALID: asn1: encodeInteger expects a non-negative integer"),!1;if(Q===0)J=Uint8Array.of(0);else{let Z=[],W=Q;while(W>0)Z.unshift(W&255),W=Math.floor(W/256);J=new Uint8Array(Z)}}else{J=Q instanceof Uint8Array?Q:new Uint8Array(Q);let Z=0;while(Z<J.length-1&&J[Z]===0&&(J[Z+1]&128)===0)Z++;J=J.subarray(Z)}if(J[0]&128){let Z=new Uint8Array(J.length+1);Z.set(J,1),J=Z}return H(A.INTEGER,J)}function O(Q){let J=Q instanceof Uint8Array?Q:new Uint8Array(Q);return H(A.OCTET_STRING,J)}function M(Q,J){let Z=Q instanceof Uint8Array?Q:new Uint8Array(Q);if(J=J|0,J<0||J>7)return console.warn("[crypto] INVALID: asn1: BIT STRING unusedBits must be 0..7"),!1;let W=new Uint8Array(Z.length+1);return W[0]=J,W.set(Z,1),H(A.BIT_STRING,W)}function Y(){return Uint8Array.of(A.NULL,0)}function G(Q){let J=Q.split(".").map(Number);if(J.length<2||J.some((W)=>!Number.isInteger(W)||W<0))return console.warn("[crypto] INVALID: asn1: malformed OID"),!1;let Z=[40*J[0]+J[1]];for(let W=2;W<J.length;W++){let I=J[W],N=[I&127];I>>>=7;while(I>0)N.unshift(I&127|128),I>>>=7;for(let S of N)Z.push(S)}return H(A.OID,new Uint8Array(Z))}function X(Q){return H(A.SEQUENCE,D(Q))}function U(Q){return H(A.SET,D(Q))}function z(Q,J){return H(160|Q&31,J)}function q(Q,J,Z){let W=new Uint8Array(J.length);return W.set(J),W[0]=(Z?160:128)|Q&31,W}function C(Q,J){if(J=J|0,J>=Q.length)return console.warn("[crypto] INVALID: asn1: unexpected end of input"),!1;let Z=Q[J];if((Z&31)===31)return console.warn("[crypto] INVALID: asn1: high-tag-number form not supported"),!1;let W=j(Q,J+1);if(!W)return!1;let I=W.next,N=I+W.len;if(N>Q.length)return console.warn("[crypto] INVALID: asn1: declared length exceeds buffer"),!1;return{tag:Z,length:W.len,value:Q.subarray(I,N),valueOff:I,next:N}}function K(Q){let J=[],Z=0;while(Z<Q.length){let W=C(Q,Z);if(!W)return!1;J.push(W),Z=W.next}return J}function V(Q){if(Q.tag!==A.INTEGER)return!1;return Q.value}function F(Q){if(Q.tag!==A.OID)return!1;let J=Q.value;if(J.length===0)return!1;let Z=[Math.floor(J[0]/40),J[0]%40],W=0;for(let I=1;I<J.length;I++)if(W=W<<7|J[I]&127,(J[I]&128)===0)Z.push(W),W=0;return Z.join(".")}function $(Q){if(Q.tag!==A.BIT_STRING||Q.value.length<1)return!1;return{unusedBits:Q.value[0],bytes:Q.value.subarray(1)}}return{TAG:A,encodeInteger:R,encodeOctetString:O,encodeBitString:M,encodeNull:Y,encodeOid:G,encodeSequence:X,encodeSet:U,encodeExplicit:z,encodeImplicit:q,parseOne:C,parseChildren:K,readInteger:V,readOid:F,readBitString:$}}}),a({name:"asn1Oid",dependencies:[],factory:function(){let A={"1.2.840.113549.1.1.1":{name:"rsaEncryption",shortName:"rsa",category:"pkcs1"},"1.2.840.113549.1.1.2":{name:"md2WithRSAEncryption",shortName:"md2WithRSA",category:"pkcs1",hashAlg:"md2",sigAlg:"rsa"},"1.2.840.113549.1.1.4":{name:"md5WithRSAEncryption",shortName:"md5WithRSA",category:"pkcs1",hashAlg:"md5",sigAlg:"rsa"},"1.2.840.113549.1.1.5":{name:"sha1WithRSAEncryption",shortName:"sha1WithRSA",category:"pkcs1",hashAlg:"sha-1",sigAlg:"rsa"},"1.2.840.113549.1.1.11":{name:"sha256WithRSAEncryption",shortName:"sha256WithRSA",category:"pkcs1",hashAlg:"sha-256",sigAlg:"rsa"},"1.2.840.113549.1.1.12":{name:"sha384WithRSAEncryption",shortName:"sha384WithRSA",category:"pkcs1",hashAlg:"sha-384",sigAlg:"rsa"},"1.2.840.113549.1.1.13":{name:"sha512WithRSAEncryption",shortName:"sha512WithRSA",category:"pkcs1",hashAlg:"sha-512",sigAlg:"rsa"},"1.2.840.113549.1.1.14":{name:"sha224WithRSAEncryption",shortName:"sha224WithRSA",category:"pkcs1",hashAlg:"sha-224",sigAlg:"rsa"},"1.2.840.113549.1.1.10":{name:"rsaPSS",shortName:"rsaPSS",category:"pkcs1",sigAlg:"rsa-pss"},"1.2.840.113549.1.1.7":{name:"rsaOAEP",shortName:"rsaOAEP",category:"pkcs1",encAlg:"rsa-oaep"},"1.2.840.113549.1.7.1":{name:"pkcs7-data",shortName:"data",category:"pkcs7"},"1.2.840.113549.1.7.2":{name:"pkcs7-signedData",shortName:"signedData",category:"pkcs7"},"1.2.840.113549.1.7.3":{name:"pkcs7-envelopedData",shortName:"envelopedData",category:"pkcs7"},"1.2.840.113549.1.7.4":{name:"pkcs7-signedAndEnvelopedData",shortName:"signedAndEnveloped",category:"pkcs7"},"1.2.840.113549.1.7.5":{name:"pkcs7-digestedData",shortName:"digestedData",category:"pkcs7"},"1.2.840.113549.1.7.6":{name:"pkcs7-encryptedData",shortName:"encryptedData",category:"pkcs7"},"1.2.840.113549.1.9.16.1.2":{name:"id-smime-ct-authenticatedData",shortName:"authenticatedData",category:"pkcs7"},"1.2.840.113549.1.9.1":{name:"pkcs9-emailAddress",shortName:"emailAddress",category:"pkcs9"},"1.2.840.113549.1.9.2":{name:"pkcs9-unstructuredName",shortName:"unstructuredName",category:"pkcs9"},"1.2.840.113549.1.9.3":{name:"pkcs9-contentType",shortName:"contentType",category:"pkcs9"},"1.2.840.113549.1.9.4":{name:"pkcs9-messageDigest",shortName:"messageDigest",category:"pkcs9"},"1.2.840.113549.1.9.5":{name:"pkcs9-signingTime",shortName:"signingTime",category:"pkcs9"},"1.2.840.113549.1.9.6":{name:"pkcs9-counterSignature",shortName:"counterSignature",category:"pkcs9"},"1.2.840.113549.1.9.7":{name:"pkcs9-challengePassword",shortName:"challengePassword",category:"pkcs9"},"1.2.840.113549.1.9.14":{name:"pkcs9-extensionRequest",shortName:"extensionRequest",category:"pkcs9"},"1.2.840.113549.1.9.15":{name:"pkcs9-sMIMECapabilities",shortName:"sMIMECapabilities",category:"pkcs9"},"1.2.840.113549.1.9.16.2.12":{name:"id-aa-signingCertificate",shortName:"signingCertificate",category:"pkcs9"},"1.2.840.113549.1.9.16.2.14":{name:"id-aa-timeStampToken",shortName:"timeStampToken",category:"pkcs9"},"1.2.840.113549.1.9.16.2.47":{name:"id-aa-signingCertificateV2",shortName:"signingCertificateV2",category:"pkcs9"},"1.2.840.113549.2.5":{name:"md5",shortName:"md5",category:"digest"},"1.3.14.3.2.26":{name:"sha1",shortName:"sha1",category:"digest"},"2.16.840.1.101.3.4.2.4":{name:"sha224",shortName:"sha224",category:"digest"},"2.16.840.1.101.3.4.2.1":{name:"sha256",shortName:"sha256",category:"digest"},"2.16.840.1.101.3.4.2.2":{name:"sha384",shortName:"sha384",category:"digest"},"2.16.840.1.101.3.4.2.3":{name:"sha512",shortName:"sha512",category:"digest"},"2.16.840.1.101.3.4.2.5":{name:"sha512-224",shortName:"sha512-224",category:"digest"},"2.16.840.1.101.3.4.2.6":{name:"sha512-256",shortName:"sha512-256",category:"digest"},"2.16.840.1.101.3.4.2.7":{name:"sha3-224",shortName:"sha3-224",category:"digest"},"2.16.840.1.101.3.4.2.8":{name:"sha3-256",shortName:"sha3-256",category:"digest"},"2.16.840.1.101.3.4.2.9":{name:"sha3-384",shortName:"sha3-384",category:"digest"},"2.16.840.1.101.3.4.2.10":{name:"sha3-512",shortName:"sha3-512",category:"digest"},"2.16.840.1.101.3.4.2.11":{name:"shake128",shortName:"shake128",category:"digest"},"2.16.840.1.101.3.4.2.12":{name:"shake256",shortName:"shake256",category:"digest"},"1.2.840.113549.2.7":{name:"hmacWithSHA1",shortName:"hmac-sha1",category:"digest"},"1.2.840.113549.2.8":{name:"hmacWithSHA224",shortName:"hmac-sha224",category:"digest"},"1.2.840.113549.2.9":{name:"hmacWithSHA256",shortName:"hmac-sha256",category:"digest"},"1.2.840.113549.2.10":{name:"hmacWithSHA384",shortName:"hmac-sha384",category:"digest"},"1.2.840.113549.2.11":{name:"hmacWithSHA512",shortName:"hmac-sha512",category:"digest"},"2.5.4.3":{name:"commonName",shortName:"CN",category:"x509-dn"},"2.5.4.4":{name:"surname",shortName:"SN",category:"x509-dn"},"2.5.4.5":{name:"serialNumber",shortName:"serialNumber",category:"x509-dn"},"2.5.4.6":{name:"countryName",shortName:"C",category:"x509-dn"},"2.5.4.7":{name:"localityName",shortName:"L",category:"x509-dn"},"2.5.4.8":{name:"stateOrProvinceName",shortName:"ST",category:"x509-dn"},"2.5.4.9":{name:"streetAddress",shortName:"street",category:"x509-dn"},"2.5.4.10":{name:"organizationName",shortName:"O",category:"x509-dn"},"2.5.4.11":{name:"organizationalUnitName",shortName:"OU",category:"x509-dn"},"2.5.4.12":{name:"title",shortName:"title",category:"x509-dn"},"2.5.4.13":{name:"description",shortName:"description",category:"x509-dn"},"2.5.4.17":{name:"postalCode",shortName:"postalCode",category:"x509-dn"},"2.5.4.18":{name:"postOfficeBox",shortName:"postOfficeBox",category:"x509-dn"},"2.5.4.20":{name:"telephoneNumber",shortName:"telephoneNumber",category:"x509-dn"},"2.5.4.41":{name:"name",shortName:"name",category:"x509-dn"},"2.5.4.42":{name:"givenName",shortName:"GN",category:"x509-dn"},"2.5.4.43":{name:"initials",shortName:"initials",category:"x509-dn"},"2.5.4.44":{name:"generationQualifier",shortName:"generationQualifier",category:"x509-dn"},"2.5.4.45":{name:"uniqueIdentifier",shortName:"uniqueIdentifier",category:"x509-dn"},"2.5.4.46":{name:"dnQualifier",shortName:"dnQualifier",category:"x509-dn"},"2.5.4.65":{name:"pseudonym",shortName:"pseudonym",category:"x509-dn"},"2.5.29.14":{name:"subjectKeyIdentifier",shortName:"subjectKeyIdentifier",category:"x509-extension"},"2.5.29.15":{name:"keyUsage",shortName:"keyUsage",category:"x509-extension"},"2.5.29.16":{name:"privateKeyUsagePeriod",shortName:"privateKeyUsagePeriod",category:"x509-extension"},"2.5.29.17":{name:"subjectAltName",shortName:"subjectAltName",category:"x509-extension"},"2.5.29.18":{name:"issuerAltName",shortName:"issuerAltName",category:"x509-extension"},"2.5.29.19":{name:"basicConstraints",shortName:"basicConstraints",category:"x509-extension"},"2.5.29.20":{name:"cRLNumber",shortName:"cRLNumber",category:"x509-extension"},"2.5.29.21":{name:"reasonCode",shortName:"reasonCode",category:"x509-extension"},"2.5.29.23":{name:"holdInstructionCode",shortName:"holdInstructionCode",category:"x509-extension"},"2.5.29.24":{name:"invalidityDate",shortName:"invalidityDate",category:"x509-extension"},"2.5.29.27":{name:"deltaCRLIndicator",shortName:"deltaCRLIndicator",category:"x509-extension"},"2.5.29.28":{name:"issuingDistributionPoint",shortName:"issuingDistributionPoint",category:"x509-extension"},"2.5.29.31":{name:"crlDistributionPoints",shortName:"cRLDistributionPoints",category:"x509-extension"},"2.5.29.32":{name:"certificatePolicies",shortName:"certificatePolicies",category:"x509-extension"},"2.5.29.33":{name:"policyMappings",shortName:"policyMappings",category:"x509-extension"},"2.5.29.35":{name:"authorityKeyIdentifier",shortName:"authorityKeyIdentifier",category:"x509-extension"},"2.5.29.36":{name:"policyConstraints",shortName:"policyConstraints",category:"x509-extension"},"2.5.29.37":{name:"extendedKeyUsage",shortName:"extendedKeyUsage",category:"x509-extension"},"1.3.6.1.5.5.7.1.1":{name:"authorityInformationAccess",shortName:"authorityInformationAccess",category:"x509-extension"},"1.3.6.1.5.5.7.1.11":{name:"subjectInformationAccess",shortName:"subjectInformationAccess",category:"x509-extension"},"2.5.29.54":{name:"inhibitAnyPolicy",shortName:"inhibitAnyPolicy",category:"x509-extension"},"1.3.6.1.5.5.7.3.1":{name:"serverAuth",shortName:"serverAuth",category:"x509-eku"},"1.3.6.1.5.5.7.3.2":{name:"clientAuth",shortName:"clientAuth",category:"x509-eku"},"1.3.6.1.5.5.7.3.3":{name:"codeSigning",shortName:"codeSigning",category:"x509-eku"},"1.3.6.1.5.5.7.3.4":{name:"emailProtection",shortName:"emailProtection",category:"x509-eku"},"1.3.6.1.5.5.7.3.8":{name:"timeStamping",shortName:"timeStamping",category:"x509-eku"},"1.3.6.1.5.5.7.3.9":{name:"OCSPSigning",shortName:"OCSPSigning",category:"x509-eku"},"0.4.0.19122.1":{name:"id-etsi-es-ades-commitment-type-signed-data",shortName:"padesSignedData",category:"pades"},"0.4.0.2023.1.1":{name:"id-etsi-ades-pades",shortName:"pades",category:"pades"},"0.4.0.19122.2.1":{name:"id-etsi-ades-pades-b",shortName:"pades-b",category:"pades"},"0.4.0.19122.2.2":{name:"id-etsi-ades-pades-t",shortName:"pades-t",category:"pades"},"0.4.0.19122.2.3":{name:"id-etsi-ades-pades-lt",shortName:"pades-lt",category:"pades"},"0.4.0.19122.2.4":{name:"id-etsi-ades-pades-lta",shortName:"pades-lta",category:"pades"},"1.2.840.113583.1.1.8":{name:"adbe-revocationInfoArchival",shortName:"revocationInfoArchival",category:"pades"},"0.4.0.17090.1.1":{name:"id-etsi-qcs-QcCompliance",shortName:"QcCompliance",category:"pades"},"0.4.0.17090.1.2":{name:"id-etsi-qcs-QcLimitValue",shortName:"QcLimitValue",category:"pades"},"0.4.0.17090.1.3":{name:"id-etsi-qcs-QcRetentionPeriod",shortName:"QcRetentionPeriod",category:"pades"},"0.4.0.17090.1.4":{name:"id-etsi-qcs-QcSSCD",shortName:"QcSSCD",category:"pades"},"0.4.0.17090.1.5":{name:"id-etsi-qcs-QcPDS",shortName:"QcPDS",category:"pades"},"0.4.0.17090.1.6":{name:"id-etsi-qcs-QcType",shortName:"QcType",category:"pades"},"1.2.840.113549.1.9.16.2.15":{name:"id-aa-ets-sigPolicyId",shortName:"sigPolicyId",category:"pades"},"1.2.840.113549.1.9.16.2.16":{name:"id-aa-ets-commitmentType",shortName:"commitmentType",category:"pades"},"1.2.840.113549.1.9.16.2.18":{name:"id-aa-ets-signerAttr",shortName:"signerAttr",category:"pades"},"1.2.840.113549.1.9.16.2.20":{name:"id-aa-ets-otherSigCert",shortName:"otherSigCert",category:"pades"},"1.2.840.113549.1.9.16.2.21":{name:"id-aa-ets-contentTimestamp",shortName:"contentTimestamp",category:"pades"},"1.2.840.10045.3.1.1":{name:"prime192v1",shortName:"P-192",category:"ecc-curve",curve:"P-192"},"1.2.840.10045.3.1.7":{name:"prime256v1",shortName:"P-256",category:"ecc-curve",curve:"P-256"},"1.3.132.0.34":{name:"secp384r1",shortName:"P-384",category:"ecc-curve",curve:"P-384"},"1.3.132.0.35":{name:"secp521r1",shortName:"P-521",category:"ecc-curve",curve:"P-521"},"1.3.132.0.10":{name:"secp256k1",shortName:"secp256k1",category:"ecc-curve",curve:"secp256k1"},"1.3.132.0.1":{name:"sect163k1",shortName:"sect163k1",category:"ecc-curve",curve:"sect163k1"},"1.3.36.3.3.2.8.1.1.7":{name:"brainpoolP256r1",shortName:"brainpoolP256r1",category:"ecc-curve",curve:"brainpoolP256r1"},"1.3.36.3.3.2.8.1.1.11":{name:"brainpoolP384r1",shortName:"brainpoolP384r1",category:"ecc-curve",curve:"brainpoolP384r1"},"1.3.36.3.3.2.8.1.1.13":{name:"brainpoolP512r1",shortName:"brainpoolP512r1",category:"ecc-curve",curve:"brainpoolP512r1"},"1.3.101.110":{name:"X25519",shortName:"X25519",category:"ecc-curve",curve:"X25519"},"1.3.101.111":{name:"X448",shortName:"X448",category:"ecc-curve",curve:"X448"},"1.3.101.112":{name:"Ed25519",shortName:"Ed25519",category:"ecc-curve",curve:"Ed25519"},"1.3.101.113":{name:"Ed448",shortName:"Ed448",category:"ecc-curve",curve:"Ed448"},"1.2.840.10045.2.1":{name:"ecPublicKey",shortName:"ecc",category:"pkcs1"},"1.2.840.10045.4.1":{name:"ecdsaWithSHA1",shortName:"ecdsaWithSHA1",category:"pkcs1",hashAlg:"sha-1",sigAlg:"ecdsa"},"1.2.840.10045.4.3.1":{name:"ecdsaWithSHA224",shortName:"ecdsaWithSHA224",category:"pkcs1",hashAlg:"sha-224",sigAlg:"ecdsa"},"1.2.840.10045.4.3.2":{name:"ecdsaWithSHA256",shortName:"ecdsaWithSHA256",category:"pkcs1",hashAlg:"sha-256",sigAlg:"ecdsa"},"1.2.840.10045.4.3.3":{name:"ecdsaWithSHA384",shortName:"ecdsaWithSHA384",category:"pkcs1",hashAlg:"sha-384",sigAlg:"ecdsa"},"1.2.840.10045.4.3.4":{name:"ecdsaWithSHA512",shortName:"ecdsaWithSHA512",category:"pkcs1",hashAlg:"sha-512",sigAlg:"ecdsa"},"1.2.840.113549.1.5.1":{name:"pbeWithMD2AndDES-CBC",shortName:"pbeWithMD2AndDES",category:"pkcs5"},"1.2.840.113549.1.5.3":{name:"pbeWithMD5AndDES-CBC",shortName:"pbeWithMD5AndDES",category:"pkcs5"},"1.2.840.113549.1.5.4":{name:"pbeWithMD2And40BitRC2-CBC",shortName:"pbeWithMD2AndRC2",category:"pkcs5"},"1.2.840.113549.1.5.6":{name:"pbeWithMD5And40BitRC2-CBC",shortName:"pbeWithMD5AndRC2",category:"pkcs5"},"1.2.840.113549.1.5.10":{name:"pbeWithSHA1AndDES-CBC",shortName:"pbeWithSHA1AndDES",category:"pkcs5"},"1.2.840.113549.1.5.11":{name:"pbeWithSHA1And40BitRC2-CBC",shortName:"pbeWithSHA1AndRC2",category:"pkcs5"},"1.2.840.113549.1.5.12":{name:"pbkdf2",shortName:"pbkdf2",category:"pkcs5"},"1.2.840.113549.1.5.13":{name:"pbes2",shortName:"pbes2",category:"pkcs5"},"1.2.840.113549.1.5.14":{name:"pbmac1",shortName:"pbmac1",category:"pkcs5"},"2.16.840.1.101.3.4.1.1":{name:"aes128-ECB",shortName:"aes128-ecb",category:"aes",keyLen:128,mode:"ecb"},"2.16.840.1.101.3.4.1.2":{name:"aes128-CBC",shortName:"aes128-cbc",category:"aes",keyLen:128,mode:"cbc"},"2.16.840.1.101.3.4.1.3":{name:"aes128-OFB",shortName:"aes128-ofb",category:"aes",keyLen:128,mode:"ofb"},"2.16.840.1.101.3.4.1.4":{name:"aes128-CFB",shortName:"aes128-cfb",category:"aes",keyLen:128,mode:"cfb"},"2.16.840.1.101.3.4.1.5":{name:"aes128-wrap",shortName:"aes128-kw",category:"aes",keyLen:128,mode:"kw"},"2.16.840.1.101.3.4.1.6":{name:"aes128-GCM",shortName:"aes128-gcm",category:"aes",keyLen:128,mode:"gcm"},"2.16.840.1.101.3.4.1.7":{name:"aes128-CCM",shortName:"aes128-ccm",category:"aes",keyLen:128,mode:"ccm"},"2.16.840.1.101.3.4.1.21":{name:"aes192-ECB",shortName:"aes192-ecb",category:"aes",keyLen:192,mode:"ecb"},"2.16.840.1.101.3.4.1.22":{name:"aes192-CBC",shortName:"aes192-cbc",category:"aes",keyLen:192,mode:"cbc"},"2.16.840.1.101.3.4.1.23":{name:"aes192-OFB",shortName:"aes192-ofb",category:"aes",keyLen:192,mode:"ofb"},"2.16.840.1.101.3.4.1.24":{name:"aes192-CFB",shortName:"aes192-cfb",category:"aes",keyLen:192,mode:"cfb"},"2.16.840.1.101.3.4.1.25":{name:"aes192-wrap",shortName:"aes192-kw",category:"aes",keyLen:192,mode:"kw"},"2.16.840.1.101.3.4.1.26":{name:"aes192-GCM",shortName:"aes192-gcm",category:"aes",keyLen:192,mode:"gcm"},"2.16.840.1.101.3.4.1.27":{name:"aes192-CCM",shortName:"aes192-ccm",category:"aes",keyLen:192,mode:"ccm"},"2.16.840.1.101.3.4.1.41":{name:"aes256-ECB",shortName:"aes256-ecb",category:"aes",keyLen:256,mode:"ecb"},"2.16.840.1.101.3.4.1.42":{name:"aes256-CBC",shortName:"aes256-cbc",category:"aes",keyLen:256,mode:"cbc"},"2.16.840.1.101.3.4.1.43":{name:"aes256-OFB",shortName:"aes256-ofb",category:"aes",keyLen:256,mode:"ofb"},"2.16.840.1.101.3.4.1.44":{name:"aes256-CFB",shortName:"aes256-cfb",category:"aes",keyLen:256,mode:"cfb"},"2.16.840.1.101.3.4.1.45":{name:"aes256-wrap",shortName:"aes256-kw",category:"aes",keyLen:256,mode:"kw"},"2.16.840.1.101.3.4.1.46":{name:"aes256-GCM",shortName:"aes256-gcm",category:"aes",keyLen:256,mode:"gcm"},"2.16.840.1.101.3.4.1.47":{name:"aes256-CCM",shortName:"aes256-ccm",category:"aes",keyLen:256,mode:"ccm"},"1.2.840.113549.1.12.1.1":{name:"pbeWithSHA1And128BitRC4",shortName:"pbeWithSHA1RC4-128",category:"pkcs12"},"1.2.840.113549.1.12.1.2":{name:"pbeWithSHA1And40BitRC4",shortName:"pbeWithSHA1RC4-40",category:"pkcs12"},"1.2.840.113549.1.12.1.3":{name:"pbeWithSHA1And3-KeyTripleDES-CBC",shortName:"pbeWithSHA13DES",category:"pkcs12"},"1.2.840.113549.1.12.10.1.1":{name:"pkcs12-keyBag",shortName:"keyBag",category:"pkcs12"},"1.2.840.113549.1.12.10.1.2":{name:"pkcs12-pkcs8ShroudedKeyBag",shortName:"pkcs8ShroudedKeyBag",category:"pkcs12"},"1.2.840.113549.1.12.10.1.3":{name:"pkcs12-certBag",shortName:"certBag",category:"pkcs12"},"1.2.840.113549.1.12.10.1.4":{name:"pkcs12-crlBag",shortName:"crlBag",category:"pkcs12"},"1.2.840.113549.1.12.10.1.5":{name:"pkcs12-secretBag",shortName:"secretBag",category:"pkcs12"},"1.2.840.113549.1.12.10.1.6":{name:"pkcs12-safeContentsBag",shortName:"safeContentsBag",category:"pkcs12"},"1.3.6.1.5.5.7.48.1":{name:"ocsp",shortName:"ocsp",category:"x509-extension"},"1.3.6.1.5.5.7.48.2":{name:"caIssuers",shortName:"caIssuers",category:"x509-extension"},"1.3.6.1.5.5.7.48.3":{name:"timeStamping",shortName:"timestampingUri",category:"x509-extension"},"1.2.840.113549.1.9.16.1.4":{name:"id-smime-ct-TSTInfo",shortName:"tstInfo",category:"pkcs7"},"1.3.6.1.5.5.7.48.1.1":{name:"id-pkix-ocsp-basic",shortName:"ocspBasic",category:"pkcs7"},"1.2.840.113549.1.9.16.3.8":{name:"id-alg-CMS3DESwrap",shortName:"CMS3DESwrap",category:"pkcs7"},"2.16.840.1.101.3.4.1":{name:"nistAlgorithms",shortName:"nistAlgorithms",category:"aes"},"1.2.840.113549":{name:"rsadsi",shortName:"rsadsi",category:"pkcs1"},"1.2.840.113549.1":{name:"pkcs",shortName:"pkcs",category:"pkcs1"},"2.5.4.0":{name:"objectClass",shortName:"objectClass",category:"x509-dn"},"2.5.4.49":{name:"distinguishedName",shortName:"distinguishedName",category:"x509-dn"},"2.5.4.97":{name:"organizationIdentifier",shortName:"organizationIdentifier",category:"x509-dn"},"2.16.840.1.113730.1.1":{name:"netscape-cert-type",shortName:"nsCertType",category:"x509-extension"},"2.16.840.1.113730.1.12":{name:"netscape-ssl-server-name",shortName:"nsSSLServerName",category:"x509-extension"},"2.16.840.1.113730.1.13":{name:"netscape-comment",shortName:"nsComment",category:"x509-extension"}},P=/^\d+(\.\d+)*$/,j=new Map;for(let[M,Y]of Object.entries(A))j.set(Y.name.toLowerCase(),M),j.set(Y.shortName.toLowerCase(),M);let H=[["e","1.2.840.113549.1.9.1"]];for(let[M,Y]of H)if(!j.has(M))j.set(M,Y);function D(M){if(typeof M!=="string")return null;if(!P.test(M))return null;return A[M]??null}function R(M){if(typeof M!=="string")return null;return j.get(M.toLowerCase())??null}function O(M){let Y=[];for(let[G,X]of Object.entries(A))if(X.category===M)Y.push({oid:G,...X});return Y}return{lookup:D,byName:R,findByCategory:O,OID_DATABASE:A}}}),a({name:"pem",dependencies:["b64"],factory:function(A){function P(D,R){let O="";for(let M=0;M<D.length;M+=R)O+=D.substring(M,M+R)+`
9
+ `;return O}function j(D,R){let O=A.fromBytes(D);return`-----BEGIN ${R}-----
10
+ ${P(O,64)}-----END ${R}-----
11
+ `}function H(D,R){let O=D.match(/-----BEGIN ([^-]+)-----([\s\S]+?)-----END ([^-]+)-----/);if(!O)return console.warn("[crypto] INVALID: pem: no BEGIN/END markers"),!1;let M=O[1].trim(),Y=O[3].trim();if(M!==Y)return console.warn("[crypto] INVALID: pem: BEGIN/END label mismatch"),!1;if(R&&M!==R)return console.warn(`[crypto] INVALID: pem: expected ${R}, got ${M}`),!1;let G=O[2].replace(/\s+/g,"");return{label:M,bytes:A.toBytes(G)}}return{name:"pem",encode:j,decode:H}}}),a({name:"random",dependencies:["bitArray","aes","sha256"],factory:function(A,P,j){let H=typeof crypto<"u"&&!!crypto.getRandomValues;function D(T){let _=T.length>>>2,w=Array(_);for(let h=0;h<_;h++){let l=h<<2;w[h]=T[l]<<24|T[l+1]<<16|T[l+2]<<8|T[l+3]|0}return w}function R(T,_,w,h){for(let l=0;l<_;l++){let y=h+(l<<2);w[y]=T[l]>>>24&255,w[y+1]=T[l]>>>16&255,w[y+2]=T[l]>>>8&255,w[y+3]=T[l]&255}}let O=4,M=512,Y=13,G={prev:-1,run:0},X={anchor:-1,count:0,idx:0},U=!1;function z(T){if(U)return!1;for(let _=0;_<T.length;_++){let w=T[_];if(w===G.prev){if(G.run++,G.run>=O)return U=!0,console.error("[crypto] CORRUPT: random: RCT health-test failed on entropy source"),!1}else G.prev=w,G.run=1;if(X.anchor===-1)X.anchor=w,X.count=1,X.idx=1;else{if(X.idx++,w===X.anchor){if(X.count++,X.count>Y)return U=!0,console.error("[crypto] CORRUPT: random: APT health-test failed on entropy source"),!1}if(X.idx>=M)X.anchor=-1}}return!0}function q(){G.prev=-1,G.run=0,X.anchor=-1,X.count=0,X.idx=0,U=!1}function C(T){if(!H)return console.error("[crypto] NOT READY: crypto.getRandomValues unavailable"),!1;let _=0;while(_<T.length){let w=Math.min(65536,T.length-_);crypto.getRandomValues(T.subarray(_,_+w)),_+=w}return T}function K(T){if(U)return console.error("[crypto] CORRUPT: random: entropy source previously failed health test"),!1;let _=C(new Uint8Array(T));if(_===!1)return!1;if(!z(_))return!1;return _}let V=4,F=16,$=65536,Q=4294967296;function J(T){T=T||{};let _=T.aesKeyBits||256,w=!!T.df;if(_!==128&&_!==192&&_!==256)return console.error("[crypto] BUG: ctr_drbg: aesKeyBits must be 128, 192 or 256"),!1;let h=_/8,l=h/4,y=h+F,d=y/4,n=Array(l).fill(0),i=Array(V).fill(0),Y0=null,H0=0,z0=!1;function P0(u,o){let $0=P.fn(D(u),!1);if($0===!1)return!1;let s=new Uint8Array(F);for(let V0=0;V0<o.length;V0+=F){for(let I0=0;I0<F;I0++)s[I0]^=o[V0+I0];let X0=$0.encrypt(D(s));R(X0,V,s,0)}return s}function w0(u,o){let $0=u.length,s=o,V0=8+$0+1,X0=(F-V0%F)%F,I0=V0+X0,F0=new Uint8Array(I0);F0[0]=$0>>>24&255,F0[1]=$0>>>16&255,F0[2]=$0>>>8&255,F0[3]=$0&255,F0[4]=s>>>24&255,F0[5]=s>>>16&255,F0[6]=s>>>8&255,F0[7]=s&255;for(let D0=0;D0<$0;D0++)F0[8+D0]=u[D0];F0[8+$0]=128;let u0=new Uint8Array(h);for(let D0=0;D0<h;D0++)u0[D0]=D0;let f0=h+F,t=new Uint8Array(Math.ceil(f0/F)*F),G0=0,C0=0;while(G0<f0){let D0=new Uint8Array(F+I0);D0[0]=C0>>>24&255,D0[1]=C0>>>16&255,D0[2]=C0>>>8&255,D0[3]=C0&255,D0.set(F0,F);let v0=P0(u0,D0);if(v0===!1)return!1;t.set(v0,G0),G0+=F,C0++}let q0=t.subarray(0,h),W0=t.slice(h,h+F),A0=P.fn(D(q0),!1);if(A0===!1)return!1;let B0=new Uint8Array(o),g0=0;while(g0<o){let D0=A0.encrypt(D(W0));R(D0,V,W0,0);let v0=Math.min(F,o-g0);B0.set(W0.subarray(0,v0),g0),g0+=v0}return B0}function Q0(){if(Y0=P.fn(n,!1),Y0===!1)return console.error("[crypto] BUG: ctr_drbg: AES key schedule failed"),!1;return!0}function e(){for(let u=V-1;u>=0;u--)if(i[u]=i[u]+1|0,i[u]!==0)break}function Z0(u){let o=Array(d).fill(0),$0=0;while($0<d){e();let s=Y0.encrypt(i);for(let V0=0;V0<V&&$0<d;V0++)o[$0++]=s[V0]}for(let s=0;s<d;s++)o[s]^=u[s];return n=o.slice(0,l),i=o.slice(l,l+V),Q0()}function U0(u,o,$0){if(w){let V0=u?u.length:0,X0=$0?$0.length:0,I0=o?o.length:0,F0=new Uint8Array(V0+X0+I0);if(V0)F0.set(u,0);if(X0)F0.set($0,V0);if(I0)F0.set(o,V0+X0);return w0(F0,y)}if(!u||u.length!==y)return console.error("[crypto] BUG: ctr_drbg (no-df): entropy must be exactly "+y+" bytes"),!1;let s=new Uint8Array(y);if(s.set(u),o&&o.length>0){let V0=Math.min(o.length,y);for(let X0=0;X0<V0;X0++)s[X0]^=o[X0]}return s}function k(u,o,$0){let s=U0(u,o,$0);if(s===!1)return!1;if(n.fill(0),i.fill(0),!Q0())return!1;if(!Z0(D(s)))return!1;return H0=1,z0=!0,!0}function c(u,o){if(!z0)return console.warn("[crypto] NOT READY: ctr_drbg.reseed: not instantiated"),!1;let $0=U0(u,o,null);if($0===!1)return!1;if(!Z0(D($0)))return!1;return H0=1,!0}function f(u,o){if(!z0)return console.warn("[crypto] NOT READY: ctr_drbg.generate: not instantiated"),!1;if(!Number.isInteger(u)||u<0||u>$)return console.warn("[crypto] INVALID: ctr_drbg.generate: n must be an integer in [0, "+$+"]"),!1;if(u===0)return new Uint8Array(0);if(H0>Q){let X0=K(y);if(X0===!1)return!1;if(!c(X0,o))return!1;o=null}let $0;if(o&&o.length>0){let X0;if(w){if(X0=w0(o,y),X0===!1)return!1}else X0=new Uint8Array(y),X0.set(o.subarray(0,Math.min(y,o.length)));if($0=D(X0),!Z0($0))return!1}else $0=Array(d).fill(0);let s=new Uint8Array(u),V0=0;while(V0<u){e();let X0=Y0.encrypt(i),I0=u-V0;if(I0>=16)R(X0,V,s,V0),V0+=16;else{let F0=new Uint8Array(16);R(X0,V,F0,0),s.set(F0.subarray(0,I0),V0),V0=u}}if(!Z0($0))return!1;return H0++,s}function m(){n.fill(0),i.fill(0),Y0=null,H0=0,z0=!1}return{instantiate:k,reseed:c,generate:f,uninstantiate:m,get isLive(){return z0},get reseedCounter(){return H0},get securityStrength(){return _},get aesKeyBits(){return _},get useDf(){return w},get seedBytes(){return y}}}let Z=S("e4bc23c5089a19d86f4119cb3fa08c0a4991e0a1def17e101e4c14d9c323460a7c2fb58e0b086c6c57b55f56cae25bad"),W=S("fd85a836bba85019881e8c6bad23c9061adc75477659acaea8e4a01dfe07a1832dad1c136f59d70f8653a5dc118663d6"),I="b2cb8905c05e5950ca31895096be29ea3d5a3b82b269495554eb80fe07de43e193b9e7c3ece73b80e062b1c1f68202fbb1c52a040ea2478864295282234aaada",N=null;function S(T){let _=new Uint8Array(T.length>>>1);for(let w=0;w<_.length;w++)_[w]=parseInt(T.substring(w*2,w*2+2),16);return _}function B(T){let _="";for(let w=0;w<T.length;w++){let h=T[w];_+=(h<16?"0":"")+h.toString(16)}return _}function x(){let T=J();if(!T||T===!1)return!1;if(!T.instantiate(Z))return!1;if(!T.reseed(W))return!1;if(T.generate(64)===!1)return!1;let _=T.generate(64);if(_===!1)return!1;let w=B(_);if(w!==I)return console.error("[crypto] CORRUPT: random.selfTest: CTR_DRBG KAT mismatch (got "+w+")"),!1;return!0}function v(){if(N===null)N=x();return N}let E={fill(T){return C(T)},float(){let T=C(new Uint8Array(4));if(T===!1)return!1;return((T[0]<<24|T[1]<<16|T[2]<<8|T[3])>>>0)/4294967296},int(T,_){if(T>_)throw RangeError("min must be ≤ max");let w=_-T+1,h=Math.floor(4294967296/w)*w,l=new Uint8Array(4),y;do{if(C(l)===!1)return!1;y=(l[0]<<24|l[1]<<16|l[2]<<8|l[3])>>>0}while(y>=h);return T+y%w},bytes(T){if(!Number.isInteger(T)||T<0)return console.warn("[crypto] INVALID: random.bytes expects a non-negative integer"),!1;return C(new Uint8Array(T))},words(T){if(!Number.isInteger(T)||T<0)return console.warn("[crypto] INVALID: random.words expects a non-negative integer"),!1;let _=C(new Uint8Array(T*4));if(_===!1)return!1;let w=Array(T);for(let h=0;h<T;h++){let l=h*4;w[h]=_[l]<<24|_[l+1]<<16|_[l+2]<<8|_[l+3]|0}return w},bits(T){if(!Number.isInteger(T)||T<0)return console.warn("[crypto] INVALID: random.bits expects a non-negative integer"),!1;let _=Math.ceil(T/32),w=E.words(_);if(w===!1)return!1;return A.clamp(w,T)},isReady(){return H},selfTest(){return N=x(),N},_internal:{makeDrbg:J},health:{feed(T){return z(T instanceof Uint8Array?T:new Uint8Array(T))},reset(){q()},get isDead(){return U}},drbg(T={}){if(!v())return console.error("[crypto] CORRUPT: random.drbg refused - POST failed"),!1;let _=J(T);if(_===!1)return!1;let w=K(_.seedBytes);if(w===!1)return!1;if(!_.instantiate(w,T.personalisation))return!1;let h=null;return{generate(l,y){let d=y||null;if(h!==null)d=d===null?h:(()=>{let n=new Uint8Array(h.length+d.length);return n.set(h),n.set(d,h.length),n})(),h=null;return _.generate(l,d)},reseed(l){let y=K(_.seedBytes);if(y===!1)return!1;let d=l||null;if(h!==null)d=d===null?h:(()=>{let n=new Uint8Array(h.length+d.length);return n.set(h),n.set(d,h.length),n})(),h=null;return _.reseed(y,d)},addAdditionalInput(l){if(!(l instanceof Uint8Array))if(Array.isArray(l)||l instanceof Uint32Array){let d=new Uint8Array(l.length*4);for(let n=0;n<l.length;n++){let i=l[n]|0;d[n*4]=i>>>24&255,d[n*4+1]=i>>>16&255,d[n*4+2]=i>>>8&255,d[n*4+3]=i&255}l=d}else if(typeof l==="number"){let d=l|0;l=new Uint8Array([d>>>24&255,d>>>16&255,d>>>8&255,d&255])}else return console.warn("[crypto] BUG: drbg.addAdditionalInput: unsupported data type"),!1;let y=h===null?l:(()=>{let d=new Uint8Array(h.length+l.length);return d.set(h),d.set(l,h.length),d})();if(y.length<=_.seedBytes)h=y;else{let d=j.hash(D(y.subarray(0,y.length&-4))),n=new Uint8Array(32);R(d,8,n,0),h=n}return!0},uninstantiate(){h=null,_.uninstantiate()},get isLive(){return _.isLive},get reseedCounter(){return _.reseedCounter},get securityStrength(){return _.securityStrength}}}};return E}}),a({name:"bn",dependencies:["bitArray","random"],factory:function(A,P){let j={random:function(R,O){},prime:{},pseudoMersennePrime:function(R,O){},fromBits:function(R){},bn:function(R){this.initWith(R)}},H=j.bn;H.prototype.radix=24,H.prototype.maxMul=8,H.prototype._class=H,H.prototype.copy=function(){return new this._class(this)},H.prototype.initWith=function(R){let O,M;switch(typeof R){case"object":this.limbs=R.limbs.slice(0);break;case"number":this.limbs=[R],this.normalize();break;case"string":if(R=R.replace(/^0x/,""),!/^[0-9a-fA-F]*$/.test(R)){console.warn("[crypto] INVALID: bn.initWith: string must contain only hex characters"),this.limbs=[0];break}this.limbs=[],M=this.radix/4;for(O=0;O<R.length;O+=M)this.limbs.push(parseInt(R.substring(Math.max(R.length-O-M,0),R.length-O),16));if(this.limbs.length===0)this.limbs=[0];break;default:this.limbs=[0]}return this},H.prototype.equals=function(R){if(typeof R==="number")R=new this._class(R);let O=this.copy().fullReduce(),M=R.copy().fullReduce(),Y=0;for(let G=0;G<O.limbs.length||G<M.limbs.length;G++)Y|=O.getLimb(G)^M.getLimb(G);return Y===0},H.prototype.getLimb=function(R){return R>=this.limbs.length?0:this.limbs[R]},H.prototype.greaterEquals=function(R){if(typeof R==="number")R=new this._class(R);let O=0,M=0,Y,G,X=Math.max(this.limbs.length,R.limbs.length)-1;for(;X>=0;X--)Y=this.getLimb(X),G=R.getLimb(X),M|=G-Y&~O,O|=Y-G&~M;return(M|~O)>>>31},H.prototype.toHex=function(){this.fullReduce();let R="",O=this.limbs;for(let M=0;M<this.limbs.length;M++){let Y=O[M].toString(16);while(M<this.limbs.length-1&&Y.length<6)Y="0"+Y;R=Y+R}return"0x"+R},H.prototype.addM=function(R){if(typeof R!=="object")R=new this._class(R);let O=this.limbs,M=R.limbs;for(let Y=O.length;Y<M.length;Y++)O[Y]=0;for(let Y=0;Y<M.length;Y++)O[Y]+=M[Y];return this},H.prototype.doubleM=function(){let R=0,O,M=this.radix,Y=this.radixMask,G=this.limbs;for(let X=0;X<G.length;X++)O=G[X],O=O+O+R,G[X]=O&Y,R=O>>M;if(R)G.push(R);return this},H.prototype.halveM=function(){let R=0,O,M=this.radix,Y=this.limbs;for(let G=Y.length-1;G>=0;G--)O=Y[G],Y[G]=O+R>>1,R=(O&1)<<M;if(!Y[Y.length-1])Y.pop();return this},H.prototype.subM=function(R){if(typeof R!=="object")R=new this._class(R);let O=this.limbs,M=R.limbs;for(let Y=O.length;Y<M.length;Y++)O[Y]=0;for(let Y=0;Y<M.length;Y++)O[Y]-=M[Y];return this},H.prototype.mod=function(R){let O=!this.greaterEquals(new H(0));R=new H(R).normalize();let M=new H(this).normalize(),Y=0;if(O)M=new H(0).subM(M).normalize();for(;M.greaterEquals(R);Y++)R.doubleM();if(O)M=R.sub(M).normalize();for(;Y>0;Y--)if(R.halveM(),M.greaterEquals(R))M.subM(R).normalize();return M.trim()},H.prototype.inverseMod=function(R){let O=new H(1),M=new H(0),Y=new H(this),G=new H(R),X,U;if(!(R.limbs[0]&1))return console.warn("[crypto] INVALID: inverseMod: p must be odd"),!1;do{if(Y.limbs[0]&1){if(!Y.greaterEquals(G))X=Y,Y=G,G=X,X=O,O=M,M=X;if(Y.subM(G),Y.normalize(),!O.greaterEquals(M))O.addM(R);O.subM(M)}if(Y.halveM(),O.limbs[0]&1)O.addM(R);O.normalize(),O.halveM(),U=0;for(let z=0;z<Y.limbs.length;z++)U|=Y.limbs[z]}while(U);if(!G.equals(1))return console.warn("[crypto] INVALID: inverseMod: p and x must be relatively prime"),!1;return M},H.prototype.add=function(R){return this.copy().addM(R)},H.prototype.sub=function(R){return this.copy().subM(R)},H.prototype.mul=function(R){if(typeof R==="number")R=new this._class(R);else R.normalize();this.normalize();let O=this.limbs,M=R.limbs,Y=O.length,G=M.length,X=new this._class,U=X.limbs,z,q=this.maxMul;for(let C=0;C<this.limbs.length+R.limbs.length+1;C++)U[C]=0;for(let C=0;C<Y;C++){z=O[C];for(let K=0;K<G;K++)U[C+K]+=z*M[K];if(!--q)q=this.maxMul,X.cnormalize()}return X.cnormalize().reduce()},H.prototype.square=function(){return this.mul(this)},H.prototype.power=function(R){R=new H(R).normalize().trim().limbs;let O=new this._class(1),M=this;for(let Y=0;Y<R.length;Y++)for(let G=0;G<this.radix;G++){if(R[Y]&1<<G)O=O.mul(M);if(Y===R.length-1&&R[Y]>>G+1===0)break;M=M.square()}return O},H.prototype.mulmod=function(R,O){return this.mod(O).mul(R.mod(O)).mod(O)},H.prototype.powermod=function(R,O){if(R=new H(R),O=new H(O),(O.limbs[0]&1)===1){let X=this.montpowermod(R,O);if(X!==!1)return X}let M=R.normalize().trim().limbs,Y=new this._class(1),G=this;for(let X=0;X<M.length;X++)for(let U=0;U<this.radix;U++){if(M[X]&1<<U)Y=Y.mulmod(G,O);if(X===M.length-1&&M[X]>>U+1===0)break;G=G.mulmod(G,O)}return Y},H.prototype.montpowermod=function(R,O){R=new H(R).normalize().trim(),O=new H(O);let M=this.radix,Y=new this._class(1),G=this.copy(),X=R.bitLength(),U=new H({limbs:O.copy().normalize().trim().limbs.map(function(){return 0})}),z;for(z=this.radix;z>0;z--)if((O.limbs[O.limbs.length-1]>>z&1)===1){U.limbs[U.limbs.length-1]=1<<z;break}let q;if(X===0)return this;else if(X<18)q=1;else if(X<48)q=3;else if(X<144)q=4;else if(X<768)q=5;else q=6;let C=U.copy(),K=O.copy(),V=new H(1),F=new H(0),$=U.copy();while($.greaterEquals(1))if($.halveM(),(V.limbs[0]&1)===0)V.halveM(),F.halveM();else V.addM(K),V.halveM(),F.halveM(),F.addM(C);V=V.normalize(),F=F.normalize(),C.doubleM();let Q=C.mulmod(C,O);if(!C.mul(V).sub(O.mul(F)).equals(1))return!1;let J=function(B,x){let v=(1<<z+1)-1,E=B.mul(x),T=E.mul(F);if(T.limbs=T.limbs.slice(0,U.limbs.length),T.limbs.length===U.limbs.length)T.limbs[U.limbs.length-1]&=v;T=T.mul(O);let _=E.add(T).normalize().trim();_.limbs=_.limbs.slice(U.limbs.length-1);for(let w=0;w<_.limbs.length;w++){if(w>0)_.limbs[w-1]|=(_.limbs[w]&v)<<M-z-1;_.limbs[w]=_.limbs[w]>>z+1}if(_.greaterEquals(O))_.subM(O);return _},Z=function(B){return J(B,Q)},W=function(B){return J(B,1)};G=Z(G),Y=Z(Y);let I={},N=(1<<q-1)-1;I[1]=G.copy(),I[2]=J(G,G);for(let B=1;B<=N;B++)I[2*B+1]=J(I[2*B-1],I[2]);let S=function(B,x){let v=x%B.radix;return(B.limbs[Math.floor(x/B.radix)]&1<<v)>>v};for(let B=R.bitLength()-1;B>=0;)if(S(R,B)===0)Y=J(Y,Y),B=B-1;else{let x=B-q+1;while(S(R,x)===0)x++;let v=0;for(let E=x;E<=B;E++)v+=S(R,E)<<E-x,Y=J(Y,Y);Y=J(Y,I[v]),B=x-1}return W(Y)},H.prototype.trim=function(){let R=this.limbs,O;do O=R.pop();while(R.length&&O===0);return R.push(O),this},H.prototype.reduce=function(){return this},H.prototype.fullReduce=function(){return this.normalize()},H.prototype.normalize=function(){let R=0,O=this.placeVal,M=this.ipv,Y=this.limbs,G=Y.length,X=this.radixMask,U,z,q;for(U=0;U<G||R!==0&&R!==-1;U++)z=(Y[U]||0)+R,q=Y[U]=z&X,R=(z-q)*M;if(R===-1)Y[U-1]-=O;return this.trim(),this},H.prototype.cnormalize=function(){let R=0,O=this.ipv,M=this.limbs,Y=M.length,G=this.radixMask,X,U,z;for(X=0;X<Y-1;X++)U=M[X]+R,z=M[X]=U&G,R=(U-z)*O;return M[X]+=R,this},H.prototype.toBits=function(R){this.fullReduce(),R=R||this.exponent||this.bitLength();let O=Math.floor((R-1)/24),M=A,Y=(R+7&-8)%this.radix||this.radix,G=[M.partial(Y,this.getLimb(O))];for(O--;O>=0;O--)G=M.concat(G,[M.partial(Math.min(this.radix,R),this.getLimb(O))]),R-=this.radix;return G},H.prototype.bitLength=function(){this.fullReduce();let R=this.radix*(this.limbs.length-1),O=this.limbs[this.limbs.length-1];for(;O;O>>>=1)R++;return R+7&-8},j.fromBits=function(R){let O,M;if(this.bn)O=this.bn,M=this.bn.prototype;else O=this,M=this.prototype;let Y=new O,G=[],X=A,U=Math.min(this.bitLength||4294967296,X.bitLength(R)),z=U%M.radix||M.radix;G[0]=X.extract(R,0,z);for(let q=z;q<U;q+=M.radix)G.unshift(X.extract(R,q,M.radix));return Y.limbs=G,Y},H.prototype.ipv=1/(H.prototype.placeVal=Math.pow(2,H.prototype.radix)),H.prototype.radixMask=(1<<H.prototype.radix)-1,j.pseudoMersennePrime=function(R,O){function M(U){this.initWith(U)}let Y=M.prototype=new H,G=R/Y.radix,X=Y.modOffset=Math.ceil(G);Y.exponent=R,Y.offset=[],Y.factor=[],Y.minOffset=X,Y.fullMask=0,Y.fullOffset=[],Y.fullFactor=[],Y.modulus=M.modulus=new H(Math.pow(2,R)),Y.fullMask=0|-Math.pow(2,R%Y.radix);for(let U=0;U<O.length;U++)Y.offset[U]=Math.floor(O[U][0]/Y.radix-G),Y.fullOffset[U]=Math.floor(O[U][0]/Y.radix)-X+1,Y.factor[U]=O[U][1]*Math.pow(0.5,R-O[U][0]+Y.offset[U]*Y.radix),Y.fullFactor[U]=O[U][1]*Math.pow(0.5,R-O[U][0]+Y.fullOffset[U]*Y.radix),Y.modulus.addM(new H(Math.pow(2,O[U][0])*O[U][1])),Y.minOffset=Math.min(Y.minOffset,-Y.offset[U]);return Y._class=M,Y.modulus.cnormalize(),Y.reduce=function(){let U=this.limbs,z=this.offset,q=this.offset.length,C=this.factor,K=this.minOffset,V,F;while(U.length>X){V=U.pop(),F=U.length;for(let $=0;$<q;$++)U[F+z[$]]-=C[$]*V;if(K--,!K)U.push(0),this.cnormalize(),K=this.minOffset}return this.cnormalize(),this},Y._strongReduce=Y.fullMask===-1?Y.reduce:function(){let U=this.limbs,z=U.length-1;if(this.reduce(),z===this.modOffset-1){let q=U[z]&this.fullMask;U[z]-=q;for(let C=0;C<this.fullOffset.length;C++)U[z+this.fullOffset[C]]-=this.fullFactor[C]*q;this.normalize()}},Y.fullReduce=function(){this._strongReduce(),this.addM(this.modulus),this.addM(this.modulus),this.normalize(),this._strongReduce();for(let z=this.limbs.length;z<this.modOffset;z++)this.limbs[z]=0;let U=this.greaterEquals(this.modulus);for(let z=0;z<this.limbs.length;z++)this.limbs[z]-=this.modulus.limbs[z]*U;return this.cnormalize(),this},Y.inverse=function(){return this.power(this.modulus.sub(2))},M.fromBits=j.fromBits,M};let D=j.pseudoMersennePrime;return j.prime={p127:D(127,[[0,-1]]),p25519:D(255,[[0,-19]]),p192k:D(192,[[32,-1],[12,-1],[8,-1],[7,-1],[6,-1],[3,-1],[0,-1]]),p224k:D(224,[[32,-1],[12,-1],[11,-1],[9,-1],[7,-1],[4,-1],[1,-1],[0,-1]]),p256k:D(256,[[32,-1],[9,-1],[8,-1],[7,-1],[6,-1],[4,-1],[0,-1]]),p192:D(192,[[0,-1],[64,-1]]),p224:D(224,[[0,1],[96,-1]]),p256:D(256,[[0,-1],[96,1],[192,1],[224,-1]]),p384:D(384,[[0,-1],[32,1],[96,-1],[128,-1]]),p521:D(521,[[0,-1]])},j.random=function(R,O){if(typeof R!=="object")R=new H(R);let M=R.limbs.length,Y=R.limbs[M-1]+1,G=new H,X;while(!0){do if(X=P.words(M,O),X[M-1]<0)X[M-1]+=4294967296;while(Math.floor(X[M-1]/Y)===Math.floor(4294967296/Y));X[M-1]%=Y;for(let U=0;U<M-1;U++)X[U]&=R.radixMask;if(G.limbs=X,!G.greaterEquals(R))return G}},j}}),a({name:"hmac",dependencies:["bitArray","utf8","sha256"],factory:function(A,P,j){let H={};return H.fn=function(D,R){if(this._updated=!1,this._hash=R||j,typeof D==="string")D=A.ui8_to_ba(P.toBytes(D));let O=[[],[]],M=this._hash.fn.prototype.blockSize/32;if(this._baseHash=[new this._hash.fn,new this._hash.fn],D.length>M)D=this._hash.hash(D);let Y=D;for(let G=0;G<M;G++)O[0][G]=(Y[G]|0)^909522486,O[1][G]=(Y[G]|0)^1549556828;this._baseHash[0].update(O[0]),this._baseHash[1].update(O[1]),this._resultHash=new this._hash.fn(this._baseHash[0])},H.fn.prototype.encrypt=function(D){if(this._updated)return console.warn("[crypto] INVALID: hmac: encrypt called on already-updated instance"),!1;return this.update(D),this.digest()},H.fn.prototype.mac=H.fn.prototype.encrypt,H.fn.prototype.reset=function(){this._resultHash=new this._hash.fn(this._baseHash[0]),this._updated=!1},H.fn.prototype.update=function(D){return this._updated=!0,this._resultHash.update(D),this},H.fn.prototype.digest=function(){let D=this._resultHash.finalize(),R=new this._hash.fn(this._baseHash[1]).update(D).finalize();return this.reset(),R},H.verify=function(D,R,O,M){let Y=new H.fn(D,M).encrypt(R);if(Y===!1)return!1;return A.equal(Y,O)},H}}),a({name:"rsa",dependencies:["bitArray","bn","random"],factory:function(A,P,j){function H(Z){return P.fromBits(A.ui8_to_ba(Z))}function D(Z,W){let I=Z.toBits(W*8);return A.ba_to_ui8(I)}function R(Z){return Z.length}function O(Z,W){let I=H(Z.n),N=H(Z.e);return W.powermod(N,I)}function M(Z,W,I){let N=!(I&&I.blinding===!1),S=H(Z.n),B=W,x=null;if(N&&Z.e){let E=H(Z.e),T,_,w=0;while(w<16){if(T=P.random(S,6),T===!1){x=null,B=W;break}if(T.equals(0)||T.equals(1)){w++;continue}if(_=T.inverseMod(S),_===!1||_===void 0){w++;continue}x=_;let h=T.powermod(E,S);B=W.mul(h).mod(S).normalize();break}if(x===null)console.warn("[crypto] WEAK: rsa: blinding disabled (random failure or gcd(r, n) ≠ 1) - falling back to unblinded decrypt"),B=W}let v;if(Z.p&&Z.q&&Z.dp&&Z.dq&&Z.qInv){let E=H(Z.p),T=H(Z.q),_=H(Z.dp),w=H(Z.dq),h=H(Z.qInv),l=B.mod(E).normalize().powermod(_,E),y=B.mod(T).normalize().powermod(w,T),d=y.mod(E).normalize(),n;if(l.greaterEquals(d))n=l.sub(d).normalize();else n=l.add(E).sub(d).normalize();let i=n.mul(h).mod(E).normalize();v=y.add(T.mul(i)).mod(S).normalize()}else{let E=H(Z.d);v=B.powermod(E,S)}if(x!==null)v=v.mul(x).mod(S).normalize();return v}function Y(Z,W,I){let N=new Uint8Array(I),S=new Uint8Array(4),B=0;for(let x=0;B<I;x++){S[0]=x>>>24&255,S[1]=x>>>16&255,S[2]=x>>>8&255,S[3]=x&255;let v=new Uint8Array(W.length+4);v.set(W,0),v.set(S,W.length);let E=A.ba_to_ui8(Z.hash(A.ui8_to_ba(v))),T=Math.min(E.length,I-B);N.set(E.subarray(0,T),B),B+=T}return N}function G(Z,W){return A.ba_to_ui8(Z.hash(A.ui8_to_ba(W)))}function X(Z,W){let I=new Uint8Array(Z.length);for(let N=0;N<Z.length;N++)I[N]=Z[N]^W[N];return I}function U(Z,W,I,N,S){let B=R(Z.n),x=G(I,N||new Uint8Array(0)),v=x.length;if(W.length>B-2*v-2)return console.warn("[crypto] INVALID: rsa: message too long for OAEP"),!1;let E=B-W.length-2*v-2,T=new Uint8Array(B-v-1);T.set(x,0),T[v+E]=1,T.set(W,v+E+1);let _=S||j.bytes(v),w=Y(I,_,B-v-1),h=X(T,w),l=Y(I,h,v),y=X(_,l),d=new Uint8Array(B);d[0]=0,d.set(y,1),d.set(h,1+v);let n=O(Z,H(d));return D(n,B)}function z(Z,W,I,N){let S=R(Z.n),B=G(I,N||new Uint8Array(0)),x=B.length;if(W.length!==S||S<2*x+2)return console.warn("[crypto] INVALID: rsa: OAEP ciphertext length wrong"),!1;let v=M(Z,H(W)),E=D(v,S),T=E[0],_=E.subarray(1,1+x),w=E.subarray(1+x),h=Y(I,w,x),l=X(_,h),y=Y(I,l,S-x-1),d=X(w,y);for(let H0=0;H0<x;H0++)T|=d[H0]^B[H0];let n=0,i=0,Y0=0;for(let H0=x;H0<d.length;H0++){let z0=d[H0],P0=(z0^1)-1>>>31,w0=z0-1>>>31;i|=H0&-(P0&1-n|0),n|=P0,Y0|=1-n&1-w0}if(T|=Y0|1-n,T!==0)return console.error("[crypto] CORRUPT: rsa: OAEP decryption failed"),!1;return new Uint8Array(d.subarray(i+1))}function q(Z,W,I,N){let S=Z.length,B=W+7>>>3,x=N.length;if(B<S+x+2)return console.warn("[crypto] INVALID: rsa: PSS encoding too short"),!1;let v=new Uint8Array(8+S+x);v.set(Z,8),v.set(N,8+S);let E=G(I,v),T=new Uint8Array(B-S-1);T[B-S-x-2]=1,T.set(N,B-S-x-1);let _=Y(I,E,T.length),w=X(T,_),h=8*B-W;if(h>0)w[0]&=255>>>h;let l=new Uint8Array(B);return l.set(w,0),l.set(E,B-S-1),l[B-1]=188,l}function C(Z,W,I,N,S){let B=Z.length,x=W.length;if(x<B+S+2||W[x-1]!==188)return!1;let v=new Uint8Array(W.subarray(0,x-B-1)),E=W.subarray(x-B-1,x-1),T=8*x-I;if(T>0&&(v[0]&(255<<8-T&255))!==0)return!1;let _=Y(N,E,v.length),w=X(v,_);if(T>0)w[0]&=255>>>T;for(let n=0;n<x-B-S-2;n++)if(w[n]!==0)return!1;if(w[x-B-S-2]!==1)return!1;let h=w.subarray(w.length-S),l=new Uint8Array(8+B+S);l.set(Z,8),l.set(h,8+B);let y=G(N,l),d=0;for(let n=0;n<B;n++)d|=E[n]^y[n];return d===0}function K(Z,W,I,N,S){let B=R(Z.n),x=H(Z.n).bitLength()-1,v=x+7>>>3,E=G(I,W);if(N===void 0)N=E.length;let T=S||(N>0?j.bytes(N):new Uint8Array(0)),_=q(E,x,I,T);if(_===!1)return!1;let w=_;if(v<B)w=new Uint8Array(B),w.set(_,B-v);let h=M(Z,H(w));return D(h,B)}function V(Z,W,I,N,S){let B=R(Z.n);if(I.length!==B)return!1;let x=H(Z.n).bitLength()-1,v=x+7>>>3,E=O(Z,H(I)),T=D(E,B).subarray(B-v),_=G(N,W);if(S===void 0)S=_.length;return C(_,T,x,N,S)}function F(){return console.warn("[crypto] DEPRECATED: rsa: PKCS#1 v1.5 signature scheme (RFC 8017 §8.2) is deprecated by NIST SP 800-131A Rev.2 (Table 5). Use pssSign() instead."),!1}function $(){return console.warn("[crypto] DEPRECATED: rsa: PKCS#1 v1.5 signature verification (RFC 8017 §8.2) is deprecated by NIST SP 800-131A Rev.2 (Table 5). Use pssVerify() instead."),!1}function Q(){return console.warn("[crypto] DEPRECATED|UNSAFE: rsa: PKCS#1 v1.5 encryption (RFC 8017 §7.2) is vulnerable to Bleichenbacher padding oracle attacks. Use oaepEncrypt() instead."),!1}function J(){return console.warn("[crypto] DEPRECATED|UNSAFE: rsa: PKCS#1 v1.5 decryption (RFC 8017 §7.2) is vulnerable to Bleichenbacher padding oracle attacks. Use oaepDecrypt() instead."),!1}return{oaepEncrypt:U,oaepDecrypt:z,pssSign:K,pssVerify:V,pkcs1v15Sign:F,pkcs1v15Verify:$,pkcs1v15Encrypt:Q,pkcs1v15Decrypt:J,_internal:{rsaep:O,rsadp:M,mgf1:Y}}}}),a({name:"ecc",dependencies:["bitArray","hex","bn","sha256","sha384","sha512","hmac"],factory:function(A,P,j,H,D,R,O){let M={256:H,384:D,512:R};function Y(Q){if(Q<=256)return H;if(Q<=384)return D;return R}function G(Q){let J=0;for(let I=0;I<Q.length;I++)J+=Q[I].length;let Z=new Uint8Array(J),W=0;for(let I=0;I<Q.length;I++)Z.set(Q[I],W),W+=Q[I].length;return Z}function X(Q,J,Z){let W=new O.fn(A.ui8_to_ba(J),Q);return A.ba_to_ui8(W.encrypt(A.ui8_to_ba(Z)))}function U(Q,J){let Z=Q.toBits(J*8),W=A.ba_to_ui8(Z);if(W.length===J)return W;let I=new Uint8Array(J);return I.set(W,J-W.length),I}function z(Q,J){let Z=A.bitLength(Q),W=Q;if(Z>J)W=A.clamp(Q,J);return j.fromBits(W)}function q(Q,J,Z,W){let I=z(Q,W),N=I.greaterEquals(J)?I.sub(J).normalize():I;return U(N,Z)}function C(Q){let J=A.ba_to_ui8(Q.toBits()),Z=0;while(Z<J.length&&J[Z]===0)Z++;if(Z===J.length)return 0;let W=(J.length-Z)*8,I=J[Z];while((I&128)===0)W--,I=I<<1&255;return W}function K(Q,J,Z,W){let I=C(Z),N=I+7>>>3,S=U(J,N),B=q(Q,Z,N,I),x=A.bitLength(W.hash([]))/8,v=new Uint8Array(x).fill(1),E=new Uint8Array(x),T=new Uint8Array([0]),_=new Uint8Array([1]);E=X(W,E,G([v,T,S,B])),v=X(W,E,v),E=X(W,E,G([v,_,S,B])),v=X(W,E,v);for(;;){let w=new Uint8Array(0);while(w.length*8<I)v=X(W,E,v),w=G([w,v]);let h=z(A.ui8_to_ba(w),I);if(!h.equals(0)&&!h.greaterEquals(Z))return h;E=X(W,E,G([v,T])),v=X(W,E,v)}}let V={};V.point=function(Q,J,Z){if(J===void 0)this.isIdentity=!0;else{if(J instanceof j.bn)J=new Q.field(J);if(Z instanceof j.bn)Z=new Q.field(Z);this.x=J,this.y=Z,this.isIdentity=!1}this.curve=Q},V.point.prototype={toJac(){return new V.pointJac(this.curve,this.x,this.y,new this.curve.field(1))},mult(Q){return this.toJac().mult(Q,this).toAffine()},mult2(Q,J,Z){return this.toJac().mult2(Q,this,J,Z).toAffine()},multiples(){if(this._multiples===void 0){let Q=this.toJac().doubl(),J=[Q];for(let Z=3;Z<16;Z++)Q=Q.add(this),J.push(Q);this._multiples=[new V.point(this.curve),this].concat(V.pointJac.toAffineMultiple(J))}return this._multiples},negate(){let Q=new this.curve.field(0).sub(this.y).normalize().reduce();return new V.point(this.curve,this.x,Q)},isValid(){return this.y.square().equals(this.curve.b.add(this.x.mul(this.curve.a.add(this.x.square()))))},toBits(){return A.concat(this.x.toBits(),this.y.toBits())}},V.pointJac=function(Q,J,Z,W){if(J===void 0)this.isIdentity=!0;else this.x=J,this.y=Z,this.z=W,this.isIdentity=!1;this.curve=Q},V.pointJac.toAffineMultiple=function(Q){let J=0,Z,W,I,N,S,B,x,v=Array(Q.length);for(;J<Q.length;J++){if(W=Q[J],x!==W.curve){if(x){for(J=0;J<Q.length;J++)v[J]=Q[J].toAffine();return v}x=W.curve}if(!W.isIdentity&&!W.z.equals(0))if(I)I.push(N),N=N.mul(W.z);else N=W.z,I=[]}if(I)N=N.inverse(),Z=I.length-1;for(J--;J>=0;J--)if(W=Q[J],W.isIdentity||W.z.equals(0))v[J]=new V.point(W.curve);else{if(Z>=0)S=N.mul(I[Z]),N=N.mul(W.z),Z--;else S=N;B=S.square(),v[J]=new V.point(W.curve,W.x.mul(B).fullReduce(),W.y.mul(B.mul(S)).fullReduce())}return v},V.pointJac.prototype={add(Q){let J=this;if(J.curve!==Q.curve)return console.warn("[crypto] INVALID: ecc.add: points must be on the same curve"),!1;if(J.isIdentity)return Q.toJac();if(Q.isIdentity)return J;let Z=J.z.square(),W=Q.x.mul(Z).subM(J.x);if(W.equals(0)){if(J.y.equals(Q.y.mul(Z.mul(J.z))))return J.doubl();return new V.pointJac(J.curve)}let I=Q.y.mul(Z.mul(J.z)).subM(J.y),N=W.square(),S=I.square(),B=W.square().mul(W).addM(J.x.add(J.x).mul(N)),x=S.subM(B),v=J.x.mul(N).subM(x).mul(I),E=J.y.mul(W.square().mul(W)),T=v.subM(E),_=J.z.mul(W);return new V.pointJac(this.curve,x,T,_)},doubl(){if(this.isIdentity)return this;let Q=this.y.square(),J=Q.mul(this.x.mul(4)),Z=Q.square().mul(8),W=this.z.square(),I=this.curve.a.toHex()===new j.bn(-3).toHex()?this.x.sub(W).mul(3).mul(this.x.add(W)):this.x.square().mul(3).add(W.square().mul(this.curve.a)),N=I.square().subM(J).subM(J),S=J.sub(N).mul(I).subM(Z),B=this.y.add(this.y).mul(this.z);return new V.pointJac(this.curve,N,S,B)},toAffine(){if(this.isIdentity||this.z.equals(0))return new V.point(this.curve);let Q=this.z.inverse(),J=Q.square();return new V.point(this.curve,this.x.mul(J).fullReduce(),this.y.mul(J.mul(Q)).fullReduce())},mult(Q,J){if(typeof Q==="number")Q=[Q];else if(Q.limbs!==void 0)Q=Q.normalize().limbs;let Z=new V.point(this.curve).toJac(),W=J.multiples();for(let I=Q.length-1;I>=0;I--)for(let N=j.bn.prototype.radix-4;N>=0;N-=4)Z=Z.doubl().doubl().doubl().doubl().add(W[Q[I]>>N&15]);return Z},mult2(Q,J,Z,W){if(typeof Q==="number")Q=[Q];else if(Q.limbs!==void 0)Q=Q.normalize().limbs;if(typeof Z==="number")Z=[Z];else if(Z.limbs!==void 0)Z=Z.normalize().limbs;let I=new V.point(this.curve).toJac(),N=J.multiples(),S=W.multiples();for(let B=Math.max(Q.length,Z.length)-1;B>=0;B--){let x=Q[B]|0,v=Z[B]|0;for(let E=j.bn.prototype.radix-4;E>=0;E-=4)I=I.doubl().doubl().doubl().doubl().add(N[x>>E&15]).add(S[v>>E&15])}return I},negate(){return this.toAffine().negate().toJac()},isValid(){let Q=this.z.square(),J=Q.square(),Z=J.mul(Q);return this.y.square().equals(this.curve.b.mul(Z).add(this.x.mul(this.curve.a.mul(J).add(this.x.square()))))}},V.curve=function(Q,J,Z,W,I,N){this.field=Q,this.r=new j.bn(J),this.a=new Q(Z),this.b=new Q(W),this.G=new V.point(this,new Q(I),new Q(N))},V.curve.prototype.fromBits=function(Q){let J=this.field.prototype.exponent+7&-8,Z=new V.point(this,this.field.fromBits(A.bitSlice(Q,0,J)),this.field.fromBits(A.bitSlice(Q,J,2*J)));if(!Z.isValid())return console.error("[crypto] CORRUPT: ecc: point not on the curve"),!1;return Z},V.curves={c192:new V.curve(j.prime.p192,"0xffffffffffffffffffffffff99def836146bc9b1b4d22831",-3,"0x64210519e59c80e70fa7e9ab72243049feb8deecc146b9b1","0x188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012","0x07192b95ffc8da78631011ed6b24cdd573f977a11e794811"),c224:new V.curve(j.prime.p224,"0xffffffffffffffffffffffffffff16a2e0b8f03e13dd29455c5c2a3d",-3,"0xb4050a850c04b3abf54132565044b0b7d7bfd8ba270b39432355ffb4","0xb70e0cbd6bb4bf7f321390b94a03c1d356c21122343280d6115c1d21","0xbd376388b5f723fb4c22dfe6cd4375a05a07476444d5819985007e34"),c256:new V.curve(j.prime.p256,"0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",-3,"0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b","0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296","0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"),c384:new V.curve(j.prime.p384,"0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973",-3,"0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef","0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7","0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f"),c521:new V.curve(j.prime.p521,"0x1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA51868783BF2F966B7FCC0148F709A5D03BB5C9B8899C47AEBB6FB71E91386409",-3,"0x051953EB9618E1C9A1F929A21A0B68540EEA2DA725B99B315F3B8B489918EF109E156193951EC7E937B1652C0BD3BB1BF073573DF883D2C34F1EF451FD46B503F00","0xC6858E06B70404E9CD9E3ECB662395B4429C648139053FB521F828AF606B4D3DBAA14B5E77EFE75928FE1DC127A2FFA8DE3348B3C1856A429BF97E7E31C2E5BD66","0x11839296A789A3BC0045C8A5FB42C7D1BD998F54449579B446817AFBD17273E662C97EE72995EF42640C550B9013FAD0761353C7086A272C24088BE94769FD16650"),k192:new V.curve(j.prime.p192k,"0xfffffffffffffffffffffffe26f2fc170f69466a74defd8d",0,3,"0xdb4ff10ec057e9ae26b07d0280b7f4341da5d1b1eae06c7d","0x9b2f2f6d9c5628a7844163d015be86344082aa88d95e2f9d"),k224:new V.curve(j.prime.p224k,"0x010000000000000000000000000001dce8d2ec6184caf0a971769fb1f7",0,5,"0xa1455b334df099df30fc28a169a467e9e47075a90f7e650eb6b7a45c","0x7e089fed7fba344282cafbd6f7e319f7c0b0bd59e2ca4bdb556d61a5"),k256:new V.curve(j.prime.p256k,"0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",0,7,"0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},V.curveName=function(Q){for(let J in V.curves)if(Object.prototype.hasOwnProperty.call(V.curves,J)&&V.curves[J]===Q)return J;return console.warn("[crypto] INVALID: ecc: no such curve"),!1};function F(Q,J){let Z=J.field.prototype.exponent+7&-8,W=j.fromBits(A.bitSlice(Q,0,Z)),I=j.fromBits(A.bitSlice(Q,Z,2*Z)),N=J.field.modulus;return!W.greaterEquals(N)&&!I.greaterEquals(N)}function $(Q,J){if(!Q||Q===!1)return!1;if(Q.isIdentity)return!1;if(!Q.isValid())return!1;let Z=Q.mult(J.r);return!!Z&&Z.isIdentity}return V.deserialize=function(Q){let J=["elGamal","ecdsa"];if(!Q||!Q.curve||!V.curves[Q.curve])return console.warn("[crypto] INVALID: ecc: invalid serialization"),!1;if(J.indexOf(Q.type)===-1)return console.warn("[crypto] INVALID: ecc: invalid type"),!1;let Z=V.curves[Q.curve];if(Q.secretKey){if(!Q.exponent)return console.warn("[crypto] INVALID: ecc: invalid exponent"),!1;let N=new j.bn(Q.exponent);return new V[Q.type].secretKey(Z,N)}if(!Q.point)return console.warn("[crypto] INVALID: ecc: invalid point"),!1;let W=A.ui8_to_ba(P.toBytes(Q.point));if(!F(W,Z))return console.warn("[crypto] INVALID: ecc: x or y coordinate out of field range"),!1;let I=Z.fromBits(W);if(I===!1)return!1;if(!$(I,Z))return console.warn("[crypto] INVALID: ecc: public key not in the main subgroup (n·Q != O)"),!1;return new V[Q.type].publicKey(Z,I)},V.basicKey={publicKey:function(Q,J){if(this._curve=Q,this._curveBitLength=Q.r.bitLength(),J instanceof Array)this._point=Q.fromBits(J);else this._point=J;this.serialize=function(){let Z=V.curveName(Q);return{type:this.getType(),secretKey:!1,point:P.fromBytes(A.ba_to_ui8(this._point.toBits())),curve:Z}},this.get=function(){let Z=this._point.toBits(),W=A.bitLength(Z),I=A.bitSlice(Z,0,W/2),N=A.bitSlice(Z,W/2);return{x:I,y:N}}},secretKey:function(Q,J){this._curve=Q,this._curveBitLength=Q.r.bitLength(),this._exponent=J,this.serialize=function(){let Z=this.get(),W=V.curveName(Q);return{type:this.getType(),secretKey:!0,exponent:P.fromBytes(A.ba_to_ui8(Z)),curve:W}},this.get=function(){return this._exponent.toBits()}}},V.basicKey.generateKeys=function(Q){return function(Z,W,I){if(Z=Z||256,typeof Z==="number"){if(Z=V.curves["c"+Z],Z===void 0)return console.warn("[crypto] INVALID: ecc: no such curve"),!1}I=I||j.random(Z.r,W);let N=Z.G.mult(I);return{pub:new V[Q].publicKey(Z,N),sec:new V[Q].secretKey(Z,I)}}},V.elGamal={generateKeys:V.basicKey.generateKeys("elGamal"),publicKey:function(Q,J){V.basicKey.publicKey.apply(this,arguments)},secretKey:function(Q,J){V.basicKey.secretKey.apply(this,arguments)}},V.elGamal.publicKey.prototype={kem(Q,J=256){let Z=j.random(this._curve.r,Q),W=this._curve.G.mult(Z).toBits();return{key:(M[J]||H).hash(this._point.mult(Z).toBits()),tag:W}},getType(){return"elGamal"}},V.elGamal.secretKey.prototype={unkem(Q,J=256){return(M[J]||H).hash(this._curve.fromBits(Q).mult(this._exponent).toBits())},dh(Q,J=256){return(M[J]||H).hash(Q._point.mult(this._exponent).toBits())},dhJavaEc(Q){return Q._point.mult(this._exponent).x.toBits()},getType(){return"elGamal"}},V.ecdsa={generateKeys:V.basicKey.generateKeys("ecdsa")},V.ecdsa.publicKey=function(Q,J){V.basicKey.publicKey.apply(this,arguments)},V.ecdsa.publicKey.prototype={verify(Q,J,Z){let W=null,I;if(Z&&typeof Z==="object")W=Z,I=!!W.fakeLegacyVersion;else I=!!Z;let N=!!(W&&W.strict);if(A.bitLength(Q)>this._curveBitLength)Q=A.clamp(Q,this._curveBitLength);let S=this._curve.r,B=this._curveBitLength,x=j.fromBits(A.bitSlice(J,0,B)),v=j.fromBits(A.bitSlice(J,B,2*B)),E=I?v:v.inverseMod(S),T=j.fromBits(Q).mul(E).mod(S),_=x.mul(E).mod(S),w=this._curve.G.mult2(T,_,this._point).x;if(x.equals(0)||v.equals(0)||x.greaterEquals(S)||v.greaterEquals(S)||!w.equals(x))return console.error("[crypto] CORRUPT: ecdsa: signature did not verify"),!1;if(N){let h=S.copy().halveM().add(new j.bn(1));if(v.greaterEquals(h))return console.error("[crypto] CORRUPT: ecdsa: signature is malleable (s > n/2) under strict mode"),!1}return!0},getType(){return"ecdsa"}},V.ecdsa.secretKey=function(Q,J){V.basicKey.secretKey.apply(this,arguments)},V.ecdsa.secretKey.prototype={sign(Q,J,Z,W){let I=null;if(J&&typeof J==="object")I=J,J=I.paranoia,Z=I.fakeLegacyVersion,W=I.fixedKForTesting;let N=I?I.deterministic!==!1:!0,S=I?I.hashForK:null,B=!!(I&&I.strict);if(A.bitLength(Q)>this._curveBitLength)Q=A.clamp(Q,this._curveBitLength);let x=this._curve.r,v=x.bitLength(),E;if(W)E=W;else if(N){let h=S||Y(this._curveBitLength);E=K(Q,this._exponent,x,h)}else E=j.random(x.sub(1),J).add(1);let T=this._curve.G.mult(E).x.mod(x),_=j.fromBits(Q).add(T.mul(this._exponent)),w=Z?_.inverseMod(x).mul(E).mod(x):_.mul(E.inverseMod(x)).mod(x);if(B){let h=x.copy().halveM().add(new j.bn(1));if(w.greaterEquals(h))w=x.sub(w).normalize()}return A.concat(T.toBits(v),w.toBits(v))},getType(){return"ecdsa"}},V._internal={coordsInRange:F,isInSubgroup:$,isValidPublicKey(Q,J){let Z=V.curves[Q];if(!Z)return!1;let W=A.ui8_to_ba(P.toBytes(J));if(!F(W,Z))return!1;let I=Z.fromBits(W);if(I===!1)return!1;return $(I,Z)}},V}}),a({name:"ed25519",dependencies:["sha512","bitArray"],factory:function(A,P){function j(k){let c=new Float64Array(16);if(k)for(let f=0;f<k.length;f++)c[f]=k[f];return c}let H=j(),D=j([1]),R=j([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),O=j([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),M=j([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),Y=j([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),G=j([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function X(k){for(let c=0;c<16;c++){k[c]+=65536;let f=Math.floor(k[c]/65536);k[(c+1)*(c<15?1:0)]+=f-1+37*(f-1)*(c===15?1:0),k[c]-=f*65536}}function U(k,c,f){let m=~(f-1);for(let u=0;u<16;u++){let o=m&(k[u]^c[u]);k[u]^=o,c[u]^=o}}function z(k,c){let f=j(),m=j();for(let u=0;u<16;u++)m[u]=c[u];X(m),X(m),X(m);for(let u=0;u<2;u++){f[0]=m[0]-65517;for(let $0=1;$0<15;$0++)f[$0]=m[$0]-65535-(f[$0-1]>>16&1),f[$0-1]&=65535;f[15]=m[15]-32767-(f[14]>>16&1);let o=f[15]>>16&1;f[14]&=65535,U(m,f,1-o)}for(let u=0;u<16;u++)k[2*u]=m[u]&255,k[2*u+1]=m[u]>>8}function q(k,c){let f=new Uint8Array(32),m=new Uint8Array(32);z(f,k),z(m,c);let u=0;for(let o=0;o<32;o++)u|=f[o]^m[o];return(1&u-1>>>8)-1}function C(k){let c=new Uint8Array(32);return z(c,k),c[0]&1}function K(k,c){for(let f=0;f<16;f++)k[f]=c[2*f]+(c[2*f+1]<<8);k[15]&=32767}function V(k,c,f){for(let m=0;m<16;m++)k[m]=c[m]+f[m]}function F(k,c,f){for(let m=0;m<16;m++)k[m]=c[m]-f[m]}function $(k,c,f){let m=new Float64Array(31);for(let u=0;u<16;u++)for(let o=0;o<16;o++)m[u+o]+=c[u]*f[o];for(let u=0;u<15;u++)m[u]+=38*m[u+16];for(let u=0;u<16;u++)k[u]=m[u];X(k),X(k)}function Q(k,c){$(k,c,c)}function J(k,c){let f=j();for(let m=0;m<16;m++)f[m]=c[m];for(let m=253;m>=0;m--)if(Q(f,f),m!==2&&m!==4)$(f,f,c);for(let m=0;m<16;m++)k[m]=f[m]}function Z(k,c){let f=j();for(let m=0;m<16;m++)f[m]=c[m];for(let m=250;m>=0;m--)if(Q(f,f),m!==1)$(f,f,c);for(let m=0;m<16;m++)k[m]=f[m]}function W(k,c){for(let f=0;f<16;f++)k[f]=c[f]}function I(k,c){let f=j(),m=j(),u=j(),o=j(),$0=j(),s=j(),V0=j(),X0=j(),I0=j();F(f,k[1],k[0]),F(I0,c[1],c[0]),$(f,f,I0),V(m,k[0],k[1]),V(I0,c[0],c[1]),$(m,m,I0),$(u,k[3],c[3]),$(u,u,O),$(o,k[2],c[2]),V(o,o,o),F($0,m,f),F(s,o,u),V(V0,o,u),V(X0,m,f),$(k[0],$0,s),$(k[1],X0,V0),$(k[2],V0,s),$(k[3],$0,X0)}function N(k,c,f){for(let m=0;m<4;m++)U(k[m],c[m],f)}function S(k,c){let f=j(),m=j(),u=j();J(u,c[2]),$(f,c[0],u),$(m,c[1],u),z(k,m),k[31]^=C(f)<<7}function B(k,c,f){W(k[0],H),W(k[1],D),W(k[2],D),W(k[3],H);for(let m=255;m>=0;--m){let u=f[m/8|0]>>(m&7)&1;N(k,c,u),I(c,k),I(k,k),N(k,c,u)}}function x(k,c){let f=[j(),j(),j(),j()];W(f[0],M),W(f[1],Y),W(f[2],D),$(f[3],M,Y),B(k,f,c)}let v=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function E(k,c){let f,m,u;for(m=63;m>=32;--m){f=0;for(u=m-32;u<m-12;u++)c[u]+=f-16*c[m]*v[u-(m-32)],f=Math.floor((c[u]+128)/256),c[u]-=f*256;c[u]+=f,c[m]=0}f=0;for(u=0;u<32;u++)c[u]+=f-(c[31]>>4)*v[u],f=c[u]>>8,c[u]&=255;for(u=0;u<32;u++)c[u]-=f*v[u];for(m=0;m<32;m++)c[m+1]+=c[m]>>8,k[m]=c[m]&255}function T(k){let c=new Float64Array(64);for(let f=0;f<64;f++)c[f]=k[f];for(let f=0;f<64;f++)k[f]=0;E(k,c)}function _(...k){let c=0;for(let o of k)c+=o.length;let f=new Uint8Array(c),m=0;for(let o of k)f.set(o,m),m+=o.length;let u=P.ui8_to_ba(f);return P.ba_to_ui8(A.hash(u))}let w=new Uint8Array([83,105,103,69,100,50,53,53,49,57,32,110,111,32,69,100,50,53,53,49,57,32,99,111,108,108,105,115,105,111,110,115]);function h(k,c){let f=c?c.length:0;if(f>255)return console.warn("[crypto] INVALID: ed25519: context must be ≤ 255 bytes"),!1;let m=new Uint8Array(34+f);if(m.set(w,0),m[32]=k&255,m[33]=f&255,f>0)m.set(c,34);return m}function l(k){let c=_(k);c[0]&=248,c[31]&=127,c[31]|=64;let f=[j(),j(),j(),j()],m=new Uint8Array(32);x(f,c),S(m,f);let u=new Uint8Array(64);return u.set(k,0),u.set(m,32),{publicKey:m,privateKey:u}}function y(k){if(!(k instanceof Uint8Array)||k.length!==32)return console.warn("[crypto] INVALID: ed25519: seed must be 32 bytes"),!1;return l(k)}function d(k,c,f){if(!(k instanceof Uint8Array)||k.length!==64)return console.warn("[crypto] INVALID: ed25519: privateKey must be 64 bytes (seed || pub)"),!1;let m=k.subarray(0,32),u=k.subarray(32,64),o=_(m);o[0]&=248,o[31]&=127,o[31]|=64;let $0=o.subarray(32,64),s=f?_(f,$0,c):_($0,c);T(s);let V0=[j(),j(),j(),j()];x(V0,s);let X0=new Uint8Array(32);S(X0,V0);let I0=f?_(f,X0,u,c):_(X0,u,c);T(I0);let F0=new Uint8Array(32),u0=new Float64Array(64);for(let t=0;t<32;t++)u0[t]=s[t];for(let t=0;t<32;t++)for(let G0=0;G0<32;G0++)u0[t+G0]+=I0[t]*o[G0];E(F0,u0);let f0=new Uint8Array(64);return f0.set(X0,0),f0.set(F0,32),f0}function n(k,c){return d(k,c,null)}function i(k,c,f){let m=h(1,f);if(m===!1)return!1;let u=_(c);return d(k,u,m)}function Y0(k,c,f){if(!(f instanceof Uint8Array)||f.length===0||f.length>255)return console.warn("[crypto] INVALID: ed25519: signCtx context must be 1..255 bytes (use sign() for empty context)"),!1;let m=h(0,f);if(m===!1)return!1;return d(k,c,m)}function H0(k,c){let f=j(),m=j(),u=j(),o=j(),$0=j(),s=j(),V0=j();if(W(k[2],D),K(k[1],c),Q(u,k[1]),$(o,u,R),F(u,u,k[2]),V(o,k[2],o),Q($0,o),Q(s,$0),$(V0,s,$0),$(f,V0,u),$(f,f,o),Z(f,f),$(f,f,u),$(f,f,o),$(f,f,o),$(k[0],f,o),Q(m,k[0]),$(m,m,o),q(m,u))$(k[0],k[0],G);if(Q(m,k[0]),$(m,m,o),q(m,u))return-1;if(C(k[0])===c[31]>>7)F(k[0],H,k[0]);return $(k[3],k[0],k[1]),0}let z0=new Uint8Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function P0(k){let c=0,f=0;for(let m=31;m>=0;m--){let u=k[m]|0,o=z0[m]|0,$0=u-o>>>31&1,s=o-u>>>31&1;c|=$0&1-f,f|=s&1-c}return c===1}function w0(k,c,f,m){if(!(k instanceof Uint8Array)||k.length!==32)return!1;if(!(f instanceof Uint8Array)||f.length!==64)return!1;if(!P0(f.subarray(32,64)))return!1;let u=[j(),j(),j(),j()];if(H0(u,k)!==0)return!1;let o=f.subarray(0,32),$0=m?_(m,o,k,c):_(o,k,c);T($0);let s=[j(),j(),j(),j()];B(s,u,$0);let V0=[j(),j(),j(),j()];x(V0,f.subarray(32,64)),I(s,V0);let X0=new Uint8Array(32);S(X0,s);let I0=0;for(let F0=0;F0<32;F0++)I0|=f[F0]^X0[F0];return I0===0}function Q0(k,c,f){return w0(k,c,f,null)}function e(k,c,f,m){let u=h(1,m);if(u===!1)return!1;let o=_(c);return w0(k,o,f,u)}function Z0(k,c,f,m){if(!(m instanceof Uint8Array)||m.length===0||m.length>255)return console.warn("[crypto] INVALID: ed25519: verifyCtx context must be 1..255 bytes"),!1;let u=h(0,m);if(u===!1)return!1;return w0(k,c,f,u)}function U0(k){return console.warn("[crypto] NOT-IMPLEMENTED: ed25519: Ed448 (FIPS 186-5 §7.7 / RFC 8032 §5.2) is a separate curve (edwards448 + SHAKE-256, 57-byte pk / 114-byte sig) and is NOT implemented in this module. Use Ed25519 ("+k+"() instead) or implement a separate ed448.js module if Ed448 is required for CMVP / interop."),!1}return{keyPair:y,sign:n,verify:Q0,signPh:i,verifyPh:e,signCtx:Y0,verifyCtx:Z0,ed448:{keyPair:()=>U0("keyPair"),sign:()=>U0("sign"),verify:()=>U0("verify"),signPh:()=>U0("signPh"),verifyPh:()=>U0("verifyPh")},_internal:{isValidPublicKey(k){if(!(k instanceof Uint8Array)||k.length!==32)return!1;let c=[j(),j(),j(),j()];return H0(c,k)===0},dom2:h}}}}),a({name:"pdfErrors",dependencies:[],factory:function(){class A extends Error{constructor(O,M,Y){super(M);if(this.name=new.target.name,this.code=O,Y&&Y.context)this.context=Y.context;if(Y&&Y.cause)this.cause=Y.cause}}class P extends A{}class j extends A{}class H extends A{}class D extends A{}function R(O){return O instanceof A}return{PdfError:A,ParseError:P,RenderError:j,ContractError:H,EncryptionError:D,isPdfError:R}}}),a({name:"pdfShared",dependencies:[],factory:function(){let A=new Uint8Array([37,80,68,70,45]),P=new Uint8Array([37,37,69,79,70]),j=new Uint8Array([37,226,227,207,211,10]),H=Object.freeze({NUL:0,HT:9,LF:10,FF:12,CR:13,SP:32,HASH:35,PERCENT:37,LPAREN:40,RPAREN:41,PLUS:43,MINUS:45,DOT:46,SLASH:47,ZERO:48,NINE:57,LANGLE:60,RANGLE:62,A_UP:65,F_UP:70,Z_UP:90,LBRACK:91,BACKSLASH:92,RBRACK:93,A_LO:97,F_LO:102,Z_LO:122,LBRACE:123,RBRACE:125});function D(N){return N===32||N===9||N===10||N===13||N===12||N===0}function R(N){return N===10||N===13}function O(N){return N>=48&&N<=57}function M(N){return N>=48&&N<=57||N>=65&&N<=70||N>=97&&N<=102}function Y(N){return N===40||N===41||N===60||N===62||N===91||N===93||N===47||N===37||N===123||N===125}function G(N){return!D(N)&&!Y(N)}function X(N){if(N>=48&&N<=57)return N-48;if(N>=65&&N<=70)return N-65+10;if(N>=97&&N<=102)return N-97+10;return-1}let U=function(){let S=new Int8Array(128);S.fill(-1);for(let B=48;B<=57;B++)S[B]=B-48;for(let B=65;B<=70;B++)S[B]=B-65+10;for(let B=97;B<=102;B++)S[B]=B-97+10;return S}(),z=new TextEncoder,q=new TextDecoder("utf-8"),C=new TextDecoder("utf-8",{fatal:!1}),K=new TextDecoder("latin1");function V(N){return z.encode(N)}function F(N){return q.decode(N)}function $(N){return C.decode(N)}function Q(N){return K.decode(N)}function J(N){return String(N).padStart(10,"0")}function Z(N){let S="<";for(let B=0;B<N.length;B++)S+="0123456789ABCDEF"[N[B]>>4]+"0123456789ABCDEF"[N[B]&15];return S+">"}function W(N,S,B){if(!N||!S)return!1;if(B==null){if(N.length!==S.length)return!1;B=N.length}else if(N.length<B||S.length<B)return!1;let x=0;for(let v=0;v<B;v++)x|=N[v]^S[v];return x===0}function I(N){let S=0;for(let v of N)S+=v.length;let B=new Uint8Array(S),x=0;for(let v of N)B.set(v,x),x+=v.length;return B}return{HEADER_PREFIX:A,EOF_MARKER:P,BINARY_MARKER:j,ASCII:H,isWs:D,isEol:R,isDigit:O,isHex:M,isDelim:Y,isRegular:G,hexNibble:X,HEX_LO:U,te:z,tdUtf8:q,tdUtf8Lenient:C,tdLatin1:K,encodeAscii:V,decodeUtf8:F,decodeUtf8Lenient:$,decodeLatin1:Q,pad10:J,hexLit:Z,bytesEqual:W,concatBytes:I}}}),a({name:"pdfTokenizer",dependencies:["pdfErrors","pdfShared"],factory:function(A,P){let{ParseError:j}=A,{ASCII:H,isWs:D,isEol:R,isDigit:O,isRegular:M,hexNibble:Y}=P,{HT:G,LF:X,CR:U,FF:z,LPAREN:q,RPAREN:C,LANGLE:K,RANGLE:V,LBRACK:F,RBRACK:$,SLASH:Q,PERCENT:J,BACKSLASH:Z,PLUS:W,MINUS:I,DOT:N,ZERO:S,HASH:B}=H;function x(E,T){if(!(E instanceof Uint8Array))throw new j("pdf/tokenizer/bad-input","tokenize() expects a Uint8Array",{context:{typeof:typeof E}});let _=!!(T&&T.keepWhitespace),w=T&&T.start|0||0,h=T&&Number.isFinite(T.end)?Math.min(T.end|0,E.length):E.length,l=null;function y(){return w}function d(Q0){if(Q0<0||Q0>E.length)throw new j("pdf/tokenizer/bad-seek","seek out of range",{context:{offset:Q0,total:E.length}});w=Q0,l=null}function n(){let Q0=w;w++;let e=[];while(w<h){let Z0=E[w];if(!M(Z0))break;if(Z0===B){if(w+2>=h)throw new j("pdf/tokenizer/bad-name-escape","truncated #xx escape in name",{context:{offset:w}});let U0=Y(E[w+1]),k=Y(E[w+2]);if(U0<0||k<0)throw new j("pdf/tokenizer/bad-name-escape","invalid hex digits in name escape",{context:{offset:w}});e.push(U0<<4|k),w+=3}else e.push(Z0),w++}return{kind:"name",value:new TextDecoder("utf-8",{fatal:!1}).decode(Uint8Array.from(e)),offset:Q0,end:w}}function i(){let Q0=w,e=!1;if(E[w]===W||E[w]===I)w++;while(w<h){let k=E[w];if(O(k)){w++;continue}if(k===N&&!e){e=!0,w++;continue}break}let Z0=new TextDecoder("latin1").decode(E.subarray(Q0,w));if(Z0===""||Z0==="+"||Z0==="-"||Z0===".")throw new j("pdf/tokenizer/bad-number","empty number token",{context:{offset:Q0}});let U0=Number(Z0);if(!Number.isFinite(U0))throw new j("pdf/tokenizer/bad-number","cannot parse number",{context:{raw:Z0,offset:Q0}});return{kind:e?"real":"int",value:U0,offset:Q0,end:w,raw:Z0}}function Y0(){let Q0=w;w++;let e=[],Z0=1;while(w<h&&Z0>0){let U0=E[w];if(U0===q){Z0++,e.push(U0),w++;continue}if(U0===C){if(Z0--,Z0===0){w++;break}e.push(U0),w++;continue}if(U0===Z){if(w+1>=h)throw new j("pdf/tokenizer/bad-string","trailing backslash in literal string",{context:{offset:w}});let k=E[w+1];if(k===X){w+=2;continue}if(k===U){if(w+=2,w<h&&E[w]===X)w++;continue}if(k===110){e.push(X),w+=2;continue}if(k===114){e.push(U),w+=2;continue}if(k===116){e.push(G),w+=2;continue}if(k===98){e.push(8),w+=2;continue}if(k===102){e.push(z),w+=2;continue}if(k===q||k===C||k===Z){e.push(k),w+=2;continue}if(k>=S&&k<=S+7){let c=0,f=0;w++;while(f<3&&w<h&&E[w]>=S&&E[w]<=S+7)c=c<<3|E[w]-S,w++,f++;e.push(c&255);continue}w++;continue}if(U0===U){if(e.push(X),w++,w<h&&E[w]===X)w++;continue}e.push(U0),w++}if(Z0!==0)throw new j("pdf/tokenizer/unterminated-string","literal string was not closed",{context:{offset:Q0}});return{kind:"string",value:Uint8Array.from(e),offset:Q0,end:w}}function H0(){let Q0=w;w++;let e=[];while(w<h){let U0=E[w];if(U0===V){w++;break}if(D(U0)){w++;continue}let k=Y(U0);if(k<0)throw new j("pdf/tokenizer/bad-hex","non-hex byte in hex string",{context:{offset:w,byte:U0}});e.push(k),w++}if(e.length%2===1)e.push(0);let Z0=new Uint8Array(e.length/2);for(let U0=0;U0<Z0.length;U0++)Z0[U0]=e[2*U0]<<4|e[2*U0+1];return{kind:"hex",value:Z0,offset:Q0,end:w}}function z0(){let Q0=w;while(w<h&&M(E[w]))w++;let e=new TextDecoder("latin1").decode(E.subarray(Q0,w));if(e==="")throw new j("pdf/tokenizer/empty-keyword","empty keyword",{context:{offset:Q0}});return{kind:"kw",value:e,offset:Q0,end:w}}function P0(){if(l){let e=l;return l=null,e}while(w<h){let e=E[w];if(D(e)){if(_){let Z0=w;while(w<h&&D(E[w]))w++;return{kind:"ws",offset:Z0,end:w}}w++;continue}if(e===J){if(w+4<h&&E[w+1]===J&&E[w+2]===69&&E[w+3]===79&&E[w+4]===70){let Z0=w;return w+=5,{kind:"eof_marker",offset:Z0,end:w}}while(w<h&&!R(E[w]))w++;if(w<h&&E[w]===U)w++;if(w<h&&E[w]===X)w++;continue}break}if(w>=h)return null;let Q0=E[w];if(Q0===Q)return n();if(Q0===F)return{kind:"open_arr",offset:w++,end:w};if(Q0===$)return{kind:"close_arr",offset:w++,end:w};if(Q0===K){if(w+1<h&&E[w+1]===K){let e=w;return w+=2,{kind:"open_dict",offset:e,end:w}}return H0()}if(Q0===V){if(w+1<h&&E[w+1]===V){let e=w;return w+=2,{kind:"close_dict",offset:e,end:w}}throw new j("pdf/tokenizer/unexpected-rangle","lone > outside hex string",{context:{offset:w}})}if(Q0===q)return Y0();if(Q0===W||Q0===I||Q0===N||O(Q0))return i();return z0()}function w0(){if(!l)l=P0();return l}return{next:P0,peek:w0,pos:y,seek:d,bytes:E}}function v(E,T,_){let w=E.length,h=T.length;if(h===0||h>w)return-1;let l=Number.isFinite(_)?Math.min(_|0,w-h):w-h;$:for(let y=l;y>=0;y--){for(let d=0;d<h;d++)if(E[y+d]!==T[d])continue $;return y}return-1}return{tokenize:x,lastIndexOfBytes:v}}}),a({name:"pdfParserObj",dependencies:[],factory:function(){let A={nul:()=>({type:"null"}),bool:(H)=>({type:"bool",value:!!H}),int:(H)=>({type:"int",value:H|0}),real:(H)=>({type:"real",value:+H}),name:(H)=>({type:"name",value:String(H)}),string:(H,D)=>({type:"string",value:H,syntax:D==="hex"?"hex":"lit"}),array:(H)=>({type:"array",items:H||[]}),dict:(H)=>({type:"dict",entries:H||{}}),ref:(H,D)=>({type:"ref",num:H|0,gen:D|0||0}),stream:(H,D)=>({type:"stream",dict:H,raw:D})};function P(H,D){if(!H||H.type!=="dict")return;return H.entries[D]}function j(H,D){return!!(H&&H.type===D)}return{obj:A,getEntry:P,isType:j}}}),a({name:"pdfParser",dependencies:["pdfErrors","pdfParserObj","pdfTokenizer"],factory:function(A,P,j){let{ParseError:H}=A,{obj:D,getEntry:R,isType:O}=P,M=j.tokenize;function Y(Z,W){let I=Z.entries&&Z.entries.Length;if(!I)return-1;if(I.type==="int")return I.value;if(I.type==="ref"&&typeof W==="function"){let N=W(I);if(N&&N.type==="int")return N.value}return-1}function G(Z,W,I){let N=[101,110,100,115,116,114,101,97,109],S=Math.min(Z.length,W+(I|0));$:for(let B=W;B+N.length<=S;B++){for(let v=0;v<N.length;v++)if(Z[B+v]!==N[v])continue $;let x=B;if(x>W&&Z[x-1]===10)x--;if(x>W&&Z[x-1]===13)x--;return x}return-1}function X(Z){let W=Z.bytes,I=Z.pos();while(I<W.length){let N=W[I];if(N===32||N===9||N===10||N===13)I++;else break}Z.seek(I)}let U={maxDepth:200,maxArrayLen:1e6,maxStreamBytes:268435456};function z(Z){if(Z&&typeof Z==="object"){if(Number.isInteger(Z.maxDepth)&&Z.maxDepth>0)U.maxDepth=Z.maxDepth;if(Number.isInteger(Z.maxArrayLen)&&Z.maxArrayLen>0)U.maxArrayLen=Z.maxArrayLen;if(Number.isInteger(Z.maxStreamBytes)&&Z.maxStreamBytes>0)U.maxStreamBytes=Z.maxStreamBytes}return U}function q(Z){let W=Z.next();if(!W)throw new H("pdf/parser/eof","unexpected end of input");return C(Z,W,0)}function C(Z,W,I){if(I>U.maxDepth)throw new H("pdf/parser/depth-exceeded","parser depth limit exceeded",{context:{depth:I,limit:U.maxDepth,offset:W&&W.offset}});switch(W.kind){case"kw":if(W.value==="null")return{type:"null"};if(W.value==="true")return{type:"bool",value:!0};if(W.value==="false")return{type:"bool",value:!1};throw new H("pdf/parser/unexpected-keyword",`unexpected keyword "${W.value}"`,{context:{offset:W.offset,keyword:W.value}});case"name":return{type:"name",value:W.value};case"string":return{type:"string",value:W.value,syntax:"lit"};case"hex":return{type:"string",value:W.value,syntax:"hex"};case"int":return K(Z,W);case"real":return{type:"real",value:W.value};case"open_arr":return V(Z,W.offset,I);case"open_dict":return F(Z,W.offset,I);case"close_arr":case"close_dict":throw new H("pdf/parser/unbalanced",`unexpected ${W.kind}`,{context:{offset:W.offset}});default:throw new H("pdf/parser/unexpected-token",`unexpected token of kind "${W.kind}"`,{context:{offset:W.offset,kind:W.kind}})}}function K(Z,W){let I=Z.pos(),N=Z.peek();if(!N||N.kind!=="int")return{type:"int",value:W.value};Z.next();let S=Z.peek();if(S&&S.kind==="kw"&&S.value==="R")return Z.next(),{type:"ref",num:W.value|0,gen:N.value|0};return Z.seek(I),{type:"int",value:W.value}}function V(Z,W,I){let N=[];for(;;){let S=Z.peek();if(!S)throw new H("pdf/parser/unterminated-array","array not closed",{context:{offset:W}});if(S.kind==="close_arr")return Z.next(),{type:"array",items:N};if(N.length>=U.maxArrayLen)throw new H("pdf/parser/array-too-long","array exceeds parserLimits.maxArrayLen",{context:{length:N.length,limit:U.maxArrayLen,offset:W}});let B=Z.next();N.push(C(Z,B,(I|0)+1))}}function F(Z,W,I){let N={};for(;;){let S=Z.peek();if(!S)throw new H("pdf/parser/unterminated-dict","dict not closed",{context:{offset:W}});if(S.kind==="close_dict")return Z.next(),{type:"dict",entries:N};if(S.kind!=="name")throw new H("pdf/parser/dict-key-not-name","expected /Name as dict key",{context:{offset:S.offset,kind:S.kind}});let B=Z.next(),x=Z.next();if(!x)throw new H("pdf/parser/eof","unexpected end of input");let v=C(Z,x,(I|0)+1);N[B.value]=v}}function $(Z,W){let I=Z.next();if(!I||I.kind!=="int")throw new H("pdf/parser/indirect-bad-num","expected object number",{context:{offset:I?I.offset:Z.pos()}});let N=Z.next();if(!N||N.kind!=="int")throw new H("pdf/parser/indirect-bad-gen","expected generation number",{context:{offset:N?N.offset:Z.pos()}});let S=Z.next();if(!S||S.kind!=="kw"||S.value!=="obj")throw new H("pdf/parser/indirect-missing-obj","expected obj keyword",{context:{offset:S?S.offset:Z.pos()}});let B=q(Z),x=B,v=Z.peek();if(B.type==="dict"&&v&&v.kind==="kw"&&v.value==="stream"){Z.next();let T=Z.bytes,_=Z.pos();if(_<T.length&&T[_]===13)_++;if(_<T.length&&T[_]===10)_++;Z.seek(_);let w=Z.pos(),h=Y(B,W),l;if(Number.isFinite(h)&&h>=0&&w+h<=T.length)l=w+h;else if(l=G(T,w,U.maxStreamBytes),l<0)throw new H("pdf/parser/stream/no-endstream","cannot locate endstream within quota",{context:{offset:w,num:I.value,gen:N.value,quota:U.maxStreamBytes}});let y=T.subarray(w,l);Z.seek(l),X(Z);let d=Z.next();if(!d||d.kind!=="kw"||d.value!=="endstream")throw new H("pdf/parser/stream/expected-endstream","expected endstream",{context:{offset:d?d.offset:Z.pos()}});x={type:"stream",dict:B,raw:y}}let E=Z.next();if(!E||E.kind!=="kw"||E.value!=="endobj")throw new H("pdf/parser/indirect-missing-endobj","expected endobj",{context:{offset:E?E.offset:Z.pos(),num:I.value,gen:N.value}});return{num:I.value,gen:N.value,value:x}}function Q(Z){let W=M(Z);return q(W)}function J(Z,W,I){let N=M(Z,{start:W|0});return $(N,I)}return{tokenize:M,parseObject:q,parseIndirect:$,parseFromBytes:Q,parseIndirectFromBytes:J,parserLimits:U,setParserLimits:z,obj:D,getEntry:R,isType:O}}}),a({name:"pdfXref",dependencies:["pdfErrors","pdfTokenizer","pdfParser"],factory:function(A,P,j){let{ParseError:H,RenderError:D}=A,R=P.tokenize,O=P.lastIndexOfBytes,M=j.parseObject;function Y($){let Q=Math.max(0,$.length-8192),J=O($,new Uint8Array([115,116,97,114,116,120,114,101,102]),$.length);if(J<Q)return-1;return J}function G($,Q){let J=R($,{start:Q}),Z=J.next();if(!Z||Z.kind!=="kw"||Z.value!=="startxref")throw new H("pdf/xref/no-startxref","startxref keyword not found",{context:{offset:Q}});let W=J.next();if(!W||W.kind!=="int"||W.value<0)throw new H("pdf/xref/bad-startxref","startxref must be followed by a non-negative integer",{context:{offset:Q}});return W.value}function X($,Q,J){let Z=0;for(let W=0;W<J;W++){let I=$[Q+W];if(I<48||I>57)throw new H("pdf/xref/bad-digit","expected ASCII digit in xref entry",{context:{offset:Q+W,byte:I}});Z=Z*10+(I-48)}return Z}function U($,Q){let J=R($,{start:Q}),Z=J.next();if(!Z||Z.kind!=="kw"||Z.value!=="xref")throw new H("pdf/xref/no-xref-keyword","expected xref keyword",{context:{offset:Q}});let W={};for(;;){let I=J.peek();if(!I||I.kind!=="int"){if(I)J.seek(I.offset);break}J.next();let N=J.next();if(!N||N.kind!=="int"||N.value<0)throw new H("pdf/xref/bad-subsection-header","xref subsection header must be `<first> <count>`",{context:{offset:I.offset}});let S=J.pos();if(S<$.length&&$[S]===13)S++;if(S<$.length&&$[S]===10)S++;for(let B=0;B<N.value;B++){if(S+20>$.length)throw new H("pdf/xref/truncated-entry","truncated xref entry",{context:{offset:S,expected:20}});let x=X($,S,10);if($[S+10]!==32)throw new H("pdf/xref/bad-entry-format","xref entry missing space at col 10",{context:{offset:S}});let v=X($,S+11,5);if($[S+16]!==32)throw new H("pdf/xref/bad-entry-format","xref entry missing space at col 16",{context:{offset:S}});let E=$[S+17];if(E!==110&&E!==102)throw new H("pdf/xref/bad-entry-flag","xref entry flag must be n or f",{context:{offset:S,byte:E}});W[I.value+B]={offset:x,gen:v,free:E===102},S+=20}J.seek(S)}return{entries:W,end:J.pos()}}function z($,Q){let J=R($,{start:Q}),Z=J.next();if(!Z||Z.kind!=="kw"||Z.value!=="trailer")throw new H("pdf/xref/no-trailer","expected trailer keyword",{context:{offset:Q}});let W=M(J);if(W.type!=="dict")throw new H("pdf/xref/trailer-not-dict","trailer must be a dictionary",{context:{offset:Q}});return{dict:W,end:J.pos()}}function q($,Q){let J=(x)=>new H("pdf/xref/not-xref-stream",`no cross-reference stream at offset ${Q}: ${x}`,{context:{offset:Q}});if(!Number.isInteger(Q)||Q<0||Q>=$.length)throw J("offset outside the file");let Z,W,I,N,S;try{let x=R($,{start:Q});if(Z=x.next(),W=x.next(),I=x.next(),!Z||Z.kind!=="int"||!W||W.kind!=="int"||!I||I.kind!=="kw"||I.value!=="obj")throw J("no indirect object header");N=M(x),S=x.peek()}catch(x){if(x&&x.code==="pdf/xref/not-xref-stream")throw x;throw J("the object does not parse")}let B=N&&N.type==="dict"&&N.entries.Type;if(!B||B.type!=="name"||B.value!=="XRef"||!S||S.kind!=="kw"||S.value!=="stream")throw J("the object is not a /Type /XRef stream");return{num:Z.value,gen:W.value,dict:N}}function C($){let Q=1;while($>255)$=Math.floor($/256),Q++;return Q}function K($){let Q="<";for(let J=0;J<$.length;J++)Q+="0123456789ABCDEF"[$[J]>>4]+"0123456789ABCDEF"[$[J]&15];return Q+">"}function V($){return!!$&&Number.isInteger($.num)&&$.num>=1}function F($){let Q=(l)=>new D("pdf/xref/bad-stream-section",`cannot build the cross-reference stream: ${l}`);if(!$||!Number.isInteger($.num)||$.num<1)throw Q("num must be an integer >= 1");if(!Number.isInteger($.offset)||$.offset<0)throw Q("offset must be an integer >= 0");if(!Number.isInteger($.prev)||$.prev<0)throw Q("prev must be an integer >= 0");if(!V($.root))throw Q("root must be { num >= 1, gen }");if($.encrypt!=null&&!V($.encrypt))throw Q("encrypt must be an indirect reference { num >= 1, gen }");let J=new Map;J.set(0,[0,0,65535]);for(let l of $.entries||[]){if(!l||!Number.isInteger(l.num)||l.num<1||!Number.isInteger(l.offset)||l.offset<0)throw Q("each entry needs num >= 1 and offset >= 0");J.set(l.num,[1,l.offset,l.gen|0])}J.set($.num,[1,$.offset,0]);let Z=Array.from(J.keys()).sort((l,y)=>l-y),W=0,I=0;for(let l of J.values()){if(l[1]>W)W=l[1];if(l[2]>I)I=l[2]}let N=[1,C(W),C(I)],S=N[0]+N[1]+N[2],B=new Uint8Array(Z.length*S),x=0;for(let l of Z){let y=J.get(l),d=x;for(let n=0;n<3;n++){let i=y[n];for(let Y0=N[n]-1;Y0>=0;Y0--)B[d+Y0]=i&255,i=Math.floor(i/256);d+=N[n]}x+=S}let v=[];for(let l=0;l<Z.length;){let y=l;while(y+1<Z.length&&Z[y+1]===Z[y]+1)y++;v.push(`${Z[l]} ${y-l+1}`),l=y+1}let E=`<< /Type /XRef /Size ${Math.max($.num+1,Number.isInteger($.size)?$.size:0)} /W [${N.join(" ")}] /Index [${v.join(" ")}] /Root ${$.root.num} ${$.root.gen|0} R`;if(V($.info))E+=` /Info ${$.info.num} ${$.info.gen|0} R`;if($.id&&$.id[0]instanceof Uint8Array&&$.id[1]instanceof Uint8Array)E+=` /ID [${K($.id[0])}${K($.id[1])}]`;if(V($.encrypt))E+=` /Encrypt ${$.encrypt.num} ${$.encrypt.gen|0} R`;E+=` /Prev ${$.prev} /Length ${B.length} >>`;let T=new TextEncoder,_=T.encode(`${$.num} 0 obj
12
+ ${E}
13
+ stream
14
+ `),w=T.encode(`
15
+ endstream
16
+ endobj
17
+ `),h=new Uint8Array(_.length+B.length+w.length);return h.set(_,0),h.set(B,_.length),h.set(w,_.length+B.length),h}return{locateStartXref:Y,readStartXref:G,parseXrefTable:U,parseTrailerDict:z,readXrefStreamDict:q,buildXrefStream:F}}}),a({name:"pdfTrailer",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P;function D(R){if(!H(R,"dict"))throw new j("pdf/trailer/not-dict","trailer is not a dictionary",{context:{type:R&&R.type}});let O=R.entries,M=O.Size;if(!M||M.type!=="int"||M.value<0)throw new j("pdf/trailer/missing-size","trailer is missing required /Size entry",{context:{hasSize:!!M}});let Y=O.Root;if(!Y||Y.type!=="ref")throw new j("pdf/trailer/missing-root","trailer is missing required /Root indirect reference",{context:{hasRoot:!!Y,type:Y&&Y.type}});let G={size:M.value,root:{num:Y.num,gen:Y.gen},raw:R};if(O.Info&&O.Info.type==="ref")G.info={num:O.Info.num,gen:O.Info.gen};if(O.Prev&&O.Prev.type==="int")G.prev=O.Prev.value;if(O.Encrypt)G.encrypt=O.Encrypt.type==="ref"?{num:O.Encrypt.num,gen:O.Encrypt.gen}:O.Encrypt;if(O.ID&&O.ID.type==="array"&&O.ID.items.length===2&&O.ID.items[0].type==="string"&&O.ID.items[1].type==="string")G.id=[O.ID.items[0].value,O.ID.items[1].value];return G}return{typeTrailer:D}}}),a({name:"pdfSerializer",dependencies:["pdfErrors"],factory:function(A){let{RenderError:P}=A,j=new TextEncoder;function H(V){if(!V||typeof V.type!=="string")throw new P("pdf/serializer/bad-input","serializeObject expects a typed object",{context:{typeof:typeof V}});return C(O(V))}function D(V,F,$){if(!Number.isFinite(V)||V<0)throw new P("pdf/serializer/bad-num","object number must be a non-negative integer",{context:{num:V}});if(!Number.isFinite(F)||F<0)throw new P("pdf/serializer/bad-gen","generation number must be a non-negative integer",{context:{gen:F}});let Q=j.encode(`${V|0} ${F|0} obj
18
+ `),J=j.encode(`
19
+ endobj
20
+ `);if($&&$.type==="stream"){let Z=$.raw instanceof Uint8Array?$.raw:new Uint8Array(0),W={type:"dict",entries:{...($.dict||{type:"dict",entries:{}}).entries,Length:{type:"int",value:Z.length}}},I=C(O(W)),N=j.encode(`
21
+ stream
22
+ `),S=j.encode(`
23
+ endstream`);return K([Q,I,N,Z,S,J])}return K([Q,C(O($)),J])}function R(V){if(!Number.isFinite(V))throw new P("pdf/serializer/bad-real","real number must be finite",{context:{value:V}});if(Number.isInteger(V))return`${V}`;let F=V.toFixed(5);if(F.indexOf(".")>=0){if(F=F.replace(/0+$/,""),F.endsWith("."))F=F.slice(0,-1)}if(F==="-0")F="0";return F}function O(V){switch(V.type){case"null":return["null"];case"bool":return[V.value?"true":"false"];case"int":return[`${V.value|0}`];case"real":return[R(V.value)];case"name":return[M(V.value)];case"string":return[Y(V)];case"array":return z(V);case"dict":return q(V);case"ref":return[`${V.num|0} ${V.gen|0} R`];case"stream":throw new P("pdf/serializer/inline-stream","stream objects must be serialized via serializeIndirect");default:throw new P("pdf/serializer/unknown-type",`unknown object type "${V.type}"`,{context:{type:V.type}})}}function M(V){let F="/";for(let $=0;$<V.length;$++){let Q=V.codePointAt($);if(Q>65535)$++;if(Q<33||Q>126||Q===35||Q===47||Q===40||Q===41||Q===60||Q===62||Q===91||Q===93||Q===123||Q===125||Q===37){let J=j.encode(String.fromCodePoint(Q));for(let Z of J)F+="#"+Z.toString(16).padStart(2,"0").toUpperCase()}else F+=String.fromCharCode(Q)}return F}function Y(V){let F=V.value;if(!(F instanceof Uint8Array))throw new P("pdf/serializer/bad-string","string value must be Uint8Array",{context:{typeof:typeof F}});if(V.syntax==="hex"||G(F))return U(F);return X(F)}function G(V){let F=0;for(let $=0;$<V.length;$++){let Q=V[$];if(Q<9||Q>13&&Q<32||Q>=127)F++;if(F>V.length/4)return!0}return!1}function X(V){let F=["("];for(let $=0;$<V.length;$++){let Q=V[$];if(Q===92)F.push("\\\\");else if(Q===40)F.push("\\(");else if(Q===41)F.push("\\)");else if(Q===10)F.push("\\n");else if(Q===13)F.push("\\r");else if(Q===9)F.push("\\t");else if(Q===8)F.push("\\b");else if(Q===12)F.push("\\f");else if(Q<32||Q>126)F.push("\\"+Q.toString(8).padStart(3,"0"));else F.push(String.fromCharCode(Q))}return F.push(")"),F.join("")}function U(V){let F="<";for(let $=0;$<V.length;$++)F+="0123456789ABCDEF"[V[$]>>4]+"0123456789ABCDEF"[V[$]&15];return F+">"}function z(V){let F=["["],$=!0;for(let Q of V.items){if(!$)F.push(" ");$=!1;for(let J of O(Q))F.push(J)}return F.push("]"),F}function q(V){let F=["<<"];for(let $ of Object.keys(V.entries)){F.push(" "),F.push(M($)),F.push(" ");for(let Q of O(V.entries[$]))F.push(Q)}return F.push(" >>"),F}function C(V){let F="";for(let $ of V)F+=$;return j.encode(F)}function K(V){let F=0;for(let J of V)F+=J.length;let $=new Uint8Array(F),Q=0;for(let J of V)$.set(J,Q),Q+=J.length;return $}return{serializeObject:H,serializeIndirect:D,formatReal:R}}}),a({name:"pdfCatalog",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,H=P&&P.isType||((O,M)=>!!(O&&O.type===M)),D=new Set(["Type","Version","Pages","PageLabels","Names","Dests","ViewerPreferences","PageLayout","PageMode","Outlines","Threads","OpenAction","AA","URI","AcroForm","Metadata","StructTreeRoot","MarkInfo","Lang","SpiderInfo","OutputIntents","PieceInfo","OCProperties","Perms","Legal","Requirements","Collection","NeedsRendering","DSS","AF","DPartRoot"]);function R(O){if(!H(O,"dict"))throw new j("pdf/catalog/not-dict","Catalog must be a dictionary",{context:{type:O&&O.type}});let M=O.entries;if(M.Type&&(M.Type.type!=="name"||M.Type.value!=="Catalog"))throw new j("pdf/catalog/bad-type","/Type entry must be /Catalog",{context:{actual:M.Type.value}});if(!M.Pages||M.Pages.type!=="ref")throw new j("pdf/catalog/missing-pages","Catalog is missing required /Pages reference",{context:{type:M.Pages&&M.Pages.type}});let Y={pages:{num:M.Pages.num,gen:M.Pages.gen},raw:O,_extras:{}};if(M.Version&&M.Version.type==="name")Y.version=M.Version.value;if(M.PageLayout&&M.PageLayout.type==="name")Y.pageLayout=M.PageLayout.value;if(M.PageMode&&M.PageMode.type==="name")Y.pageMode=M.PageMode.value;if(M.Lang&&M.Lang.type==="string")Y.lang=M.Lang.value;if(M.Outlines&&M.Outlines.type==="ref")Y.outlines=M.Outlines;if(M.Metadata&&M.Metadata.type==="ref")Y.metadata=M.Metadata;if(M.StructTreeRoot&&M.StructTreeRoot.type==="ref")Y.structTreeRoot=M.StructTreeRoot;if(M.AcroForm)Y.acroForm=M.AcroForm;if(M.Names)Y.names=M.Names;if(M.Dests)Y.dests=M.Dests;if(M.ViewerPreferences)Y.viewerPrefs=M.ViewerPreferences;if(M.PageLabels)Y.pageLabels=M.PageLabels;if(M.MarkInfo)Y.markInfo=M.MarkInfo;if(M.OCProperties)Y.ocProperties=M.OCProperties;if(M.OutputIntents)Y.outputIntents=M.OutputIntents;for(let G of Object.keys(M))if(!D.has(G))Y._extras[G]=M[G];return Y}return{typeCatalog:R}}}),a({name:"pdfPages",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,H=P&&P.isType||((O,M)=>!!(O&&O.type===M));function D(O,M,Y){let G=Y&&Y.maxDepth||64,X=Y&&Y.maxPages||200000,U=[],z=new Set;return q(O,0),U;function q(C,K){if(K>G)throw new j("pdf/pages/max-depth","page tree depth limit exceeded",{context:{depth:K,maxDepth:G}});let V=C.num+":"+C.gen;if(z.has(V))throw new j("pdf/pages/cycle","cycle detected in page tree",{context:{ref:C}});z.add(V);let F=M({type:"ref",num:C.num,gen:C.gen});if(!H(F,"dict"))throw new j("pdf/pages/not-dict","page tree node is not a dict",{context:{ref:C}});let $=F.entries.Type;if($&&$.type==="name"&&$.value==="Page"||!F.entries.Kids&&!$){if(U.push({num:C.num,gen:C.gen}),U.length>X)throw new j("pdf/pages/too-many","page count limit exceeded",{context:{maxPages:X}});return}let Q=F.entries.Kids;if(!Q||Q.type!=="array")throw new j("pdf/pages/missing-kids","intermediate page tree node missing /Kids array",{context:{ref:C,hasKids:!!Q}});for(let J of Q.items){if(J.type!=="ref")throw new j("pdf/pages/non-ref-kid","page tree /Kids entries must be indirect refs",{context:{kind:J.type}});q({num:J.num,gen:J.gen},K+1)}}}function R(O){if(!H(O,"dict"))return null;let M=O.entries.Count;if(!M||M.type!=="int"&&M.type!=="real")return null;return M.value|0}return{walkPageTree:D,readPageCount:R}}}),a({name:"pdfPage",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,H=P&&P.isType||((X,U)=>!!(X&&X.type===U)),D=new Set(["Type","Parent","LastModified","Resources","MediaBox","CropBox","BleedBox","TrimBox","ArtBox","BoxColorInfo","Contents","Rotate","Group","Thumb","B","Dur","Trans","Annots","AA","Metadata","PieceInfo","StructParents","ID","PZ","SeparationInfo","Tabs","TemplateInstantiated","PresSteps","UserUnit","VP","AF","OutputIntents","DPart","AssociatedFiles"]);function R(X){if(!X||X.type!=="array"||X.items.length!==4)return null;let U=Array(4);for(let z=0;z<4;z++){let q=X.items[z];if(!q||q.type!=="int"&&q.type!=="real")return null;U[z]=q.value}return U}function O(X){if(!X||X.type!=="int"&&X.type!=="real")return 0;let U=((X.value|0)%360+360)%360;if(U%90!==0)return 0;return U}function M(X){if(!X)return[];if(X.type==="ref")return[{num:X.num,gen:X.gen}];if(X.type==="array"){let U=[];for(let z of X.items)if(z.type==="ref")U.push({num:z.num,gen:z.gen});return U}return[]}function Y(X){if(!X)return[];if(X.type==="ref")return[X];if(X.type==="array")return X.items.slice();return[]}function G(X){if(!H(X,"dict"))throw new j("pdf/page/not-dict","Page must be a dictionary",{context:{type:X&&X.type}});let U=X.entries;if(U.Type&&(U.Type.type!=="name"||U.Type.value!=="Page"))throw new j("pdf/page/bad-type","/Type must be /Page when present",{context:{actual:U.Type.value}});let z={parent:U.Parent&&U.Parent.type==="ref"?{num:U.Parent.num,gen:U.Parent.gen}:null,mediaBox:R(U.MediaBox),resources:U.Resources||null,contents:M(U.Contents),rotate:O(U.Rotate),annots:Y(U.Annots),raw:X,_extras:{}};if(U.CropBox)z.cropBox=R(U.CropBox);if(U.BleedBox)z.bleedBox=R(U.BleedBox);if(U.TrimBox)z.trimBox=R(U.TrimBox);if(U.ArtBox)z.artBox=R(U.ArtBox);if(U.UserUnit&&U.UserUnit.type==="real")z.userUnit=U.UserUnit.value;if(U.UserUnit&&U.UserUnit.type==="int")z.userUnit=U.UserUnit.value;if(U.Tabs&&U.Tabs.type==="name")z.tabs=U.Tabs.value;if(U.Metadata)z.metadata=U.Metadata;if(U.Group)z.group=U.Group;for(let q of Object.keys(U))if(!D.has(q))z._extras[q]=U[q];return z}return{typePage:G}}}),a({name:"pdfCrossRefStream",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P;function D(M,Y,G){let X=0;for(let U=0;U<G;U++)X=X*256+M[Y+U];return X}function R(M,Y){if(!M||M.type!=="int")throw new j("pdf/xrefstm/missing-int",`XRef stream dict missing required /${Y}`,{context:{label:Y}});return M.value}function O(M,Y){if(!(M instanceof Uint8Array))throw new j("pdf/xrefstm/bad-input","parseCrossRefStream expects Uint8Array");if(!H(Y,"dict"))throw new j("pdf/xrefstm/bad-dict","XRef stream dict must be a typed dict");let G=Y.entries;if(!G.Type||G.Type.type!=="name"||G.Type.value!=="XRef")throw new j("pdf/xrefstm/wrong-type","/Type must be /XRef",{context:{actual:G.Type&&G.Type.value}});let X=G.W;if(!X||X.type!=="array"||X.items.length!==3)throw new j("pdf/xrefstm/bad-W","/W must be a 3-element array",{context:{items:X&&X.items&&X.items.length}});let U=X.items.map((V)=>{if(V.type!=="int"||V.value<0)throw new j("pdf/xrefstm/bad-W-entry","/W entries must be non-negative ints");return V.value}),z=U[0]+U[1]+U[2];if(z<=0)throw new j("pdf/xrefstm/bad-W-zero","/W must yield at least one non-zero field");let q;if(G.Index){if(G.Index.type!=="array"||(G.Index.items.length&1)!==0)throw new j("pdf/xrefstm/bad-Index","/Index must be an array of (first, count) pairs");q=[];for(let V=0;V<G.Index.items.length;V+=2){let F=G.Index.items[V],$=G.Index.items[V+1];if(F.type!=="int"||$.type!=="int")throw new j("pdf/xrefstm/bad-Index-entry","/Index entries must be ints");q.push([F.value,$.value])}}else q=[[0,R(G.Size,"Size")]];let C={},K=0;for(let[V,F]of q)for(let $=0;$<F;$++){if(K+z>M.length)throw new j("pdf/xrefstm/truncated","truncated xref stream payload",{context:{pos:K,recordSize:z,length:M.length}});let Q=U[0]>0?D(M,K,U[0]):1,J=U[1]>0?D(M,K+U[0],U[1]):0,Z=U[2]>0?D(M,K+U[0]+U[1],U[2]):0;K+=z;let W=V+$;if(Q===0)C[W]={type:0,offset:J,gen:Z,free:!0};else if(Q===1)C[W]={type:1,offset:J,gen:Z,free:!1};else if(Q===2)C[W]={type:2,objStm:J,index:Z,free:!1,offset:0,gen:0};else C[W]={type:Q,offset:0,gen:0,free:!0}}return{entries:C,size:G.Size&&G.Size.type==="int"?G.Size.value:Object.keys(C).length,trailer:Y}}return{parseCrossRefStream:O}}}),a({name:"pdfObjStream",dependencies:["pdfErrors","pdfParserObj","pdfTokenizer","pdfParser"],factory:function(A,P,j,H){let{ParseError:D}=A,{isType:R}=P,O=j.tokenize,M=H.parseObject;function Y(X,U){if(!X||X.type!=="int")throw new D("pdf/objstm/missing-int",`ObjStm dict missing required /${U}`,{context:{label:U,hasEntry:!!X,type:X&&X.type}});return X.value}function G(X,U){if(!(X instanceof Uint8Array))throw new D("pdf/objstm/bad-input","parseObjectStream expects Uint8Array",{context:{typeof:typeof X}});if(!R(U,"dict"))throw new D("pdf/objstm/bad-dict","ObjStm dict must be a typed dict");let z=U.entries;if(z.Type&&(z.Type.type!=="name"||z.Type.value!=="ObjStm"))throw new D("pdf/objstm/wrong-type","/Type must be /ObjStm",{context:{actual:z.Type.value}});let q=Y(z.N,"N"),C=Y(z.First,"First");if(q<0)throw new D("pdf/objstm/bad-N","/N must be non-negative",{context:{N:q}});if(C<0||C>X.length)throw new D("pdf/objstm/bad-First","/First out of payload range",{context:{First:C,length:X.length}});let K=O(X,{start:0,end:C}),V=Array(q),F=Array(q);for(let Q=0;Q<q;Q++){let J=K.next(),Z=K.next();if(!J||J.kind!=="int"||!Z||Z.kind!=="int")throw new D("pdf/objstm/bad-pair","ObjStm header expects N pairs of integers",{context:{index:Q}});V[Q]=J.value,F[Q]=Z.value}let $=Array(q);for(let Q=0;Q<q;Q++){let J=C+F[Q],Z=Q+1<q?C+F[Q+1]:X.length;if(J<C||Z>X.length||J>Z)throw new D("pdf/objstm/bad-offset","ObjStm member offset out of range",{context:{index:Q,start:J,end:Z,length:X.length}});let W=O(X,{start:J,end:Z}),I=M(W);$[Q]={num:V[Q],gen:0,value:I}}return $}return{parseObjectStream:G}}}),a({name:"pdfFlate",dependencies:["pdfErrors","zlib"],factory:function(A,P){let{ParseError:j}=A;if(!P||typeof P.unzlibSync!=="function"||typeof P.zlibSync!=="function")throw new j("pdf/flate/missing-fw","pdfFlate requires the @awacloud/fw zlib module",{context:{keys:P&&Object.keys(P)}});function H(V,F,$){let Q=V+F-$,J=Math.abs(Q-V),Z=Math.abs(Q-F),W=Math.abs(Q-$);if(J<=Z&&J<=W)return V;if(Z<=W)return F;return $}function D(V){let F=V&&V.predictor!=null?V.predictor|0:V&&V.Predictor!=null?V.Predictor|0:1,$=V&&V.columns!=null?V.columns|0:V&&V.Columns!=null?V.Columns|0:1,Q=V&&V.colors!=null?V.colors|0:V&&V.Colors!=null?V.Colors|0:1,J=V&&V.bitsPerComponent!=null?V.bitsPerComponent|0:V&&V.BitsPerComponent!=null?V.BitsPerComponent|0:8;if(F!==1&&F!==2&&(F<10||F>15))throw new j("pdf/flate/bad-predictor","unsupported Predictor value",{context:{predictor:F}});if($<=0||Q<=0||J<=0)throw new j("pdf/flate/bad-predictor-params","Columns, Colors and BitsPerComponent must be > 0",{context:{columns:$,colors:Q,bpc:J}});let Z=Q*J,W=Math.max(1,Z+7>>3),I=$*Z+7>>3;return{predictor:F,columns:$,colors:Q,bpc:J,bytesPerPixel:W,rowBytes:I}}function R(V,F,$,Q){let J=new Uint8Array(F.length);for(let Z=0;Z<F.length;Z++){let W=Z>=Q?J[Z-Q]:0,I=$?$[Z]:0,N=$&&Z>=Q?$[Z-Q]:0,S=F[Z];switch(V){case 0:break;case 1:S=S+W&255;break;case 2:S=S+I&255;break;case 3:S=S+(W+I>>1)&255;break;case 4:S=S+H(W,I,N)&255;break;default:throw new j("pdf/flate/bad-png-filter","unknown PNG filter tag",{context:{tag:V}})}J[Z]=S}return J}function O(V,F,$,Q){let J=new Uint8Array(F.length);for(let Z=0;Z<F.length;Z++){let W=Z>=Q?F[Z-Q]:0,I=$?$[Z]:0,N=$&&Z>=Q?$[Z-Q]:0,S=F[Z];switch(V){case 0:J[Z]=S;break;case 1:J[Z]=S-W&255;break;case 2:J[Z]=S-I&255;break;case 3:J[Z]=S-(W+I>>1)&255;break;case 4:J[Z]=S-H(W,I,N)&255;break;default:throw new j("pdf/flate/bad-png-filter","unknown PNG filter tag",{context:{tag:V}})}}return J}function M(V,F){if(F.bpc!==8)throw new j("pdf/flate/tiff-bpc-unsupported","TIFF Predictor 2 requires BitsPerComponent=8",{context:{bpc:F.bpc}});let $=new Uint8Array(V.length),Q=F.colors,J=F.rowBytes,Z=V.length/J|0;for(let W=0;W<Z;W++){let I=W*J;for(let N=0;N<J;N++){let S=N>=Q?$[I+N-Q]:0;$[I+N]=V[I+N]+S&255}}return $}function Y(V,F){if(F.bpc!==8)throw new j("pdf/flate/tiff-bpc-unsupported","TIFF Predictor 2 requires BitsPerComponent=8",{context:{bpc:F.bpc}});let $=new Uint8Array(V.length),Q=F.colors,J=F.rowBytes,Z=V.length/J|0;for(let W=0;W<Z;W++){let I=W*J;for(let N=0;N<J;N++){let S=N>=Q?V[I+N-Q]:0;$[I+N]=V[I+N]-S&255}}return $}function G(V,F){let $=F.rowBytes,Q=$+1;if(V.length%Q!==0)throw new j("pdf/flate/png-row-mismatch","predicted stream length is not a multiple of (rowBytes+1)",{context:{length:V.length,stride:Q}});let J=V.length/Q,Z=new Uint8Array(J*$),W=null;for(let I=0;I<J;I++){let N=V[I*Q],S=V.subarray(I*Q+1,I*Q+Q),B=R(N,S,W,F.bytesPerPixel);Z.set(B,I*$),W=B}return Z}function X(V,F){let $=F.rowBytes;if(V.length%$!==0)throw new j("pdf/flate/png-row-mismatch","input length is not a multiple of rowBytes",{context:{length:V.length,rowBytes:$}});let Q=V.length/$,J=$+1,Z=new Uint8Array(Q*J),W=F.predictor===15?-1:F.predictor-10,I=null;for(let N=0;N<Q;N++){let S=V.subarray(N*$,(N+1)*$),B=W;if(B<0)B=N===0?0:2;let x=O(B,S,I,F.bytesPerPixel);Z[N*J]=B,Z.set(x,N*J+1),I=S}return Z}function U(V){return!!V&&V.code===0}function z(V){let F=[],$=0;new P.UnzlibStream((Z)=>{F.push(Z),$+=Z.length}).push(V,!1);let Q=new Uint8Array($),J=0;for(let Z of F)Q.set(Z,J),J+=Z.length;return Q}function q(V){return Object.defineProperty(V,"truncated",{value:!0,enumerable:!1}),V}function C(V,F){if(!(V instanceof Uint8Array))throw new j("pdf/flate/bad-input","FlateDecode expects Uint8Array");let $,Q=!1;try{$=P.unzlibSync(V)}catch(I){let N=()=>new j("pdf/flate/inflate-failed","inflate failed: "+(I&&I.message),{context:{length:V.length},cause:I});if(!U(I)||typeof P.UnzlibStream!=="function")throw N();let S;try{S=z(V)}catch{throw N()}if(S.length===0)throw N();$=S,Q=!0}let J=(I)=>Q?q(I):I;if(!F)return J($);if(!(F.predictor!=null&&F.predictor!==1||F.Predictor!=null&&F.Predictor!==1))return J($);let Z=D(F);if(Z.predictor===1)return J($);let W=Z.predictor===2?Z.rowBytes:Z.rowBytes+1;if(Q)$=$.subarray(0,$.length-$.length%W);if(Z.predictor===2)return J(M($,Z));return J(G($,Z))}function K(V,F){if(!(V instanceof Uint8Array))throw new j("pdf/flate/bad-input","FlateEncode expects Uint8Array");let $=V;if(F){if(F.predictor!=null&&F.predictor!==1||F.Predictor!=null&&F.Predictor!==1){let Q=D(F);if(Q.predictor===2)$=Y(V,Q);else if(Q.predictor>=10)$=X(V,Q)}}try{return P.zlibSync($)}catch(Q){throw new j("pdf/flate/deflate-failed","deflate failed: "+(Q&&Q.message),{context:{length:$.length},cause:Q})}}return{decode:C,encode:K}}}),a({name:"pdfAsciiHex",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,-1,-1,-1,-1,-1,-1,-1,10,11,12,13,14,15,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,10,11,12,13,14,15,-1];function H(O){return O===32||O===9||O===10||O===13||O===12||O===0}function D(O){if(!(O instanceof Uint8Array))throw new P("pdf/asciiHex/bad-input","ASCIIHexDecode expects Uint8Array");let M=[],Y=-1;for(let G=0;G<O.length;G++){let X=O[G];if(X===62)break;if(H(X))continue;let U=X<j.length?j[X]:-1;if(U<0)throw new P("pdf/asciiHex/bad-digit","invalid hex digit",{context:{offset:G,byte:X}});if(Y<0)Y=U;else M.push(Y<<4|U),Y=-1}if(Y>=0)M.push(Y<<4);return Uint8Array.from(M)}function R(O){if(!(O instanceof Uint8Array))throw new P("pdf/asciiHex/bad-input","ASCIIHexEncode expects Uint8Array");let M="0123456789ABCDEF",Y="";for(let G=0;G<O.length;G++){if(G>0&&(G&31)===0)Y+=`
24
+ `;let X=O[G];Y+=M[X>>4]+M[X&15]}return Y+=">",new TextEncoder().encode(Y)}return{decode:D,encode:R}}}),a({name:"pdfAscii85",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A;function j(R){return R===32||R===9||R===10||R===13||R===12||R===0}function H(R){if(!(R instanceof Uint8Array))throw new P("pdf/ascii85/bad-input","ASCII85Decode expects Uint8Array");let O=[],M=0,Y=0;for(let G=0;G<R.length;G++){let X=R[G];if(j(X))continue;if(X===126){if(G+1<R.length&&R[G+1]===62)break;throw new P("pdf/ascii85/bad-eod","~ not followed by >",{context:{offset:G}})}if(X===122){if(Y!==0)throw new P("pdf/ascii85/bad-z","z must appear at group boundary",{context:{offset:G}});O.push(0,0,0,0);continue}if(X<33||X>117)throw new P("pdf/ascii85/bad-digit","character outside ! .. u",{context:{offset:G,byte:X}});if(M=M*85+(X-33),Y++,Y===5)O.push(M>>>24&255,M>>>16&255,M>>>8&255,M&255),M=0,Y=0}if(Y>0){for(let X=Y;X<5;X++)M=M*85+84;let G=[M>>>24&255,M>>>16&255,M>>>8&255,M&255];for(let X=0;X<Y-1;X++)O.push(G[X])}return Uint8Array.from(O)}function D(R){if(!(R instanceof Uint8Array))throw new P("pdf/ascii85/bad-input","ASCII85Encode expects Uint8Array");let O=[],M=0;while(M+4<=R.length){let G=R[M]*16777216+(R[M+1]<<16)+(R[M+2]<<8)+R[M+3];if(G===0)O.push(122);else{let X=[0,0,0,0,0],U=G;for(let z=4;z>=0;z--)X[z]=U%85+33,U=Math.floor(U/85);O.push(X[0],X[1],X[2],X[3],X[4])}M+=4}let Y=R.length-M;if(Y>0){let G=new Uint8Array(4);G.set(R.subarray(M));let X=G[0]*16777216+(G[1]<<16)+(G[2]<<8)+G[3],U=[0,0,0,0,0],z=X;for(let q=4;q>=0;q--)U[q]=z%85+33,z=Math.floor(z/85);for(let q=0;q<Y+1;q++)O.push(U[q])}return O.push(126,62),Uint8Array.from(O)}return{decode:H,encode:D}}}),a({name:"pdfRunLength",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A;function j(D){if(!(D instanceof Uint8Array))throw new P("pdf/runLength/bad-input","RunLengthDecode expects Uint8Array");let R=[],O=0;while(O<D.length){let M=D[O++];if(M===128)break;if(M<128){let Y=M+1;if(O+Y>D.length)throw new P("pdf/runLength/truncated-literal","truncated literal run",{context:{offset:O-1,want:Y,have:D.length-O}});for(let G=0;G<Y;G++)R.push(D[O+G]);O+=Y}else{if(O>=D.length)throw new P("pdf/runLength/truncated-repeat","truncated repeat run",{context:{offset:O-1}});let Y=D[O++],G=257-M;for(let X=0;X<G;X++)R.push(Y)}}return Uint8Array.from(R)}function H(D){if(!(D instanceof Uint8Array))throw new P("pdf/runLength/bad-input","RunLengthEncode expects Uint8Array");let R=[],O=0;while(O<D.length){let M=D[O],Y=1;while(Y<128&&O+Y<D.length&&D[O+Y]===M)Y++;if(Y>=3){R.push(257-Y,M),O+=Y;continue}let G=O,X=0;while(X<128&&O<D.length){let U=1;while(U<3&&O+U<D.length&&D[O+U]===D[O])U++;if(U>=3&&X>0)break;O++,X++}R.push(X-1);for(let U=0;U<X;U++)R.push(D[G+U])}return R.push(128),Uint8Array.from(R)}return{decode:j,encode:H}}}),a({name:"pdfFilterDispatch",dependencies:["pdfErrors","pdfFlate","pdfAsciiHex","pdfAscii85","pdfRunLength"],factory:function(A,P,j,H,D){let{ParseError:R}=A;function O(W,I){return!!(W&&W.type===I)}let M={Fl:"FlateDecode",AHx:"ASCIIHexDecode",A85:"ASCII85Decode",RL:"RunLengthDecode",LZW:"LZWDecode",DCT:"DCTDecode",JPX:"JPXDecode",CCF:"CCITTFaxDecode"};function Y(W){return M[W]||W}function G(){return{decode(W){return W},encode(W){return W}}}function X(W){if(!W)return[];if(W.type==="name")return[Y(W.value)];if(W.type==="array"){let I=[];for(let N of W.items){if(N.type!=="name")throw new R("pdf/filter/non-name","/Filter array entries must be names",{context:{kind:N.type}});I.push(Y(N.value))}return I}throw new R("pdf/filter/bad-type","/Filter must be a name or array of names",{context:{type:W.type}})}function U(W,I,N,S){let B=W;for(let x=0;x<I.length;x++){let v=I[x],E=N?N[x]||null:null,T=S[v];if(!T)throw new R("pdf/filter/unsupported",`filter "${v}" not registered`,{context:{name:v,available:Object.keys(S)}});B=T.decode(B,E)}return B}function z(W,I,N,S){let B=W;for(let x=0;x<I.length;x++){let v=I[x],E=N?N[x]||null:null,T=S[v];if(!T||typeof T.encode!=="function")throw new R("pdf/filter/no-encoder",`filter "${v}" has no encoder`,{context:{name:v}});B=T.encode(B,E)}return B}function q(W){let I=W.entries||{},N={};for(let S of Object.keys(I)){let B=I[S];N[S]=B?B.value:void 0}return N}function C(W,I){if(!W)return null;if(W.type==="null")return null;if(W.type==="dict"){let N=Array(I).fill(null);if(I>0)N[0]=q(W);return N}if(W.type==="array")return W.items.map((N)=>N.type==="dict"?q(N):null);throw new R("pdf/filter/bad-decodeparms","/DecodeParms must be a dict, array, or null",{context:{type:W.type}})}function K(W,I){if(!O(W,"stream"))throw new R("pdf/filter/not-stream","decodeStream expects a stream object");let N=W.dict,S=X(N.entries.Filter),B=C(N.entries.DecodeParms,S.length);return U(W.raw,S,B,I)}let V={FlateDecode:P,ASCIIHexDecode:j,ASCII85Decode:H,RunLengthDecode:D,DCTDecode:G(),JPXDecode:G(),Crypt:G()};function F(W){return K(W,V)}function $(W,I,N){return U(W,I,N,V)}function Q(W,I,N){return z(W,I,N,V)}function J(W,I){V[W]=I}function Z(){return Object.keys(V)}return{decode:F,decodeChain:$,encodeChain:Q,register:J,names:Z,decoders:V,normalizeFilterList:X,applyDecodeChain:U,applyEncodeChain:z,decodeStream:K}}}),a({name:"pdfDocument",dependencies:["pdfErrors","pdfTokenizer","pdfParser","pdfXref","pdfTrailer","pdfCatalog","pdfPage","pdfPages","pdfCrossRefStream","pdfObjStream","pdfFilterDispatch"],factory:function(A,P,j,H,D,R,O,M,Y,G,X){let{ParseError:U}=A,z=P&&P.tokenize,q=j&&j.parseIndirect,C=H&&H.locateStartXref,K=H&&H.readStartXref,V=H&&H.parseXrefTable,F=H&&H.parseTrailerDict,$=D&&D.typeTrailer,Q=R&&R.typeCatalog,J=O&&O.typePage,Z=M&&M.walkPageTree,W=new Uint8Array([37,80,68,70,45]),I=new Uint8Array([120,114,101,102]),N=Object.freeze({type:"null"}),S=new Set(["Prev","XRefStm","Type","W","Index","Length","Filter","DecodeParms","F","FFilter","FDecodeParms","DL"]),B=Object.freeze({type:"dict",entries:Object.freeze({Type:Object.freeze({type:"name",value:"Pages"}),Kids:Object.freeze({type:"array",items:Object.freeze([])})})});function x(y,d){let n=d<0?0:d;while(n<y.length){let i=y[n];if(i===0||i===9||i===10||i===12||i===13||i===32){n++;continue}break}return n}function v(y,d){for(let n=0;n<I.length;n++)if(y[d+n]!==I[n])return!1;return!0}function E(y){throw new U("pdf/document/xrefstm-indirect-length","a cross-reference stream may not use an indirect /Length",{context:{num:y&&y.num,gen:y&&y.gen}})}function T(y){if(!Y||!G||!X)throw new U("pdf/document/xref-stream-unwired","this pdfDocument was built without pdfCrossRefStream, "+"pdfObjStream and pdfFilterDispatch — cross-reference "+"streams and object streams cannot be read",{context:{offset:y}})}function _(y,d){T(d);let n=z(y,{start:d}),i=q(n,E).value,Y0=i&&i.dict&&i.dict.entries&&i.dict.entries.Type;if(!i||i.type!=="stream"||!Y0||Y0.type!=="name"||Y0.value!=="XRef")throw new U("pdf/document/bad-xref-section","neither an xref table nor a cross-reference stream at startxref",{context:{offset:d}});let H0=X.decode(i);return{entries:Y.parseCrossRefStream(H0,i.dict).entries,dict:i.dict}}function w(y){if(y.length===1)return y[0];for(let n of y)if(!n||n.type!=="dict")return n;let d={...y[0].entries};for(let n=1;n<y.length;n++)for(let i of Object.keys(y[n].entries)){if(S.has(i))continue;if(!(i in d))d[i]=y[n].entries[i]}return{...y[0],entries:d}}function h(y){if(y.length<8)throw new U("pdf/document/short","input too short to contain a PDF header",{context:{length:y.length}});let d=-1,n=Math.min(y.length-5,1024);$:for(let z0=0;z0<=n;z0++){for(let P0=0;P0<5;P0++)if(y[z0+P0]!==W[P0])continue $;d=z0;break}if(d<0)throw new U("pdf/document/bad-header","no %PDF- header found in first 1024 bytes");let i=d+5,Y0=[];while(i<y.length){let z0=y[i];if(z0===10||z0===13)break;Y0.push(z0),i++}let H0=new TextDecoder("latin1").decode(Uint8Array.from(Y0));if(i<y.length&&y[i]===13)i++;if(i<y.length&&y[i]===10)i++;return{version:H0,end:i}}function l(y,d={}){if(!(y instanceof Uint8Array))throw new U("pdf/document/bad-input","readDocument expects a Uint8Array",{context:{typeof:typeof y}});let{version:n,end:i}=h(y),Y0=C(y);if(Y0<0)throw new U("pdf/document/no-startxref","startxref keyword not found near EOF");let H0=K(y,Y0),z0={entries:{},sections:[]},P0=[],w0=[],Q0=H0,e=new Set;function Z0(t,G0,C0){z0.sections.push({at:t,kind:G0,entries:C0});for(let q0 of Object.keys(C0))if(!(q0 in z0.entries))z0.entries[q0]=C0[q0]}for(let t=0;t<32&&Q0>=0;t++){if(e.has(Q0))break;e.add(Q0);let G0;if(v(y,x(y,Q0))){let q0=V(y,Q0);Z0(Q0,"table",q0.entries),G0=F(y,q0.end).dict;let W0=G0&&G0.entries&&G0.entries.XRefStm;if(W0&&W0.type==="int"&&W0.value>=0&&W0.value<y.length){let A0=_(y,W0.value);Z0(W0.value,"stream",A0.entries)}}else{let q0=_(y,Q0);Z0(Q0,"stream",q0.entries),G0=q0.dict}w0.push(G0);let C0=G0&&G0.type==="dict"&&G0.entries&&G0.entries.Prev;if(C0&&C0.type==="int"&&C0.value>=0&&C0.value!==Q0)Q0=C0.value;else break}if(w0.length===0)throw new U("pdf/document/no-trailer","no usable trailer dictionary found");let U0=$(w(w0));if(U0.encrypt&&d.allowEncrypted!==!0)throw new U("pdf/document/encrypted","document is encrypted (trailer /Encrypt present) — "+"no decrypt path is composed for readDocument; pass { allowEncrypted: true } to read the raw ciphertext container",{context:{encrypt:U0.encrypt}});let k=new Map,c=new Set,f=new Set,m=new Map;function u(t){if(!t||t.type!=="ref")return t;return o(t.num,t.gen)}function o(t,G0){let C0=t+":"+G0;if(k.has(C0))return k.get(C0).value;let q0=z0.entries[t];if(!q0)throw new U("pdf/document/missing-xref",`object ${t} ${G0} not in xref`,{context:{num:t,gen:G0}});if(q0.free){if(q0=$0(t,G0),!q0)return N}if(q0.type===2){let g0=V0(t,G0,q0);return k.set(C0,{value:g0,offset:0,objStm:q0.objStm}),g0}let W0=q0.offset;if(W0<=0||W0>=y.length)throw new U("pdf/document/bad-offset",`object ${t} ${G0} xref offset out of range`,{context:{num:t,gen:G0,offset:W0,total:y.length}});let A0=z(y,{start:W0}),B0=q(A0,u);if(B0.num!==t||B0.gen!==G0)throw new U("pdf/document/xref-mismatch","xref points to a different object",{context:{expected:{num:t,gen:G0},found:{num:B0.num,gen:B0.gen}}});return k.set(C0,{value:B0.value,offset:W0}),B0.value}function $0(t,G0){let C0=t+":"+G0;for(let q0 of z0.sections){let W0=q0.entries[t];if(W0&&!W0.free)return s("fallback:"+C0,{code:"pdf/document/free-entry-fallback",message:`object ${t} is free in the newest xref section; resolved through an older section that defines it`,context:{num:t,gen:G0,section:{at:q0.at,kind:q0.kind}}}),W0}return f.add(C0),s("free:"+C0,{code:"pdf/document/free-object",message:`object ${t} is free in every xref section; read as null`,context:{num:t,gen:G0}}),null}function s(t,G0){if(c.has(t))return;c.add(t),P0.push(G0)}function V0(t,G0,C0){if(U0&&U0.encrypt)throw new U("pdf/document/objstm-encrypted","object streams of an encrypted document cannot be "+"read — no decrypt path is composed for readDocument",{context:{num:t,gen:G0,objStm:C0.objStm}});let q0=C0.objStm,W0=m.get(q0);if(!W0){T(0);let B0=z0.entries[q0];if(B0&&B0.type===2)throw new U("pdf/document/objstm-nested",`object stream ${q0} is itself stored in an object stream`,{context:{num:t,objStm:q0}});let g0=o(q0,0);if(!g0||g0.type!=="stream")throw new U("pdf/document/objstm-not-stream",`object ${q0} is not a stream and cannot hold compressed objects`,{context:{num:t,objStm:q0,type:g0&&g0.type}});W0=G.parseObjectStream(X.decode(g0),g0.dict),m.set(q0,W0)}let A0=W0[C0.index];if(!A0||A0.num!==t)throw new U("pdf/document/objstm-mismatch","object stream member does not carry the expected object number",{context:{num:t,objStm:q0,index:C0.index,found:A0?A0.num:null}});return A0.value}let X0=U0.root,I0=u({type:"ref",num:X0.num,gen:X0.gen});if(f.has(X0.num+":"+X0.gen))throw new U("pdf/document/free-object",`object ${X0.num} is free`,{context:{num:X0.num,gen:X0.gen,role:"catalog"}});let F0=Q(I0);function u0(t){let G0=u(t);if(t&&t.type==="ref"&&f.has(t.num+":"+t.gen))return B;return G0}let f0=Z(F0.pages,u0).map((t)=>J(u({type:"ref",num:t.num,gen:t.gen})));return{version:n,catalog:F0,pages:f0,trailer:U0,xref:z0,losses:P0,_raw:{resolve:u,bytes:y,headerEnd:i,indirects:k}}}return{readDocument:l,readHeader:h}}}),a({name:"pdfWriter",dependencies:["pdfErrors","pdfSerializer"],factory:function(A,P){let{RenderError:j}=A,H=P.serializeIndirect,D=new TextEncoder;function R(q){return String(q).padStart(10,"0")}function O(q){let C="<";for(let K=0;K<q.length;K++)C+="0123456789ABCDEF"[q[K]>>4]+"0123456789ABCDEF"[q[K]&15];return C+">"}function M(q){let C=0;for(let F of q)C+=F.length;let K=new Uint8Array(C),V=0;for(let F of q)K.set(F,V),V+=F.length;return K}function Y(q){let C=-1;for(let K of q){if(!K||!Number.isFinite(K.num)||K.num<1)throw new j("pdf/writer/bad-indirect","each indirect requires num >= 1",{context:{item:K}});if(K.num===C)throw new j("pdf/writer/duplicate-num","duplicate object number",{context:{num:K.num}});C=K.num}}function G(q,C){let K=`xref
25
+ 0 ${q+1}
26
+ `;K+=`0000000000 65535 f
27
+ `;for(let V=1;V<=q;V++)if(C.has(V))K+=R(C.get(V))+` 00000 n
28
+ `;else K+=`0000000000 00000 f
29
+ `;return D.encode(K)}function X(q){let C=[`trailer
30
+ << /Size ${q.size}`];if(C.push(` /Root ${q.root.num} ${q.root.gen|0} R`),q.info)C.push(` /Info ${q.info.num} ${q.info.gen|0} R`);if(q.id)C.push(" /ID ["),C.push(O(q.id[0])),C.push(O(q.id[1])),C.push("]");return C.push(` >>
31
+ `),C.push(`startxref
32
+ ${q.xrefOffset}
33
+ %%EOF
34
+ `),D.encode(C.join(""))}function U(q){if(!q||!Array.isArray(q.indirects))throw new j("pdf/writer/bad-input","writeDocument expects { indirects: [...] }");if(!q.root||!Number.isFinite(q.root.num))throw new j("pdf/writer/no-root","writeDocument requires opts.root");let C=q.version||"2.0";if(!/^\d\.\d$/.test(C))throw new j("pdf/writer/bad-version",'version must look like "x.y"',{context:{version:C}});let K=q.indirects.slice().sort((I,N)=>I.num-N.num);Y(K);let V=[],F=0,$=new Map;function Q(I){V.push(I),F+=I.length}Q(D.encode(`%PDF-${C}
35
+ `)),Q(new Uint8Array([37,226,227,207,211,10]));let J=K.length>0?K[K.length-1].num:0;for(let{num:I,gen:N,value:S}of K)$.set(I,F),Q(H(I,N,S));let Z=F;Q(G(J,$));let W=J+1;return Q(X({size:W,root:q.root,info:q.info,id:q.id,xrefOffset:Z})),M(V)}function z(q,C){if(!q||!q._raw||typeof q._raw.resolve!=="function")throw new j("pdf/writer/bad-model","assembleIndirects requires a model produced by pdf.read()");let K=[];for(let F of Object.keys(q.xref.entries)){let $=q.xref.entries[F];if($.free)continue;try{q._raw.resolve({type:"ref",num:Number(F),gen:$.gen})}catch(Q){K.push({num:Number(F),gen:$.gen,code:A.isPdfError(Q)?Q.code:"unknown"})}}if(K.length>0&&C&&C.strict===!0)throw new j("pdf/writer/unresolvable-objects",`${K.length} object${K.length===1?"":"s"} could not be resolved and would be dropped`,{context:{objects:K}});let V=[];for(let[F,$]of q._raw.indirects.entries()){let[Q,J]=F.split(":").map(Number);V.push({num:Q,gen:J,value:$.value})}return V.sort((F,$)=>F.num-$.num),Object.defineProperty(V,"skippedObjects",{value:K,enumerable:!1,writable:!0,configurable:!0}),V}return{writeDocument:U,assembleIndirects:z}}}),a({name:"pdf",dependencies:["pdfErrors","pdfShared","pdfTokenizer","pdfParserObj","pdfParser","pdfXref","pdfTrailer","pdfSerializer","pdfCatalog","pdfPages","pdfPage","pdfDocument","pdfWriter"],factory:function(A,P,j,H,D,R,O,M,Y,G,X,U,z){let{ContractError:q}=A,C=U.readDocument,K=U.readHeader,V=z.writeDocument,F=z.assembleIndirects,$=new Set,Q={read(J,Z){return C(J,Z)},header(J){return K(J)},write(J,Z){let W=Z&&typeof Z==="object"?Z:{},I=[],N;if(J&&J._raw&&typeof J._raw.resolve==="function"){let S=F(J,W.strict===!0?{strict:!0}:void 0);I=S.skippedObjects||[],N=V({indirects:S,root:J.catalog.pages?{num:J.trailer.root.num,gen:J.trailer.root.gen}:J.trailer.root,info:J.trailer.info,id:J.trailer.id,version:"2.0"})}else N=V(J);if(I.length>0&&typeof W.onSkipped==="function")W.onSkipped(I.slice());return Object.defineProperty(N,"skippedObjects",{value:I,enumerable:!1,writable:!0,configurable:!0}),N},use(J){if(!J||typeof J.name!=="string"||typeof J.register!=="function")throw new q("pdf/use/bad-extension",".use() requires { name: string, register: function }",{context:{keys:J&&Object.keys(J)}});if($.has(J.name))return Q;$.add(J.name);let Z=J.register(Q,{usedExtensions:$});if(Z&&typeof Z==="object"){for(let W of Object.keys(Z))if(W!=="use")Q[W]=Z[W]}return Q},usedExtension(J){return $.has(J)}};return Q}}),a({name:"pdfContentOpsExtended",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze({Type:{kind:"name",doc:"must be /ExtGState"},LW:{kind:"num",doc:"line width"},LC:{kind:"int",doc:"line cap style 0|1|2"},LJ:{kind:"int",doc:"line join style 0|1|2"},ML:{kind:"num",doc:"miter limit"},D:{kind:"array",doc:"[ dashArray dashPhase ]"},RI:{kind:"name",doc:"rendering intent"},OP:{kind:"bool",doc:"stroke overprint"},op:{kind:"bool",doc:"non-stroke overprint"},OPM:{kind:"int",doc:"overprint mode 0|1"},Font:{kind:"array",doc:"[ font size ]"},BG:{kind:"stream-or-func",doc:"black-generation function"},BG2:{kind:"stream-or-name",doc:"BG or /Default"},UCR:{kind:"stream-or-func",doc:"undercolor-removal function"},UCR2:{kind:"stream-or-name",doc:"UCR or /Default"},TR:{kind:"stream-or-func-or-array",doc:"transfer function"},TR2:{kind:"stream-or-func-or-array-or-name",doc:"transfer function or /Default"},HT:{kind:"dict-or-stream-or-name",doc:"halftone"},FL:{kind:"num",doc:"flatness tolerance"},SM:{kind:"num",doc:"smoothness tolerance"},SA:{kind:"bool",doc:"stroke adjustment"},BM:{kind:"name-or-array",doc:"blend mode"},SMask:{kind:"dict-or-name",doc:"soft mask"},CA:{kind:"num",doc:"stroke alpha [0,1]"},ca:{kind:"num",doc:"non-stroke alpha [0,1]"},AIS:{kind:"bool",doc:"alpha is shape"},TK:{kind:"bool",doc:"text knockout"},UseBlackPtComp:{kind:"name",doc:"ON|OFF|Default"},HTO:{kind:"array",doc:"halftone origin [tx ty]"}}),R=(Y)=>Y&&(Y.type==="int"||Y.type==="real");function O(Y){if(!H(Y,"dict"))throw new j("pdf/extra/ext-gstate/not-dict","ExtGState must be a dictionary",{context:{type:Y&&Y.type}});let G=Y.entries;if(G.Type&&(G.Type.type!=="name"||G.Type.value!=="ExtGState"))throw new j("pdf/extra/ext-gstate/bad-type","/Type entry must be /ExtGState",{context:{actual:G.Type.value}});let X={type:G.Type?G.Type.value:null,lw:R(G.LW)?G.LW.value:null,lc:R(G.LC)?G.LC.value|0:null,lj:R(G.LJ)?G.LJ.value|0:null,ml:R(G.ML)?G.ML.value:null,d:H(G.D,"array")?G.D:null,ri:H(G.RI,"name")?G.RI.value:null,op:H(G.OP,"bool")?G.OP.value:null,opNs:H(G.op,"bool")?G.op.value:null,opm:R(G.OPM)?G.OPM.value|0:null,font:H(G.Font,"array")?G.Font:null,bg:G.BG||null,bg2:G.BG2||null,ucr:G.UCR||null,ucr2:G.UCR2||null,tr:G.TR||null,tr2:G.TR2||null,ht:G.HT||null,fl:R(G.FL)?G.FL.value:null,sm:R(G.SM)?G.SM.value:null,sa:H(G.SA,"bool")?G.SA.value:null,bm:G.BM||null,sMask:G.SMask||null,ca:R(G.CA)?G.CA.value:null,caNs:R(G.ca)?G.ca.value:null,ais:H(G.AIS,"bool")?G.AIS.value:null,tk:H(G.TK,"bool")?G.TK.value:null,useBlackPtComp:H(G.UseBlackPtComp,"name")?G.UseBlackPtComp.value:null,hto:H(G.HTO,"array")?G.HTO:null,raw:Y,_extras:{}};for(let U of Object.keys(G))if(!(U in D))X._extras[U]=G[U];return X}function M(Y,G){if(Y!=="d0"&&Y!=="d1")throw new j("pdf/extra/content-ops/unknown","expected d0 or d1 operator",{context:{op:Y}});if(Y==="d0"){if(!G||G.length!==2)throw new j("pdf/extra/content-ops/bad-d0","d0 requires 2 operands wx wy",{context:{count:G&&G.length}});return{kind:"d0",wx:+G[0],wy:+G[1]}}if(!G||G.length!==6)throw new j("pdf/extra/content-ops/bad-d1","d1 requires 6 operands wx wy llx lly urx ury",{context:{count:G&&G.length}});return{kind:"d1",wx:+G[0],wy:+G[1],bbox:[+G[2],+G[3],+G[4],+G[5]]}}return{typeExtGState:O,decodeType3CharOp:M,EXT_GSTATE_KEYS:D}}}),a({name:"pdfFontCidTyped",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["CIDFontType0","CIDFontType2"]),R=Object.freeze({"Adobe-GB1":Object.freeze(["GB-EUC-H","GB-EUC-V","GBpc-EUC-H","GBpc-EUC-V","GBK-EUC-H","GBK-EUC-V","GBKp-EUC-H","GBKp-EUC-V","GBK2K-H","GBK2K-V","UniGB-UCS2-H","UniGB-UCS2-V","UniGB-UTF16-H","UniGB-UTF16-V"]),"Adobe-CNS1":Object.freeze(["B5pc-H","B5pc-V","HKscs-B5-H","HKscs-B5-V","ETen-B5-H","ETen-B5-V","ETenms-B5-H","ETenms-B5-V","CNS-EUC-H","CNS-EUC-V","UniCNS-UCS2-H","UniCNS-UCS2-V","UniCNS-UTF16-H","UniCNS-UTF16-V"]),"Adobe-Japan1":Object.freeze(["83pv-RKSJ-H","90ms-RKSJ-H","90ms-RKSJ-V","90msp-RKSJ-H","90msp-RKSJ-V","90pv-RKSJ-H","Add-RKSJ-H","Add-RKSJ-V","EUC-H","EUC-V","Ext-RKSJ-H","Ext-RKSJ-V","H","V","UniJIS-UCS2-H","UniJIS-UCS2-V","UniJIS-UCS2-HW-H","UniJIS-UCS2-HW-V","UniJIS-UTF16-H","UniJIS-UTF16-V"]),"Adobe-Korea1":Object.freeze(["KSC-EUC-H","KSC-EUC-V","KSCms-UHC-H","KSCms-UHC-V","KSCms-UHC-HW-H","KSCms-UHC-HW-V","KSCpc-EUC-H","UniKS-UCS2-H","UniKS-UCS2-V","UniKS-UTF16-H","UniKS-UTF16-V"]),Identity:Object.freeze(["Identity-H","Identity-V"])}),O=new Set(["Type","Subtype","BaseFont","CIDSystemInfo","FontDescriptor","DW","W","DW2","W2","CIDToGIDMap"]);function M(z){if(!H(z,"dict"))throw new j("pdf/extra/cid-font/not-dict","CIDFont must be a dictionary",{context:{type:z&&z.type}});let q=z.entries;if(q.Type&&(q.Type.type!=="name"||q.Type.value!=="Font"))throw new j("pdf/extra/cid-font/bad-type","/Type entry must be /Font",{context:{actual:q.Type.value}});if(!H(q.Subtype,"name")||!D.has(q.Subtype.value))throw new j("pdf/extra/cid-font/bad-subtype","/Subtype must be CIDFontType0 or CIDFontType2",{context:{actual:q.Subtype&&q.Subtype.value}});if(!H(q.CIDSystemInfo,"dict")&&!(q.CIDSystemInfo&&q.CIDSystemInfo.type==="ref"))throw new j("pdf/extra/cid-font/missing-csi","/CIDSystemInfo is required (dict or ref)",{context:{type:q.CIDSystemInfo&&q.CIDSystemInfo.type}});let C={subtype:q.Subtype.value,baseFont:H(q.BaseFont,"name")?q.BaseFont.value:null,cidSystemInfo:H(q.CIDSystemInfo,"dict")?Y(q.CIDSystemInfo):q.CIDSystemInfo,fontDescriptor:q.FontDescriptor||null,dw:X(q.DW,1000),w:H(q.W,"array")?G(q.W):null,dw2:H(q.DW2,"array")?U(q.DW2):[880,-1000],w2:H(q.W2,"array")?q.W2.items.map((K)=>K):null,cidToGIDMap:q.CIDToGIDMap||null,raw:z,_extras:{}};for(let K of Object.keys(q))if(!O.has(K))C._extras[K]=q[K];return C}function Y(z){if(!H(z,"dict"))throw new j("pdf/extra/cid-system-info/not-dict","CIDSystemInfo must be a dictionary",{context:{type:z&&z.type}});let q=z.entries;if(!H(q.Registry,"string")||!H(q.Ordering,"string"))throw new j("pdf/extra/cid-system-info/incomplete","/Registry and /Ordering are required strings");return{registry:q.Registry.value,ordering:q.Ordering.value,supplement:X(q.Supplement,0)}}function G(z){if(!H(z,"array"))throw new j("pdf/extra/cid-font/bad-w","/W must be an array",{context:{type:z&&z.type}});let q=z.items,C=[],K=0;while(K<q.length){let V=q[K];if(!V||V.type!=="int"&&V.type!=="real")throw new j("pdf/extra/cid-font/bad-w-c","/W expects numeric CID");let F=V.value|0,$=q[K+1];if($&&$.type==="array"){let Q=[];for(let J of $.items){if(!J||J.type!=="int"&&J.type!=="real")throw new j("pdf/extra/cid-font/bad-w-item","/W array sub-items must be numeric");Q.push(J.value)}C.push({first:F,last:F+Q.length-1,widths:Q}),K+=2}else{let Q=$,J=q[K+2];if(!Q||Q.type!=="int"&&Q.type!=="real"||!J||J.type!=="int"&&J.type!=="real")throw new j("pdf/extra/cid-font/bad-w-range","/W range form requires c_first c_last w");C.push({first:F,last:Q.value|0,width:J.value}),K+=3}}return C}function X(z,q){if(!z)return q;if(z.type!=="int"&&z.type!=="real")return q;return z.value}function U(z){if(!H(z,"array"))return null;let q=[];for(let C of z.items){if(!C||C.type!=="int"&&C.type!=="real")return null;q.push(C.value)}return q}return{typeCIDFont:M,typeCIDSystemInfo:Y,decodeWidthsW:G,PREDEFINED_CMAPS:R}}}),a({name:"pdfFontColorTagging",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze({FixedPitch:1,Serif:2,Symbolic:4,Script:8,Nonsymbolic:32,Italic:64,AllCap:65536,SmallCap:131072,ForceBold:262144}),R=Object.freeze(["COLR","CPAL","sbix","SVG ","CBDT","CBLC"]);function O(X){if(typeof X!=="number"||!Number.isFinite(X))throw new j("pdf/extra/font-flags/bad-input","flags must be a finite number",{context:{flags:X}});let U=X|0,z={raw:U};for(let[q,C]of Object.entries(D))z[q.charAt(0).toLowerCase()+q.slice(1)]=(U&C)!==0;return z}function M(X){if(!(X instanceof Uint8Array))throw new j("pdf/extra/color-font/bad-input","expected Uint8Array",{context:{kind:typeof X}});if(X.length<12)throw new j("pdf/extra/color-font/truncated","sfnt header too short",{context:{length:X.length}});let U=X[4]<<8|X[5],z=12+U*16;if(X.length<z)throw new j("pdf/extra/color-font/truncated","sfnt table directory truncated",{context:{numTables:U,length:X.length}});let q=[];for(let C=0;C<U;C++){let K=12+C*16,V=String.fromCharCode(X[K],X[K+1],X[K+2],X[K+3]);q.push(V)}return{hasCOLR:q.includes("COLR"),hasSbix:q.includes("sbix"),hasSVG:q.includes("SVG "),hasCBDT:q.includes("CBDT"),tables:q}}function Y(X){if(!H(X,"stream"))throw new j("pdf/extra/fontfile3/not-stream","/FontFile3 must be a stream",{context:{type:X&&X.type}});let U=X.dict;if(!H(U,"dict"))throw new j("pdf/extra/fontfile3/no-dict","/FontFile3 stream missing dict");let z=U.entries;if(!H(z.Subtype,"name")||z.Subtype.value!=="OpenType")throw new j("pdf/extra/fontfile3/bad-subtype","/FontFile3 /Subtype must be /OpenType",{context:{actual:z.Subtype&&z.Subtype.value}});let q=null;if(X.raw instanceof Uint8Array&&X.raw.length>=12)try{q=M(X.raw)}catch(C){q=null}return{subtype:"OpenType",length:X.raw instanceof Uint8Array?X.raw.length:null,metadata:z.Metadata||null,color:q,raw:X,_extras:G(z,new Set(["Subtype","Length","Filter","DecodeParms","Metadata"]))}}function G(X,U){let z={};for(let q of Object.keys(X))if(!U.has(q))z[q]=X[q];return z}return{decodeFontDescriptorFlags:O,detectColorFontTables:M,typeFontFile3OpenType:Y,FONT_DESCRIPTOR_FLAGS:D,COLOR_OT_TABLES:R}}}),a({name:"pdfTaggedPdfTyped",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["Layout","List","Table","PrintField","Artifact","UserProperties"]),R={Layout:new Set(["O","Placement","WritingMode","BackgroundColor","BorderColor","BorderStyle","BorderThickness","Color","Padding","SpaceBefore","SpaceAfter","StartIndent","EndIndent","TextIndent","TextAlign","BBox","Width","Height","BlockAlign","InlineAlign","TBorderStyle","TPadding","LineHeight","BaselineShift","TextPosition","TextDecorationType","TextDecorationColor","TextDecorationThickness","RubyAlign","RubyPosition","GlyphOrientationVertical","ColumnCount","ColumnGap","ColumnWidths"]),List:new Set(["O","ListNumbering","ContinuedList","ContinuedFrom"]),Table:new Set(["O","RowSpan","ColSpan","Headers","Scope","Summary"]),PrintField:new Set(["O","Role","checked","Desc"]),Artifact:new Set(["O","Type","BBox","Attached","Subtype"]),UserProperties:new Set(["O","P"])};function O($){return R[$]||new Set(["O"])}function M($){if(!H($,"dict"))throw new j("pdf/extra/tagged/not-dict","attribute class must be a dictionary",{context:{type:$&&$.type}});let Q=$.entries;if(!H(Q.O,"name"))throw new j("pdf/extra/tagged/missing-owner","attribute class missing /O owner name",{context:{type:Q.O&&Q.O.type}});let J=Q.O.value,Z;switch(J){case"Layout":Z=Y(Q);break;case"List":Z=G(Q);break;case"Table":Z=X(Q);break;case"PrintField":Z=U(Q);break;case"Artifact":Z=z(Q);break;case"UserProperties":Z=q(Q);break;default:Z={owner:J,vendor:!0}}return Z.owner=J,Z.raw=$,Z._extras=F(Q,O(J)),Z}function Y($){return{placement:C($.Placement),writingMode:C($.WritingMode),backgroundColor:V($.BackgroundColor),borderColor:$.BorderColor||null,borderStyle:$.BorderStyle||null,borderThickness:$.BorderThickness||null,color:V($.Color),padding:$.Padding||null,spaceBefore:K($.SpaceBefore,null),spaceAfter:K($.SpaceAfter,null),startIndent:K($.StartIndent,null),endIndent:K($.EndIndent,null),textIndent:K($.TextIndent,null),textAlign:C($.TextAlign),bbox:V($.BBox),width:K($.Width,null),height:K($.Height,null),blockAlign:C($.BlockAlign),inlineAlign:C($.InlineAlign),lineHeight:K($.LineHeight,null),baselineShift:K($.BaselineShift,null),textPosition:C($.TextPosition),textDecorationType:C($.TextDecorationType),textDecorationColor:V($.TextDecorationColor),textDecorationThickness:K($.TextDecorationThickness,null),columnCount:K($.ColumnCount,null),columnGap:$.ColumnGap||null,columnWidths:$.ColumnWidths||null}}function G($){return{listNumbering:C($.ListNumbering),continuedList:H($.ContinuedList,"bool")?$.ContinuedList.value:null,continuedFrom:$.ContinuedFrom||null}}function X($){return{rowSpan:K($.RowSpan,null),colSpan:K($.ColSpan,null),headers:$.Headers||null,scope:C($.Scope),summary:H($.Summary,"string")?$.Summary.value:null}}function U($){return{role:C($.Role),checked:C($.checked)||C($.Checked),desc:H($.Desc,"string")?$.Desc.value:null}}function z($){return{artifactType:C($.Type),bbox:V($.BBox),attached:$.Attached||null,artifactSubtype:C($.Subtype)}}function q($){let Q={properties:[]};if(H($.P,"array"))for(let J of $.P.items){if(!H(J,"dict"))throw new j("pdf/extra/tagged/bad-user-property","/P items must be dicts");let Z=J.entries;Q.properties.push({name:H(Z.N,"string")?Z.N.value:null,value:Z.V||null,formatted:H(Z.F,"string")?Z.F.value:null,hidden:H(Z.H,"bool")?Z.H.value:!1})}return Q}function C($){return H($,"name")?$.value:null}function K($,Q){if(!$)return Q;return $.type==="int"||$.type==="real"?$.value:Q}function V($){if(!H($,"array"))return null;let Q=[];for(let J of $.items){if(!J||J.type!=="int"&&J.type!=="real")return null;Q.push(J.value)}return Q}function F($,Q){let J={};for(let Z of Object.keys($))if(!Q.has(Z))J[Z]=$[Z];return J}return{typeStructAttribute:M,ATTRIBUTE_OWNERS:D}}}),a({name:"pdfAnnot",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["Type","Subtype","Rect","Contents","P","NM","M","F","AP","AS","Border","C","StructParent","OC","AF","CA","BS","BE"]);function R(F){if(!H(F,"dict"))throw new j("pdf/annot/not-dict","annotation must be a dictionary",{context:{type:F&&F.type}});let $=F.entries;if($.Type&&($.Type.type!=="name"||$.Type.value!=="Annot"))throw new j("pdf/annot/bad-type","/Type must be /Annot when present",{context:{actual:$.Type.value}});return{subtype:H($.Subtype,"name")?$.Subtype.value:null,rect:z($.Rect),contents:H($.Contents,"string")?$.Contents.value:null,p:$.P&&$.P.type==="ref"?{num:$.P.num,gen:$.P.gen}:null,nm:H($.NM,"string")?$.NM.value:null,m:H($.M,"string")?$.M.value:null,f:K($.F,0),ap:H($.AP,"dict")?$.AP:null,as:H($.AS,"name")?$.AS.value:null,border:q($.Border),c:C($.C),structParent:K($.StructParent,null),oc:$.OC||null,af:$.AF||null,ca:V($.CA,null),bs:H($.BS,"dict")?$.BS:null,be:H($.BE,"dict")?$.BE:null,raw:F,_extras:{}}}function O(F,$,Q){let J=$.entries;for(let Z of Object.keys(J)){if(D.has(Z))continue;if(Q&&Q.has(Z))continue;F._extras[Z]=J[Z]}}function M(F,$){if(!H(F,"dict"))throw new j("pdf/annot/not-dict","annotation must be a dictionary",{context:{type:F&&F.type}});let Q=F.entries.Subtype;if(!H(Q,"name"))throw new j("pdf/annot/missing-subtype","/Subtype is required and must be a name",{context:{kind:Q&&Q.type}});let J=Q.value,Z=$||{};switch(J){case"Text":return G("Text",Y(Z.Text,F));case"Link":return G("Link",Y(Z.Link,F));case"FreeText":return G("FreeText",Y(Z.FreeText,F));case"Line":return G("Line",Y(Z.Shape,F,"Line"));case"Square":return G("Square",Y(Z.Shape,F,"Square"));case"Circle":return G("Circle",Y(Z.Shape,F,"Circle"));case"Polygon":return G("Polygon",Y(Z.Shape,F,"Polygon"));case"PolyLine":return G("PolyLine",Y(Z.Shape,F,"PolyLine"));case"Highlight":return G("Highlight",Y(Z.Markup,F,"Highlight"));case"Underline":return G("Underline",Y(Z.Markup,F,"Underline"));case"Squiggly":return G("Squiggly",Y(Z.Markup,F,"Squiggly"));case"StrikeOut":return G("StrikeOut",Y(Z.Markup,F,"StrikeOut"));case"Caret":return G("Caret",Y(Z.Markup,F,"Caret"));case"Stamp":return G("Stamp",Y(Z.Stamp,F));case"Ink":return G("Ink",Y(Z.Ink,F));case"Popup":return G("Popup",Y(Z.Popup,F));case"FileAttachment":return G("FileAttachment",Y(Z.FileAttachment,F));case"Widget":return G("Widget",Y(Z.Widget,F));case"Redact":return G("Redact",Y(Z.Redact,F));case"Projection":return G("Projection",Y(Z.Projection,F));case"Sound":case"Movie":case"Screen":case"PrinterMark":case"TrapNet":case"Watermark":case"3D":case"RichMedia":return G(J,X(F));default:return{kind:J,raw:F,_extras:U(F)}}}function Y(F,$,Q){if(typeof F!=="function")return X($);return Q!==void 0?F($,Q):F($)}function G(F,$){return $.kind=F,$}function X(F){let $=R(F);return O($,F,null),$}function U(F){let $={},Q=F.entries;for(let J of Object.keys(Q))$[J]=Q[J];return $}function z(F){if(!F||F.type!=="array"||F.items.length!==4)return null;let $=Array(4);for(let Q=0;Q<4;Q++){let J=F.items[Q];if(!J||J.type!=="int"&&J.type!=="real")return null;$[Q]=J.value}return $}function q(F){if(!F||F.type!=="array")return null;let $=[];for(let Q of F.items){if(!Q)return null;if(Q.type==="int"||Q.type==="real")$.push(Q.value);else if(Q.type==="array")$.push(C(Q));else return null}return $}function C(F){if(!F||F.type!=="array")return null;let $=[];for(let Q of F.items){if(!Q)return null;if(Q.type!=="int"&&Q.type!=="real")return null;$.push(Q.value)}return $}function K(F,$){if(!F)return $;if(F.type!=="int"&&F.type!=="real")return $;return F.value|0}function V(F,$){if(!F)return $;if(F.type!=="int"&&F.type!=="real")return $;return F.value}return{BASE_KEYS:D,typeBaseAnnot:R,captureExtras:O,typeAnnot:M}}}),a({name:"pdfAnnotExtended",dependencies:["pdfErrors","pdfParserObj","pdfAnnot"],factory:function(A,P,j){let{ParseError:H}=A,{isType:D}=P,{typeBaseAnnot:R,captureExtras:O}=j,M=new Set(["Watermark","3D","RichMedia","Sound","Movie","Screen","PrinterMark","TrapNet","FreeText"]),Y=Object.freeze(["Square","Circle","Diamond","OpenArrow","ClosedArrow","None","Butt","ROpenArrow","RClosedArrow","Slash"]);function G(J){if(!D(J,"dict"))throw new H("pdf/extra/annot-ext/not-dict","annotation must be a dictionary",{context:{type:J&&J.type}});let Z=J.entries.Subtype;if(!D(Z,"name")||!M.has(Z.value))throw new H("pdf/extra/annot-ext/unsupported","unsupported extended annotation subtype",{context:{subtype:Z&&Z.value}});switch(Z.value){case"Watermark":return X(J);case"3D":return U(J);case"RichMedia":return z(J);case"Sound":return q(J);case"Movie":return C(J);case"Screen":return K(J);case"PrinterMark":return V(J);case"TrapNet":return F(J);case"FreeText":return $(J)}throw new H("pdf/extra/annot-ext/unreachable","unreachable")}function X(J){let Z=R(J);Z.kind="Watermark";let W=J.entries;return Z.fixedPrint=D(W.FixedPrint,"dict")?W.FixedPrint:null,O(Z,J,new Set(["FixedPrint"])),Z}function U(J){let Z=R(J);Z.kind="3D";let W=J.entries;return Z["3DD"]=W["3DD"]||null,Z["3DV"]=W["3DV"]||null,Z["3DA"]=W["3DA"]||null,Z["3DI"]=D(W["3DI"],"bool")?W["3DI"].value:null,Z["3DB"]=W["3DB"]||null,O(Z,J,new Set(["3DD","3DV","3DA","3DI","3DB"])),Z}function z(J){let Z=R(J);Z.kind="RichMedia";let W=J.entries;return Z.richMediaContent=W.RichMediaContent||null,Z.richMediaSettings=W.RichMediaSettings||null,O(Z,J,new Set(["RichMediaContent","RichMediaSettings"])),Z}function q(J){let Z=R(J);Z.kind="Sound";let W=J.entries;return Z.sound=W.Sound||null,Z.name=D(W.Name,"name")?W.Name.value:null,O(Z,J,new Set(["Sound","Name"])),Z}function C(J){let Z=R(J);Z.kind="Movie";let W=J.entries;return Z.t=D(W.T,"string")?W.T.value:null,Z.movie=W.Movie||null,Z.activation=W.A||null,O(Z,J,new Set(["T","Movie","A"])),Z}function K(J){let Z=R(J);Z.kind="Screen";let W=J.entries;return Z.t=D(W.T,"string")?W.T.value:null,Z.mk=W.MK||null,Z.a=W.A||null,Z.aa=W.AA||null,O(Z,J,new Set(["T","MK","A","AA"])),Z}function V(J){let Z=R(J);Z.kind="PrinterMark";let W=J.entries;return Z.mn=D(W.MN,"name")?W.MN.value:null,O(Z,J,new Set(["MN"])),Z}function F(J){let Z=R(J);Z.kind="TrapNet";let W=J.entries;return Z.lastModified=D(W.LastModified,"string")?W.LastModified.value:null,Z.version=W.Version||null,Z.annotStates=W.AnnotStates||null,Z.fontFauxing=W.FontFauxing||null,O(Z,J,new Set(["LastModified","Version","AnnotStates","FontFauxing"])),Z}function $(J){let Z=R(J);Z.kind="FreeText";let W=J.entries;Z.da=D(W.DA,"string")?W.DA.value:null,Z.q=W.Q&&(W.Q.type==="int"||W.Q.type==="real")?W.Q.value|0:null,Z.rc=D(W.RC,"string")?W.RC.value:D(W.RC,"stream")?W.RC:null,Z.ds=D(W.DS,"string")?W.DS.value:null,Z.cl=D(W.CL,"array")?Q(W.CL):null,Z.it=D(W.IT,"name")?W.IT.value:null,Z.be=W.BE||null,Z.rd=D(W.RD,"array")?Q(W.RD):null;let I=null;if(D(W.LE,"name"))I=W.LE.value;else if(D(W.LE,"array"))I=W.LE.items.filter((N)=>D(N,"name")).map((N)=>N.value);return Z.le=I,O(Z,J,new Set(["DA","Q","RC","DS","CL","IT","BE","RD","LE"])),Z}function Q(J){let Z=[];for(let W of J.items){if(!W||W.type!=="int"&&W.type!=="real")return null;Z.push(W.value)}return Z}return{typeAnnotExtended:G,typeWatermarkAnnot:X,type3DAnnot:U,typeRichMediaAnnot:z,typeSoundAnnot:q,typeMovieAnnot:C,typeScreenAnnot:K,typePrinterMarkAnnot:V,typeTrapNetAnnot:F,typeFreeTextExtended:$,FREETEXT_LINE_ENDINGS:Y}}}),a({name:"pdfAOutputIntent",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze({"1a":{part:1,level:"a",iso:"ISO 19005-1:2005",notes:"accessible"},"1b":{part:1,level:"b",iso:"ISO 19005-1:2005",notes:"basic"},"2a":{part:2,level:"a",iso:"ISO 19005-2:2011",notes:"accessible"},"2b":{part:2,level:"b",iso:"ISO 19005-2:2011",notes:"basic"},"2u":{part:2,level:"u",iso:"ISO 19005-2:2011",notes:"unicode"},"3a":{part:3,level:"a",iso:"ISO 19005-3:2012",notes:"accessible + embed"},"3b":{part:3,level:"b",iso:"ISO 19005-3:2012",notes:"basic + embed"},"3u":{part:3,level:"u",iso:"ISO 19005-3:2012",notes:"unicode + embed"},"4":{part:4,level:null,iso:"ISO 19005-4:2020",notes:"PDF 2.0 base"},"4e":{part:4,level:"e",iso:"ISO 19005-4:2020",notes:"engineering"},"4f":{part:4,level:"f",iso:"ISO 19005-4:2020",notes:"embedded files allowed"}}),R=new Set(["1a","1b","2a","2b","2u","3a","3b","3u","4","4e","4f"]);function O(G){if(!H(G,"dict"))throw new j("pdf/extra/pdfa/not-dict","OutputIntent must be a dictionary",{context:{type:G&&G.type}});let X=G.entries,U=H(X.S,"name")?X.S.value:null,z=H(X.OutputConditionIdentifier,"string")?new TextDecoder("latin1").decode(X.OutputConditionIdentifier.value):null,q=U==="GTS_PDFA1",C=M(z);return{isPdfA:q,subtype:U,identifier:z,profile:C,part:C?D[C].part:null,level:C?D[C].level:null,catalog:C?D[C]:null,raw:G}}function M(G){if(!G)return null;let X=G.match(/PDF\/A[-\s]?(1[ab]|2[abu]|3[abu]|4[ef]?)/i);if(!X)return null;let U=X[1].toLowerCase();return R.has(U)?U:null}function Y(G){if(!G||typeof G!=="object")throw new j("pdf/extra/pdfa/lint/bad-doc","validatePdfABasics requires a typed document object",{context:{type:typeof G}});let X=[],U=[],z=G.catalog&&G.catalog.entries;if(G.encrypted)X.push("PDF/A forbids encryption");if(!z)return X.push("catalog missing"),{pass:!1,errors:X,warnings:U};if(!z.Metadata)X.push("catalog requires /Metadata XMP stream");if(z.MarkInfo&&!H(z.MarkInfo,"dict"))X.push("/MarkInfo must be a dictionary");if(!z.OutputIntents)U.push("catalog has no /OutputIntents array");return{pass:X.length===0,errors:X,warnings:U}}return{detectPdfAProfile:O,validatePdfABasics:Y,PDFA_PROFILES:D}}}),a({name:"pdfUaTagged",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze({required:Object.freeze(["Document","Part","Sect","Art","H","P","L","LI","Lbl","LBody","Table","TR","TH","TD","Figure"]),forbidden:Object.freeze(["Span"]),figure:Object.freeze(["Alt","ActualText"]),headings:Object.freeze(["H","H1","H2","H3","H4","H5","H6"])});function R(M){if(!M||typeof M!=="object")throw new j("pdf/extra/pdfua/bad-doc","validatePdfUa requires a typed document object",{context:{type:typeof M}});let Y=[],G=[],X=M.catalog&&M.catalog.entries;if(!X)return Y.push("catalog missing"),{pass:!1,errors:Y,warnings:G};if(!X.StructTreeRoot)Y.push("catalog requires /StructTreeRoot");if(!X.Lang||!H(X.Lang,"string"))Y.push("catalog requires /Lang string");if(!X.MarkInfo)Y.push("catalog requires /MarkInfo dictionary");else if(!H(X.MarkInfo,"dict"))Y.push("/MarkInfo must be a dictionary");else{let U=X.MarkInfo.entries.Marked;if(!H(U,"bool")||U.value!==!0)Y.push("/MarkInfo /Marked must be true")}if(X.ViewerPreferences&&H(X.ViewerPreferences,"dict")){let U=X.ViewerPreferences.entries.DisplayDocTitle;if(!H(U,"bool")||U.value!==!0)G.push("/ViewerPreferences /DisplayDocTitle should be true")}else G.push("catalog should have /ViewerPreferences");if(typeof M.p==="number"){if((M.p&512)===0)Y.push("permissions bit 10 (accessible) must be set")}return{pass:Y.length===0,errors:Y,warnings:G}}function O(M){if(!M||typeof M!=="object")throw new j("pdf/extra/pdfua/struct/bad-node","validateUaStructElement requires a node",{context:{type:typeof M}});let Y=[],G=[];if(M.s==="Figure"){if(!M.alt&&!M.actualText)Y.push("Figure requires /Alt or /ActualText")}if(D.forbidden.includes(M.s))G.push("avoid /"+M.s+" as a top-level structure type");return{pass:Y.length===0,errors:Y,warnings:G}}return{validatePdfUa:R,validateUaStructElement:O,UA_STRUCTURE:D}}}),a({name:"pdfFormActionsExtended",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["GoTo3DView","SetOCGState","Trans","Rendition","Hide","SubmitForm","ResetForm","ImportData","JavaScript"]),R={GoTo3DView:new Set(["Type","S","Next","TA","V"]),SetOCGState:new Set(["Type","S","Next","State","PreserveRB"]),Trans:new Set(["Type","S","Next","Trans"]),Rendition:new Set(["Type","S","Next","R","AN","OP","JS"]),Hide:new Set(["Type","S","Next","T","H"]),SubmitForm:new Set(["Type","S","Next","F","Fields","Flags","CharSet"]),ResetForm:new Set(["Type","S","Next","Fields","Flags"]),ImportData:new Set(["Type","S","Next","F"]),JavaScript:new Set(["Type","S","Next","JS"])};function O($){return R[$]||new Set(["Type","S","Next"])}function M($){if(!H($,"dict"))throw new j("pdf/extra/action-ext/not-dict","action must be a dictionary",{context:{type:$&&$.type}});let Q=$.entries;if(Q.Type&&(Q.Type.type!=="name"||Q.Type.value!=="Action"))throw new j("pdf/extra/action-ext/bad-type","/Type entry must be /Action",{context:{actual:Q.Type.value}});if(!H(Q.S,"name")||!D.has(Q.S.value))throw new j("pdf/extra/action-ext/unsupported","unsupported extended action subtype",{context:{subtype:Q.S&&Q.S.value}});let J;switch(Q.S.value){case"GoTo3DView":J=Y(Q);break;case"SetOCGState":J=G(Q);break;case"Trans":J=X(Q);break;case"Rendition":J=U(Q);break;case"Hide":J=z(Q);break;case"SubmitForm":J=q(Q);break;case"ResetForm":J=C(Q);break;case"ImportData":J=K(Q);break;case"JavaScript":J=V(Q);break}return J.kind=Q.S.value,J.raw=$,J._extras=F(Q,O(Q.S.value)),J}function Y($){return{ta:$.TA||null,v:$.V||null}}function G($){if(!H($.State,"array"))throw new j("pdf/extra/action-ext/bad-state","/State must be an array",{context:{type:$.State&&$.State.type}});return{state:$.State.items,preserveRB:H($.PreserveRB,"bool")?$.PreserveRB.value:!0}}function X($){if(!H($.Trans,"dict"))throw new j("pdf/extra/action-ext/bad-trans","/Trans must be a dict",{context:{type:$.Trans&&$.Trans.type}});return{trans:$.Trans}}function U($){let Q=$.OP&&($.OP.type==="int"||$.OP.type==="real")?$.OP.value|0:null,J=H($.JS,"string")||H($.JS,"stream");return{r:$.R||null,an:$.AN||null,op:Q,js:H($.JS,"string")?$.JS.value:H($.JS,"stream")?$.JS:null,sandboxed:J?!0:void 0}}function z($){if(!$.T)throw new j("pdf/extra/action-ext/missing-t","Hide action requires /T");let Q;if(H($.T,"string")||$.T.type==="ref")Q=[$.T];else if(H($.T,"array"))Q=$.T.items;else throw new j("pdf/extra/action-ext/bad-t","/T must be string, ref, or array",{context:{type:$.T.type}});return{targets:Q,h:H($.H,"bool")?$.H.value:!0}}function q($){if(!$.F)throw new j("pdf/extra/action-ext/missing-f","SubmitForm requires /F (URL)");return{url:$.F,fields:H($.Fields,"array")?$.Fields.items:null,flags:$.Flags&&($.Flags.type==="int"||$.Flags.type==="real")?$.Flags.value|0:0,charSet:H($.CharSet,"string")?$.CharSet.value:null,sandboxed:!0}}function C($){return{fields:H($.Fields,"array")?$.Fields.items:null,flags:$.Flags&&($.Flags.type==="int"||$.Flags.type==="real")?$.Flags.value|0:0}}function K($){if(!$.F)throw new j("pdf/extra/action-ext/missing-f","ImportData requires /F (file spec)");return{file:$.F,sandboxed:!0}}function V($){if(!$.JS)throw new j("pdf/extra/action-ext/missing-js","JavaScript action requires /JS");if(!H($.JS,"string")&&!H($.JS,"stream"))throw new j("pdf/extra/action-ext/bad-js","/JS must be string or stream",{context:{type:$.JS.type}});return{js:$.JS,sandboxed:!0}}function F($,Q){let J={};for(let Z of Object.keys($))if(!Q.has(Z))J[Z]=$[Z];return J}return{typeExtendedAction:M,EXTENDED_ACTION_SUBTYPES:D}}}),a({name:"pdfColorSpacesExtended",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["CalGray","CalRGB","Lab","ICCBased","Indexed","Separation","DeviceN","NChannel","Pattern","DeviceGray","DeviceRGB","DeviceCMYK"]);function R(V){if(H(V,"name")){if(!D.has(V.value))return{family:"NamedResource",name:V.value,raw:V};return{family:V.value,raw:V}}if(!H(V,"array")||V.items.length<1)throw new j("pdf/extra/colorspace/bad-shape","color space must be name or non-empty array",{context:{type:V&&V.type}});let F=V.items[0];if(!H(F,"name"))throw new j("pdf/extra/colorspace/bad-family","color space array must start with a name");let $=F.value;if(!D.has($))throw new j("pdf/extra/colorspace/unknown","unknown color-space family",{context:{family:$}});switch($){case"CalGray":return{family:$,...M(V),raw:V};case"CalRGB":return{family:$,...Y(V),raw:V};case"Lab":return{family:$,...G(V),raw:V};case"ICCBased":return{family:$,...X(V),raw:V};case"Indexed":return{family:$,...U(V),raw:V};case"Separation":return{family:$,...z(V),raw:V};case"DeviceN":return{family:$,...q(V),raw:V};case"NChannel":return{family:$,...q(V),nChannel:!0,raw:V};case"Pattern":return{family:$,...C(V),raw:V};default:return{family:$,raw:V}}}function O(V){if(!H(V,"dict"))throw new j("pdf/extra/colorspace/cal-no-dict","Cal* parameters dict missing");return{whitePoint:K(V.entries.WhitePoint,3),blackPoint:K(V.entries.BlackPoint,3),gamma:V.entries.Gamma||null,matrix:K(V.entries.Matrix,9)}}function M(V){if(V.items.length<2)throw new j("pdf/extra/colorspace/cal-truncated","CalGray needs dict");return{params:O(V.items[1])}}function Y(V){if(V.items.length<2)throw new j("pdf/extra/colorspace/cal-truncated","CalRGB needs dict");return{params:O(V.items[1])}}function G(V){if(V.items.length<2||!H(V.items[1],"dict"))throw new j("pdf/extra/colorspace/lab-truncated","Lab needs dict");let F=V.items[1].entries;return{whitePoint:K(F.WhitePoint,3),blackPoint:K(F.BlackPoint,3),range:K(F.Range,4)}}function X(V){if(V.items.length<2||!H(V.items[1],"stream"))throw new j("pdf/extra/colorspace/icc-no-stream","ICCBased needs a stream");let F=V.items[1],$=F.dict.entries;return{n:$.N&&($.N.type==="int"||$.N.type==="real")?$.N.value|0:null,alt:$.Alternate||null,range:K($.Range,null),metadata:$.Metadata||null,profile:F}}function U(V){if(V.items.length<4)throw new j("pdf/extra/colorspace/indexed-truncated","Indexed needs [base hival lookup]");let F=V.items[2];if(!F||F.type!=="int"&&F.type!=="real")throw new j("pdf/extra/colorspace/indexed-bad-hival","Indexed hival must be numeric");return{base:V.items[1],hival:F.value|0,lookup:V.items[3]}}function z(V){if(V.items.length<4)throw new j("pdf/extra/colorspace/sep-truncated","Separation needs [name alternate tintTransform]");return{colorant:H(V.items[1],"name")?V.items[1].value:null,alternate:V.items[2],tintTransform:V.items[3]}}function q(V){if(V.items.length<4)throw new j("pdf/extra/colorspace/devn-truncated","DeviceN needs [names alternate tintTransform attributes?]");let F=null;if(H(V.items[1],"array"))F=V.items[1].items.map(($)=>H($,"name")?$.value:null);return{names:F,alternate:V.items[2],tintTransform:V.items[3],attributes:V.items[4]||null}}function C(V){return{base:V.items[1]||null}}function K(V,F){if(!H(V,"array"))return null;let $=[];for(let Q of V.items){if(!Q||Q.type!=="int"&&Q.type!=="real")return null;$.push(Q.value)}if(F!=null&&$.length!==F)return null;return $}return{typeColorSpace:R,COLOR_SPACE_FAMILIES:D}}}),a({name:"pdfShadingTyped",dependencies:["pdfErrors","pdfParserObj"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=($)=>$&&($.type==="int"||$.type==="real");function R($){let Q;if(H($,"dict"))Q=$;else if(H($,"stream"))Q=$.dict;else throw new j("pdf/extra/shading/not-dict-or-stream","Shading must be dict or stream",{context:{type:$&&$.type}});let J=Q.entries;if(!D(J.ShadingType))throw new j("pdf/extra/shading/missing-type","/ShadingType is required and must be numeric",{context:{type:J.ShadingType&&J.ShadingType.type}});let Z=J.ShadingType.value|0;if(Z<1||Z>7)throw new j("pdf/extra/shading/bad-type","invalid /ShadingType (must be 1..7)",{context:{st:Z}});let W={shadingType:Z,colorSpace:J.ColorSpace||null,background:H(J.Background,"array")?J.Background.items:null,bbox:H(J.BBox,"array")?J.BBox.items.map((S)=>D(S)?S.value:null):null,antiAlias:H(J.AntiAlias,"bool")?J.AntiAlias.value:!1,raw:$,_extras:{}},I;switch(Z){case 1:I=O(J);break;case 2:I=M(J);break;case 3:I=Y(J);break;case 4:I=G(J);break;case 5:I=X(J);break;case 6:I=U(J);break;case 7:I=z(J);break}Object.assign(W,I);let N=new Set(["ShadingType","ColorSpace","Background","BBox","AntiAlias","Domain","Matrix","Function","Coords","Extend","BitsPerCoordinate","BitsPerComponent","BitsPerFlag","Decode","VerticesPerRow"]);for(let S of Object.keys(J))if(!N.has(S))W._extras[S]=J[S];return W}function O($){return{domain:H($.Domain,"array")?K($.Domain):[0,1,0,1],matrix:H($.Matrix,"array")?K($.Matrix):[1,0,0,1,0,0],function:$.Function||null}}function M($){return V($.Coords,4,"Axial /Coords"),{coords:K($.Coords),domain:H($.Domain,"array")?K($.Domain):[0,1],function:$.Function||null,extend:C($.Extend)}}function Y($){return V($.Coords,6,"Radial /Coords"),{coords:K($.Coords),domain:H($.Domain,"array")?K($.Domain):[0,1],function:$.Function||null,extend:C($.Extend)}}function G($){return q($,!0)}function X($){let Q=q($,!1);if(!D($.VerticesPerRow))throw new j("pdf/extra/shading/lattice-missing-vpr","Lattice shading requires /VerticesPerRow");return Q.verticesPerRow=$.VerticesPerRow.value|0,Q}function U($){return q($,!0)}function z($){return q($,!0)}function q($,Q){if(!D($.BitsPerCoordinate)||!D($.BitsPerComponent))throw new j("pdf/extra/shading/mesh-missing-bits","mesh shading requires /BitsPerCoordinate and /BitsPerComponent");if(!H($.Decode,"array"))throw new j("pdf/extra/shading/mesh-missing-decode","mesh shading requires /Decode");let J={bitsPerCoordinate:$.BitsPerCoordinate.value|0,bitsPerComponent:$.BitsPerComponent.value|0,decode:K($.Decode),function:$.Function||null};if(Q){if(!D($.BitsPerFlag))throw new j("pdf/extra/shading/mesh-missing-flag","this mesh shading requires /BitsPerFlag");J.bitsPerFlag=$.BitsPerFlag.value|0}return J}function C($){if(!H($,"array")||$.items.length!==2)return[!1,!1];return[H($.items[0],"bool")?$.items[0].value:!1,H($.items[1],"bool")?$.items[1].value:!1]}function K($){if(!H($,"array"))return null;let Q=[];for(let J of $.items){if(!D(J))return null;Q.push(J.value)}return Q}function V($,Q,J){if(!H($,"array")||$.items.length!==Q)throw new j("pdf/extra/shading/bad-coords",`${J} must be an array of ${Q} numbers`,{context:{actualLen:$&&$.items&&$.items.length}})}function F($){let Q;if(H($,"dict"))Q=$;else if(H($,"stream"))Q=$.dict;else throw new j("pdf/extra/function/not-dict-or-stream","Function must be dict or stream",{context:{type:$&&$.type}});let J=Q.entries;if(!D(J.FunctionType))throw new j("pdf/extra/function/missing-type","/FunctionType is required");let Z=J.FunctionType.value|0;if(![0,2,3,4].includes(Z))throw new j("pdf/extra/function/bad-type","/FunctionType must be 0, 2, 3, or 4",{context:{ft:Z}});return{functionType:Z,domain:K(J.Domain),range:K(J.Range),c0:K(J.C0),c1:K(J.C1),n:D(J.N)?J.N.value:null,functions:H(J.Functions,"array")?J.Functions.items:null,bounds:K(J.Bounds),encode:K(J.Encode),size:K(J.Size),bitsPerSample:D(J.BitsPerSample)?J.BitsPerSample.value|0:null,order:D(J.Order)?J.Order.value|0:null,decode:K(J.Decode),raw:$}}return{typeShading:R,typeFunction:F}}}),a({name:"pdfTransparencyTyped",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze(["Normal","Compatible","Multiply","Screen","Overlay","Darken","Lighten","ColorDodge","ColorBurn","HardLight","SoftLight","Difference","Exclusion","Hue","Saturation","Color","Luminosity"]),R=(X)=>X&&(X.type==="int"||X.type==="real");function O(X){if(!H(X,"dict"))throw new j("pdf/extra/transparency-group/not-dict","Transparency Group must be a dict",{context:{type:X&&X.type}});let U=X.entries;if(U.Type&&(U.Type.type!=="name"||U.Type.value!=="Group"))throw new j("pdf/extra/transparency-group/bad-type","/Type entry must be /Group",{context:{actual:U.Type.value}});if(!H(U.S,"name")||U.S.value!=="Transparency")throw new j("pdf/extra/transparency-group/bad-s","/S must be /Transparency",{context:{actual:U.S&&U.S.value}});let z=new Set(["Type","S","CS","I","K"]),q={s:"Transparency",cs:U.CS||null,isolated:H(U.I,"bool")?U.I.value:!1,knockout:H(U.K,"bool")?U.K.value:!1,raw:X,_extras:{}};for(let C of Object.keys(U))if(!z.has(C))q._extras[C]=U[C];return q}function M(X){if(!H(X,"dict"))throw new j("pdf/extra/soft-mask/not-dict","Soft Mask must be a dict",{context:{type:X&&X.type}});let U=X.entries;if(U.Type&&(U.Type.type!=="name"||U.Type.value!=="Mask"))throw new j("pdf/extra/soft-mask/bad-type","/Type entry must be /Mask",{context:{actual:U.Type.value}});if(!H(U.S,"name")||U.S.value!=="Alpha"&&U.S.value!=="Luminosity")throw new j("pdf/extra/soft-mask/bad-s","/S must be /Alpha or /Luminosity",{context:{actual:U.S&&U.S.value}});if(!U.G)throw new j("pdf/extra/soft-mask/missing-g","Soft Mask requires /G (transparency group XObject)");let z=new Set(["Type","S","G","BC","TR"]),q={kind:U.S.value,g:U.G,backdrop:H(U.BC,"array")?G(U.BC):null,transfer:U.TR||null,raw:X,_extras:{}};for(let C of Object.keys(U))if(!z.has(C))q._extras[C]=U[C];return q}function Y(X){if(!X)return null;if(H(X,"name"))return D.includes(X.value)?X.value:null;if(H(X,"array")){for(let U of X.items)if(H(U,"name")&&D.includes(U.value))return U.value;return null}throw new j("pdf/extra/blend-mode/bad-type","/BM must be name or array of names",{context:{type:X.type}})}function G(X){let U=[];for(let z of X.items){if(!R(z))return null;U.push(z.value)}return U}return{typeTransparencyGroup:O,typeSoftMask:M,resolveBlendMode:Y,BLEND_MODES:D}}}),a({name:"pdfSigPades",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze({"adbe.x509.rsa_sha1":{pades:!1,kind:"legacy"},"adbe.pkcs7.sha1":{pades:!1,kind:"legacy"},"adbe.pkcs7.detached":{pades:!1,kind:"pkcs7-detached"},"ETSI.CAdES.detached":{pades:!0,kind:"pades-cades"},"ETSI.RFC3161":{pades:!0,kind:"doc-timestamp"}});function R(z,q){if(!H(z,"dict"))throw new j("pdf/extra/pades/not-dict","signature dict must be a dictionary",{context:{type:z&&z.type}});let C=z.entries,K=H(C.SubFilter,"name")?C.SubFilter.value:null,V=K?D[K]:null,F=!!(V&&V.pades),$=!!(K==="ETSI.RFC3161"||C.M&&H(C.M,"string")||q&&q.hasSignatureTimestamp),Q=null;if(F){let J=!!(q&&q.dss);if(q&&q.hasDocTimestampOverDss)Q="B-LTA";else if(J)Q="B-LT";else if($)Q="B-T";else Q="B-B"}return{subFilter:K,isPades:F,level:Q,hasTimestamp:$}}function O(z){if(!H(z,"array"))throw new j("pdf/extra/pades/bad-reference","/Reference must be an array",{context:{type:z&&z.type}});let q=[];for(let C of z.items){if(!H(C,"dict"))throw new j("pdf/extra/pades/bad-reference-item","/Reference items must be dicts");let K=C.entries;if(K.Type&&(K.Type.type!=="name"||K.Type.value!=="SigRef"))throw new j("pdf/extra/pades/bad-reference-type","/Type of /Reference item must be /SigRef",{context:{actual:K.Type.value}});q.push({transformMethod:H(K.TransformMethod,"name")?K.TransformMethod.value:null,transformParams:H(K.TransformParams,"dict")?K.TransformParams:null,data:K.Data||null,digestMethod:H(K.DigestMethod,"name")?K.DigestMethod.value:null,raw:C})}return q}function M(z){if(!H(z,"dict"))throw new j("pdf/extra/pades/dss-not-dict","DSS must be a dictionary",{context:{type:z&&z.type}});let q=z.entries;if(q.Type&&(q.Type.type!=="name"||q.Type.value!=="DSS"))throw new j("pdf/extra/pades/dss-bad-type","/Type of DSS dict must be /DSS",{context:{actual:q.Type.value}});let C={certs:G(q.Certs,"DSS /Certs"),crls:G(q.CRLs,"DSS /CRLs"),ocsps:G(q.OCSPs,"DSS /OCSPs"),vri:H(q.VRI,"dict")?Y(q.VRI):null,raw:z,_extras:{}},K=new Set(["Type","Certs","CRLs","OCSPs","VRI"]);for(let V of Object.keys(q))if(!K.has(V))C._extras[V]=q[V];return C}function Y(z){let q={};for(let C of Object.keys(z.entries)){let K=z.entries[C];if(!H(K,"dict"))continue;let V=K.entries;q[C]={cert:G(V.Cert,"VRI /Cert"),crl:G(V.CRL,"VRI /CRL"),ocsp:G(V.OCSP,"VRI /OCSP"),tu:H(V.TU,"string")?V.TU.value:null,ts:V.TS||null}}return q}function G(z,q){if(!z)return null;if(!H(z,"array"))throw new j("pdf/extra/pades/dss-bad-array",`${q} must be an array`,{context:{type:z.type}});return z.items}function X(z){let q=[];if(!z||z.transformMethod!=="DocMDP")return q.push({code:"pdf/extra/pades/mdp/wrong-transform",message:"reference is not a DocMDP transform",context:{transformMethod:z&&z.transformMethod}}),{valid:!1,level:null,issues:q};if(!z.transformParams||!H(z.transformParams,"dict"))return q.push({code:"pdf/extra/pades/mdp/missing-params",message:"DocMDP missing /TransformParams dict"}),{valid:!1,level:null,issues:q};let C=z.transformParams.entries,K=null;if(C.P)if(C.P.type!=="int")q.push({code:"pdf/extra/pades/mdp/bad-p-type",message:"/P must be an integer",context:{type:C.P.type}});else if(C.P.value<1||C.P.value>3)q.push({code:"pdf/extra/pades/mdp/bad-p-value",message:"/P must be 1, 2 or 3",context:{value:C.P.value}});else K=C.P.value;else K=2;if(C.V&&C.V.type==="name"&&C.V.value!=="1.2"&&C.V.value!=="2.2")q.push({code:"pdf/extra/pades/mdp/bad-version",message:"unknown DocMDP /V",context:{v:C.V.value}});if(!z.digestMethod)q.push({code:"pdf/extra/pades/mdp/missing-digest",message:"DocMDP reference missing /DigestMethod"});return{valid:q.length===0,level:K,issues:q}}function U(z){if(!Array.isArray(z))throw new j("pdf/extra/pades/chain/bad-input","validateBLtaChain expects an array of steps",{context:{type:typeof z}});let q=[],C=!1,K=!1;for(let F=0;F<z.length;F++){let $=z[F];if(!$||!$.sigDict)throw new j("pdf/extra/pades/chain/missing-sig","step missing sigDict",{context:{index:F}});if($.hasDss)C=!0;if($.hasDocTimestamp&&C)K=!0;let Q={dss:C?{}:void 0,hasDocTimestampOverDss:K,hasSignatureTimestamp:!!$.hasSignatureTimestamp},J=R($.sigDict,Q);q.push({index:F,level:J.level,isPades:J.isPades})}let V=q[q.length-1];return{chainLevel:V?V.level:null,trace:q}}return{detectPadesProfile:R,typeReferenceArray:O,typeDSS:M,validateDocMdp:X,validateBLtaChain:U,SIG_SUBFILTERS:D}}}),a({name:"pdfSigAesGcm",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j,EncryptionError:H}=A,{isType:D}=P,R=Object.freeze({None:{cipher:"none",keyBits:0,notes:"identity / stream-as-is"},V2:{cipher:"rc4",keyBits:40,notes:"legacy RC4 (deprecated)"},AESV2:{cipher:"aes",keyBits:128,mode:"cbc",notes:"AES-128 CBC (R4)"},AESV3:{cipher:"aes",keyBits:256,mode:"cbc",notes:"AES-256 CBC (R6, ISO 32000-2)"},AESV4:{cipher:"aes",keyBits:256,mode:"gcm",notes:"AES-256 GCM (ISO/TS 32003)"}}),O=new Set(["Filter","SubFilter","V","Length","CF","StmF","StrF","EFF","R","O","U","OE","UE","Perms","P","EncryptMetadata"]),M=new Set(["Type","CFM","AuthEvent","Length"]);function Y(U){if(!D(U,"dict"))throw new j("pdf/extra/sig-aes-gcm/not-dict","/Encrypt must be a dictionary",{context:{type:U&&U.type}});let z=U.entries,q={v:D(z.V,"int")?z.V.value:null,r:D(z.R,"int")?z.R.value:null,length:D(z.Length,"int")?z.Length.value:null,stmF:D(z.StmF,"name")?z.StmF.value:null,strF:D(z.StrF,"name")?z.StrF.value:null,eff:D(z.EFF,"name")?z.EFF.value:null,cf:{},hasAesGcm:!1,raw:U,_extras:{}};if(z.CF!==void 0){if(!D(z.CF,"dict"))throw new j("pdf/extra/sig-aes-gcm/bad-cf","/CF must be a dictionary",{context:{type:z.CF.type}});for(let C of Object.keys(z.CF.entries)){let K=z.CF.entries[C];if(!D(K,"dict"))throw new j("pdf/extra/sig-aes-gcm/bad-cf-entry","/CF entry must be a dictionary",{context:{name:C}});if(q.cf[C]=G(K),q.cf[C].cfm==="AESV4")q.hasAesGcm=!0}}for(let C of Object.keys(z))if(!O.has(C))q._extras[C]=z[C];return q}function G(U){if(!D(U,"dict"))throw new j("pdf/extra/sig-aes-gcm/cf-entry-not-dict","CF entry must be a dictionary",{context:{type:U&&U.type}});let z=U.entries,q=D(z.CFM,"name")?z.CFM.value:null,C={cfm:q,authEvent:D(z.AuthEvent,"name")?z.AuthEvent.value:null,length:D(z.Length,"int")?z.Length.value:null,catalog:q&&R[q]?R[q]:null,raw:U,_extras:{}};for(let K of Object.keys(z))if(!M.has(K))C._extras[K]=z[K];return C}function X(U){if(!(U instanceof Uint8Array))throw new H("pdf/extra/sig-aes-gcm/bad-input","framed input must be a Uint8Array",{context:{type:typeof U}});if(U.length<28)throw new H("pdf/extra/sig-aes-gcm/too-short","AES-GCM framed blob must be at least 28 bytes (IV+tag)",{context:{length:U.length}});return{iv:U.subarray(0,12),ciphertext:U.subarray(12,U.length-16),tag:U.subarray(U.length-16)}}return{typeEncryptForGcm:Y,typeCfEntry:G,validateGcmFraming:X,CFM_CATALOG:R}}}),a({name:"pdfDocumentParts",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["Type","Parent","DParts","Start","End","DPM","NodeNameTree"]),R=new Set(["Type","DPartRootNode","RecordLevel","NodeNameList"]);function O(z){if(!H(z,"dict"))throw new j("pdf/extra/dparts/root/not-dict","/DPartRoot must be a dictionary",{context:{type:z&&z.type}});let q=z.entries;if(q.Type&&(q.Type.type!=="name"||q.Type.value!=="DPartRoot"))throw new j("pdf/extra/dparts/root/bad-type","/Type must be /DPartRoot when present",{context:{actual:q.Type.value}});if(!q.DPartRootNode)throw new j("pdf/extra/dparts/root/missing-node","/DPartRoot requires a /DPartRootNode entry");let C={rootNode:q.DPartRootNode,recordLevel:H(q.RecordLevel,"int")?q.RecordLevel.value:null,nodeNameList:U(q.NodeNameList),raw:z,_extras:{}};for(let K of Object.keys(q))if(!R.has(K))C._extras[K]=q[K];return C}function M(z){if(!H(z,"dict"))throw new j("pdf/extra/dparts/node/not-dict","/DPart must be a dictionary",{context:{type:z&&z.type}});let q=z.entries;if(q.Type&&(q.Type.type!=="name"||q.Type.value!=="DPart"))throw new j("pdf/extra/dparts/node/bad-type","/Type must be /DPart when present",{context:{actual:q.Type.value}});let C={parent:q.Parent||null,dParts:X(q.DParts),start:H(q.Start,"int")?q.Start.value:null,end:H(q.End,"int")?q.End.value:null,dpm:H(q.DPM,"dict")?Y(q.DPM):null,nodeNameTree:q.NodeNameTree||null,raw:z,_extras:{}};if(q.DPM&&!H(q.DPM,"dict"))throw new j("pdf/extra/dparts/node/bad-dpm","/DPM must be a dictionary",{context:{type:q.DPM.type}});for(let K of Object.keys(q))if(!D.has(K))C._extras[K]=q[K];return C}function Y(z){if(!H(z,"dict"))throw new j("pdf/extra/dparts/dpm/not-dict","/DPM must be a dictionary",{context:{type:z&&z.type}});let q=z.entries,C={entries:{},raw:z};for(let K of Object.keys(q))C.entries[K]=q[K];return C}function G(z,q){if(!z)return;if(typeof q!=="function")throw new j("pdf/extra/dparts/walk/bad-visit","walkDParts requires a visit callback");if(q(z),!z.dParts)return;for(let C of z.dParts)if(H(C,"dict"))G(M(C),q)}function X(z){if(!z)return null;if(z.type!=="array")return null;return z.items.slice()}function U(z){if(!z)return null;if(z.type!=="array")return null;let q=[];for(let C of z.items)if(H(C,"name"))q.push(C.value);else q.push(C);return q}return{typeDPartRoot:O,typeDPart:M,typeDPM:Y,walkDParts:G}}}),a({name:"pdfRedactionIso32005",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["Type","AppliedAt","Tool","Annotations","RD","RO","IC","MarkedRegions"]),R=Object.freeze({begin:"/Redact BMC",beginPropertyList:"/Redact BDC",end:"EMC",notes:"TS 32005 §6.3 — wraps content removed/overlaid by /RD."});function O(z){if(!H(z,"dict"))throw new j("pdf/extra/redact32005/not-dict","redaction record must be a dictionary",{context:{type:z&&z.type}});let q=z.entries,C={appliedAt:H(q.AppliedAt,"string")?q.AppliedAt.value:null,tool:H(q.Tool,"string")?q.Tool.value:null,annotations:X(q.Annotations),rd:Y(q.RD),ro:H(q.RO,"ref")||H(q.RO,"stream")?q.RO:null,ic:G(q.IC),markedRegions:U(q.MarkedRegions),raw:z,_extras:{}};if(q.Annotations&&q.Annotations.type!=="array")throw new j("pdf/extra/redact32005/bad-annotations","/Annotations must be an array",{context:{type:q.Annotations.type}});for(let K of Object.keys(q))if(!D.has(K))C._extras[K]=q[K];return C}function M(z){if(!(z instanceof Uint8Array))throw new j("pdf/extra/redact32005/scan/bad-input","findRedactMarkers requires a Uint8Array",{context:{type:typeof z}});let q=new TextDecoder("latin1").decode(z),C=[],K=/\/Redact\s+(BMC|BDC)/g,V;while((V=K.exec(q))!==null){let F=V.index,$=q.indexOf("EMC",K.lastIndex);if(C.push({beginOffset:F,endOffset:$<0?null:$+3,kind:V[1]}),$>=0)K.lastIndex=$+3}return{regions:C}}function Y(z){if(!z||z.type!=="array")return null;let q=[];for(let C of z.items){if(!C||C.type!=="int"&&C.type!=="real")return null;q.push(C.value)}return q}function G(z){if(!z||z.type!=="array")return null;let q=[];for(let C of z.items){if(!C||C.type!=="int"&&C.type!=="real")return null;q.push(C.value)}return q}function X(z){if(!z||z.type!=="array")return null;return z.items.slice()}function U(z){if(!z)return null;if(z.type!=="array")return null;return z.items.slice()}return{typeRedactionRecord:O,findRedactMarkers:M,REDACT_MARKERS:R}}}),a({name:"pdfXPrepress",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze({"X-1a:2001":{iso:"ISO 15930-1:2001",color:"cmyk+spot",flavor:"closed"},"X-1a:2003":{iso:"ISO 15930-4:2003",color:"cmyk+spot",flavor:"closed"},"X-3:2002":{iso:"ISO 15930-3:2002",color:"any",flavor:"closed"},"X-3:2003":{iso:"ISO 15930-6:2003",color:"any",flavor:"closed"},"X-4":{iso:"ISO 15930-7:2010",color:"any",flavor:"transparency"},"X-4p":{iso:"ISO 15930-7:2010",color:"any",flavor:"external-profile"},"X-5g":{iso:"ISO 15930-8:2010",color:"any",flavor:"external-graphics"},"X-5n":{iso:"ISO 15930-8:2010",color:"n-channel",flavor:"external-profile"},"X-5pg":{iso:"ISO 15930-8:2010",color:"any",flavor:"external-both"},"X-6":{iso:"ISO 15930-9:2020",color:"any",flavor:"pdf-2.0"}}),R=Object.freeze({None:"no transformation",Convert:"convert to OutputIntent profile",Tag:"tag with profile only",Embed:"embed source profile"});function O(G){if(!H(G,"dict"))throw new j("pdf/extra/pdfx/not-dict","OutputIntent must be a dictionary",{context:{type:G&&G.type}});let X=G.entries,U=H(X.S,"name")?X.S.value:null,z=H(X.OutputConditionIdentifier,"string")?new TextDecoder("latin1").decode(X.OutputConditionIdentifier.value):null,q=M(z);return{isPdfX:U==="GTS_PDFX",subtype:U,identifier:z,profile:q,catalog:q?D[q]:null,raw:G}}function M(G){if(!G)return null;let X=G.match(/PDF\/(X-(?:1a:200[13]|3:200[23]|4p?|5(?:g|n|pg)|6))/i);if(!X)return null;let U=X[1].toUpperCase().replace("X-","X-");for(let z of Object.keys(D))if(z.toLowerCase()===U.toLowerCase())return z;return null}function Y(G){if(!G||!G.entries)throw new j("pdf/extra/pdfx/lint/bad-page","lintPdfXPage requires a typed page dict",{context:{type:typeof G}});let X=[],U=[],z=G.entries;if(!z.TrimBox&&!z.ArtBox)X.push("page requires /TrimBox or /ArtBox");if(z.TrimBox&&z.ArtBox)X.push("page must not have both /TrimBox and /ArtBox");if(!z.BleedBox)U.push("page has no /BleedBox");return{pass:X.length===0,errors:X,warnings:U}}return{typePdfXOutputIntent:O,lintPdfXPage:Y,PDFX_PROFILES:D,COLOR_POLICY:R}}}),a({name:"pdfWellTagged",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,H=Object.freeze({"wtpdf/artifact":"decorative content must be tagged Artifact","wtpdf/span/empty":"Span used as pseudo-paragraph wrapper","wtpdf/table/empty":"Table must contain at least one TR","wtpdf/table/row":"TR must contain TH or TD children","wtpdf/list/empty":"L must contain at least one LI","wtpdf/list/item":"LI should contain Lbl + LBody","wtpdf/heading/jump":"heading level jump (e.g. H1 -> H3) is discouraged"});function D(Y){if(!Y||typeof Y!=="object")throw new j("pdf/extra/wtpdf/bad-tree","lintWellTagged requires a structure tree object",{context:{type:typeof Y}});let G=[],X=[],U=0;function z(q){if(!q||typeof q!=="object"||!q.s)return;switch(q.s){case"Table":R(q,G);break;case"L":O(q,G,X);break;case"Span":if(!q.role)X.push({rule:"wtpdf/span/empty",message:H["wtpdf/span/empty"]});break;case"Artifact":break;default:break}let C=/^H([1-6])$/.exec(q.s);if(C){let K=Number(C[1]);if(U&&K>U+1)X.push({rule:"wtpdf/heading/jump",message:H["wtpdf/heading/jump"],from:U,to:K});U=K}if(Array.isArray(q.k)){for(let K of q.k)if(K&&typeof K==="object")z(K)}}return z(Y),{pass:G.length===0,errors:G,warnings:X}}function R(Y,G){let X=(Y.k||[]).filter((U)=>U&&U.s==="TR");if(X.length===0){G.push({rule:"wtpdf/table/empty",message:H["wtpdf/table/empty"]});return}for(let U of X)if((U.k||[]).filter((z)=>z&&(z.s==="TH"||z.s==="TD")).length===0)G.push({rule:"wtpdf/table/row",message:H["wtpdf/table/row"]})}function O(Y,G,X){let U=(Y.k||[]).filter((z)=>z&&z.s==="LI");if(U.length===0){G.push({rule:"wtpdf/list/empty",message:H["wtpdf/list/empty"]});return}for(let z of U){let q={Lbl:!1,LBody:!1};for(let C of z.k||[]){if(C&&C.s==="Lbl")q.Lbl=!0;if(C&&C.s==="LBody")q.LBody=!0}if(!q.Lbl||!q.LBody)X.push({rule:"wtpdf/list/item",message:H["wtpdf/list/item"]})}}function M(Y){if(!Array.isArray(Y))throw new j("pdf/extra/wtpdf/regions/bad-input","checkArtifactPlacement requires an array",{context:{type:typeof Y}});let G=[];for(let X of Y){if(!X||typeof X!=="object")continue;if(X.tagged===!1&&X.role!=="Artifact")G.push({rule:"wtpdf/artifact",message:H["wtpdf/artifact"],mcid:X.mcid})}return{pass:G.length===0,errors:G,warnings:[]}}return{lintWellTagged:D,checkArtifactPlacement:M,WTPDF_RULES:H}}}),a({name:"pdfOptionalContentExtended",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=Object.freeze(["And","Or","Not"]);function R(G,X){if(!G)throw new j("pdf/extra/ocgx/ve/null","VE expression is null");if(!(X instanceof Set))throw new j("pdf/extra/ocgx/ve/bad-state","evaluateVE requires a Set of on refs",{context:{type:typeof X}});if(G.type==="ref")return X.has(G.num+" "+G.gen);if(G.type!=="array"||G.items.length===0)throw new j("pdf/extra/ocgx/ve/bad-shape","VE must be an array starting with an operator",{context:{type:G.type}});let U=G.items[0];if(!H(U,"name")||!D.includes(U.value))throw new j("pdf/extra/ocgx/ve/bad-op","VE operator must be /And, /Or or /Not",{context:{actual:U&&U.value}});let z=G.items.slice(1);if(U.value==="Not"){if(z.length!==1)throw new j("pdf/extra/ocgx/ve/not-arity","/Not requires exactly one operand");return!R(z[0],X)}if(U.value==="And")return z.every((q)=>R(q,X));return z.some((q)=>R(q,X))}function O(G){if(!G||G.type!=="array")throw new j("pdf/extra/ocgx/order/not-array","/Order must be an array",{context:{type:G&&G.type}});let X=[];for(let U of G.items){if(!U)continue;if(U.type==="string")X.push({kind:"heading",text:U.value});else if(U.type==="array")X.push({kind:"group",children:O(U)});else if(U.type==="ref")X.push({kind:"ocg",ref:{num:U.num,gen:U.gen}});else X.push({kind:"other",value:U})}return X}function M(G){if(!G||G.type!=="array")throw new j("pdf/extra/ocgx/rbg/not-array","/RBGroups must be an array",{context:{type:G&&G.type}});let X=[];for(let U of G.items){if(!U||U.type!=="array")throw new j("pdf/extra/ocgx/rbg/bad-group","/RBGroups entry must be an array",{context:{type:U&&U.type}});let z=[];for(let q of U.items){if(!q||q.type!=="ref")continue;z.push({num:q.num,gen:q.gen})}X.push(z)}return X}function Y(G){if(!G)return{view:!1,design:!1,names:[]};let X=[];if(G.type==="name")X.push(G.value);else if(G.type==="array"){for(let U of G.items)if(H(U,"name"))X.push(U.value)}else throw new j("pdf/extra/ocgx/intent/bad","/Intent must be name or array of names",{context:{type:G.type}});return{view:X.includes("View"),design:X.includes("Design"),names:X}}return{evaluateVE:R,typeOrderTree:O,typeRBGroups:M,classifyOcgIntent:Y,VE_OPERATORS:D}}}),a({name:"pdfEmbeddedFilesPortfolio",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j=new Set(["D","T","H","C"]),H=new Set(["S","D","N","F","Desc","ModDate","CreationDate","Size"]),D=new Set(["Type","Schema","D","View","Sort","Navigator","Folders","Colors","Split"]);function R($){return $&&$.type==="dict"}function O($){return $&&$.type==="name"}function M($){return $&&$.type==="string"}function Y($){return $&&$.type==="array"}function G($){return $&&$.type==="bool"}function X($){return $&&$.type==="int"}function U($,Q){if(!R(Q))throw new P("pdf/portfolio/bad-schema-field","/Schema field must be a dictionary",{context:{field:$,type:Q&&Q.type}});let J=Q.entries,Z={name:$,raw:Q,_extras:{}};if(J.Subtype){if(!O(J.Subtype)||!H.has(J.Subtype.value))throw new P("pdf/portfolio/bad-schema-subtype","/Subtype on /Schema field must be one of S,D,N,F,Desc,ModDate,CreationDate,Size",{context:{field:$,actual:J.Subtype.value}});Z.subtype=J.Subtype.value}if(J.N){if(!M(J.N))throw new P("pdf/portfolio/bad-schema-n","/N must be a string",{context:{field:$}});Z.displayName=J.N.value}if(J.O!=null){if(!X(J.O))throw new P("pdf/portfolio/bad-schema-o","/O must be an integer",{context:{field:$}});Z.order=J.O.value}if(J.V!=null){if(!G(J.V))throw new P("pdf/portfolio/bad-schema-v","/V must be boolean",{context:{field:$}});Z.visible=J.V.value}if(J.E!=null){if(!G(J.E))throw new P("pdf/portfolio/bad-schema-e","/E must be boolean",{context:{field:$}});Z.editable=J.E.value}let W=new Set(["Subtype","N","O","V","E"]);for(let I of Object.keys(J))if(!W.has(I))Z._extras[I]=J[I];return Z}function z($){if(!R($))throw new P("pdf/portfolio/bad-schema","/Schema must be a dictionary",{context:{type:$&&$.type}});let Q={};for(let[J,Z]of Object.entries($.entries))Q[J]=U(J,Z);return{fields:Q,raw:$}}function q($){if(!R($))throw new P("pdf/portfolio/bad-sort","/Sort must be a dictionary");let Q=$.entries,J={raw:$,_extras:{}};if(Q.S)if(O(Q.S))J.keys=[Q.S.value];else if(Y(Q.S)){let Z=[];for(let W of Q.S.items){if(!O(W))throw new P("pdf/portfolio/bad-sort-s-item","/Sort /S array items must be names");Z.push(W.value)}J.keys=Z}else throw new P("pdf/portfolio/bad-sort-s","/Sort /S must be a name or array of names");if(Q.A!=null)if(G(Q.A))J.ascending=[Q.A.value];else if(Y(Q.A)){let Z=[];for(let W of Q.A.items){if(!G(W))throw new P("pdf/portfolio/bad-sort-a-item","/Sort /A array items must be booleans");Z.push(W.value)}J.ascending=Z}else throw new P("pdf/portfolio/bad-sort-a","/Sort /A must be a bool or array of bools");for(let Z of Object.keys(Q))if(Z!=="S"&&Z!=="A")J._extras[Z]=Q[Z];return J}function C($){if($&&$.type==="ref")return{ref:{num:$.num,gen:$.gen},raw:$};if(!R($))throw new P("pdf/portfolio/bad-navigator","/Navigator must be a dict or ref");return{raw:$,entries:$.entries}}function K($){if(!R($)&&!($&&$.type==="stream"))throw new P("pdf/portfolio/bad-ci","/CI custom icon must be dict or stream",{context:{type:$&&$.type}});return{raw:$}}function V($){if(!R($))throw new P("pdf/portfolio/not-dict","Collection must be a dictionary",{context:{type:$&&$.type}});let Q=$.entries;if(Q.Type&&(!O(Q.Type)||Q.Type.value!=="Collection"))throw new P("pdf/portfolio/bad-type","/Type must be /Collection",{context:{actual:Q.Type&&Q.Type.value}});let J={raw:$,_extras:{}};if(Q.Schema)J.schema=z(Q.Schema);if(Q.D){if(!M(Q.D))throw new P("pdf/portfolio/bad-d","/D must be a string");J.initialDoc=Q.D.value}if(Q.View){if(!O(Q.View)||!j.has(Q.View.value))throw new P("pdf/portfolio/bad-view","/View must be one of D, T, H, C",{context:{actual:Q.View&&Q.View.value}});J.view=Q.View.value}if(Q.Sort)J.sort=q(Q.Sort);if(Q.Navigator)J.navigator=C(Q.Navigator);for(let Z of Object.keys(Q))if(!D.has(Z))J._extras[Z]=Q[Z];return J}function F($){if(!R($))throw new P("pdf/portfolio/ci-not-dict","/CI item must be a dict");let Q={raw:$,fields:{},_extras:{}};for(let[J,Z]of Object.entries($.entries)){if(J==="Type")continue;if(J==="CI")Q.customIcon=K(Z);else Q.fields[J]=Z}return Q}return{typePortfolio:V,typeSchema:z,typeSchemaField:U,typeSort:q,typeNavigator:C,typeCustomIcon:K,typeCollectionItem:F,VIEW_MODES:j,SCHEMA_SUBTYPES:H}}}),a({name:"pdfAssociatedFiles2",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j=new Set(["Source","Data","Alternative","Supplement","EncryptedPayload","FormData","Schema","Unspecified"]),H=new Set(["Catalog","Page","XObject","StructElem","Annot","Mark","DParams"]);function D(q){return q&&q.type==="dict"}function R(q){return q&&q.type==="name"}function O(q){return q&&q.type==="array"}function M(q){return q&&q.type==="ref"}function Y(q,C){if(M(q)){if(typeof C==="function")return{resolved:!0,dict:C(q),ref:{num:q.num,gen:q.gen}};return{resolved:!1,ref:{num:q.num,gen:q.gen}}}if(D(q))return{resolved:!0,dict:q};throw new P("pdf/af2/bad-entry","/AF entry must be a dict or indirect reference",{context:{type:q&&q.type}})}function G(q,C,K){let V=Y(q,C);if(!V.resolved)return{ref:V.ref,resolved:!1};let F=V.dict;if(!D(F))throw new P("pdf/af2/not-filespec","resolved /AF entry must be a dict",{context:{index:K}});let $=F.entries;if($.Type&&(!R($.Type)||$.Type.value!=="Filespec"))throw new P("pdf/af2/bad-filespec-type","expected /Type /Filespec",{context:{index:K,actual:$.Type&&$.Type.value}});let Q=null,J=!1;if($.AFRelationship){if(!R($.AFRelationship))throw new P("pdf/af2/bad-relationship","/AFRelationship must be a name",{context:{index:K,type:$.AFRelationship.type}});Q=$.AFRelationship.value,J=j.has(Q)}let Z={filespec:F,relationship:Q,standard:J,resolved:!0};if(V.ref)Z.ref=V.ref;return Z}function X(q,C){let K=C&&C.resolveRef,V=C&&C.carrier;if(V&&!H.has(V))throw new P("pdf/af2/bad-carrier","unknown /AF carrier hint",{context:{carrier:V}});if(!O(q))throw new P("pdf/af2/not-array","/AF must be an array",{context:{type:q&&q.type}});let F=[];for(let $=0;$<q.items.length;$++)F.push(G(q.items[$],K,$));return{entries:F,carrier:V||null}}function U(q){return j.has(String(q))}function z(){return Array.from(j)}return{typeAf:X,typeAfEntry:G,resolveFileSpec:Y,isStandardRelationship:U,listStandardRelationships:z,STANDARD_REL:j,CARRIER_HINTS:H}}}),a({name:"pdfXmpExtended",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j={"http://purl.org/dc/elements/1.1/":"dc","http://ns.adobe.com/xap/1.0/":"xmp","http://ns.adobe.com/xap/1.0/mm/":"xmpMM","http://ns.adobe.com/pdf/1.3/":"pdf","http://www.aiim.org/pdfa/ns/id/":"pdfaid","http://www.aiim.org/pdfua/ns/id/":"pdfuaid"};function H(X){if(typeof X==="string")return X;if(X instanceof Uint8Array)return new TextDecoder("utf-8").decode(X);throw new P("pdf/xmp2/bad-input","XMP input must be string or Uint8Array",{context:{type:typeof X}})}function D(X){let U={},z=/xmlns:([\w-]+)\s*=\s*"([^"]*)"/g,q;while(q=z.exec(X))U[q[1]]=q[2];return U}function R(X){let U={},z=/([\w:-]+)\s*=\s*"([^"]*)"/g,q;while(q=z.exec(X))if(!q[1].startsWith("xmlns"))U[q[1]]=q[2];return U}function O(X){return X.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&amp;/g,"&")}function M(X){let U=H(X),z=U.length,q=/<\/?([\w:-]+)([^>]*?)\/?>/g,C=[{ns:{}}],K=[],V=0;while(V<z){q.lastIndex=V;let F=q.exec(U);if(!F)break;let $=F.index,Q=F[0],J=F[1],Z=F[2]||"",W=Q.startsWith("</"),I=Q.endsWith("/>");if(W){C.pop(),V=$+Q.length;continue}let N=C[C.length-1].ns,S=Object.assign({},N,D(Z)),B=R(Z),x=null,v=J,E=J.indexOf(":");if(E>=0)x=J.slice(0,E),v=J.slice(E+1);let T=x?S[x]:null,_=T?j[T]:null,w=null;if(!I){let h=`</${J}>`,l=U.indexOf(h,$+Q.length);if(l<0)throw new P("pdf/xmp2/unclosed-tag",`unclosed <${J}>`,{context:{offset:$}});let y=U.slice($+Q.length,l);if(!/<[\w]/.test(y))w=O(y.trim());if(C.push({ns:S,qname:J}),w!==null)C.pop(),V=l+h.length;else V=$+Q.length}else V=$+Q.length;if(_&&(w!==null||Object.keys(B).length>0))K.push({prefix:_,ns:T,localName:v,value:w,attrs:B})}return K}function Y(X){let U={};for(let z of X){if(!U[z.prefix])U[z.prefix]={};let q=U[z.prefix];if(q[z.localName]===void 0)q[z.localName]=z.value;else if(Array.isArray(q[z.localName]))q[z.localName].push(z.value);else q[z.localName]=[q[z.localName],z.value]}return U}function G(X){let U=M(X);return{pairs:U,grouped:Y(U)}}return{parsePacket:G,extract:M,group:Y,KNOWN_NAMESPACES:j}}}),a({name:"pdfLinearizationWrite",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{RenderError:j}=A,{obj:H}=P,D=Object.freeze(["Linearized","L","H","O","E","N","T"]);function R(Y){if(!Y||typeof Y!=="object")throw new j("pdf/extra/linwrite/bad-params","buildLinearizedDict requires a parameters object",{context:{type:typeof Y}});for(let X of["fileLength","firstPageObj","firstPageEnd","pageCount","mainXrefOffset"])if(!Number.isFinite(Y[X]))throw new j("pdf/extra/linwrite/missing-"+X,"parameter "+X+" is required and must be a number",{context:{key:X,type:typeof Y[X]}});if(!Number.isFinite(Y.hintOffset)||!Number.isFinite(Y.hintLength))throw new j("pdf/extra/linwrite/missing-hint","hintOffset and hintLength are required",{context:{hintOffset:Y.hintOffset,hintLength:Y.hintLength}});let G={Linearized:H.real(Y.version!=null?Y.version:1),L:H.int(Y.fileLength),H:H.array([H.int(Y.hintOffset),H.int(Y.hintLength)]),O:H.int(Y.firstPageObj),E:H.int(Y.firstPageEnd),N:H.int(Y.pageCount),T:H.int(Y.mainXrefOffset)};if(Y.firstPage!=null)G.P=H.int(Y.firstPage);return H.dict(G)}function O(){let Y=H.dict({Length:H.int(0),S:H.int(0)});return H.stream(Y,new Uint8Array(0))}function M(Y){if(!Y||Y.type!=="dict")throw new j("pdf/extra/linwrite/validate/not-dict","expected a dict",{context:{type:Y&&Y.type}});let G=[];for(let U of D)if(!Y.entries[U])G.push("missing /"+U);let X=Y.entries.H;if(X&&(X.type!=="array"||X.items.length<2))G.push("/H must be an array of at least 2 integers");return{pass:G.length===0,errors:G,warnings:[]}}return{buildLinearizedDict:R,buildHintStreamStub:O,validateLinearizedDict:M,LINEARIZED_KEYS:D}}}),a({name:"pdf3dRichMedia",dependencies:["pdfErrors","pdfParser"],factory:function(A,P){let{ParseError:j}=A,{isType:H}=P,D=new Set(["Type","Subtype","Rect","3DD","3DV","3DA","3DI","3DB"]),R=new Set(["Type","Subtype","Rect","RichMediaContent","RichMediaSettings"]),O=Object.freeze({A:"active",L:"loaded",U:"uninstantiated"}),M=Object.freeze({XA:"explicit activate",PO:"page open",PV:"page visible"});function Y(q){if(!H(q,"dict"))throw new j("pdf/extra/3d/not-dict","3D annotation must be a dictionary",{context:{type:q&&q.type}});let C=q.entries;if(C.Subtype&&(C.Subtype.type!=="name"||C.Subtype.value!=="3D"))throw new j("pdf/extra/3d/bad-subtype","/Subtype must be /3D",{context:{actual:C.Subtype.value}});if(!C["3DD"])throw new j("pdf/extra/3d/missing-3dd","3D annotation requires /3DD entry");let K={threeDD:C["3DD"],threeDV:C["3DV"]||null,threeDA:H(C["3DA"],"dict")?G(C["3DA"]):null,threeDI:H(C["3DI"],"bool")?C["3DI"].value:null,threeDB:C["3DB"]||null,raw:q,_extras:{}};for(let V of Object.keys(C))if(!D.has(V))K._extras[V]=C[V];return K}function G(q){if(!H(q,"dict"))throw new j("pdf/extra/3d/act/not-dict","/3DA must be a dictionary",{context:{type:q&&q.type}});let C=q.entries;return{a:H(C.A,"name")?C.A.value:null,ais:H(C.AIS,"name")?C.AIS.value:null,d:H(C.D,"name")?C.D.value:null,dis:H(C.DIS,"name")?C.DIS.value:null,tb:H(C.TB,"bool")?C.TB.value:null,np:H(C.NP,"bool")?C.NP.value:null,raw:q}}function X(q){if(!H(q,"dict"))throw new j("pdf/extra/rm/not-dict","RichMedia annotation must be a dictionary",{context:{type:q&&q.type}});let C=q.entries;if(C.Subtype&&(C.Subtype.type!=="name"||C.Subtype.value!=="RichMedia"))throw new j("pdf/extra/rm/bad-subtype","/Subtype must be /RichMedia",{context:{actual:C.Subtype.value}});if(!C.RichMediaContent)throw new j("pdf/extra/rm/missing-content","RichMedia annotation requires /RichMediaContent");let K={content:H(C.RichMediaContent,"dict")?U(C.RichMediaContent):C.RichMediaContent,settings:H(C.RichMediaSettings,"dict")?C.RichMediaSettings:null,raw:q,_extras:{}};for(let V of Object.keys(C))if(!R.has(V))K._extras[V]=C[V];return K}function U(q){if(!H(q,"dict"))throw new j("pdf/extra/rm/content/not-dict","/RichMediaContent must be a dictionary",{context:{type:q&&q.type}});let C=q.entries;return{assets:C.Assets||null,configurations:C.Configurations||null,views:C.Views||null,raw:q}}function z(q){if(q==null)return null;if(typeof q!=="string")throw new j("pdf/extra/rm/state/bad","state must be a string",{context:{type:typeof q}});return O[q]||null}return{type3DAnnot:Y,type3DActivation:G,typeRichMediaAnnot:X,typeRichMediaContent:U,classifyRmInstanceState:z,RM_INSTANCE_STATES:O,ACTIVATION_CONDITIONS:M}}}),a({name:"pdfJbig2Read",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j={0:"symbolDictionary",4:"intermediateTextRegion",6:"immediateTextRegion",7:"immediateLosslessTextRegion",16:"patternDictionary",20:"intermediateHalftoneRegion",22:"immediateHalftoneRegion",23:"immediateLosslessHalftoneRegion",36:"intermediateGenericRegion",38:"immediateGenericRegion",39:"immediateLosslessGenericRegion",40:"intermediateGenericRefinementRegion",42:"immediateGenericRefinementRegion",43:"immediateLosslessGenericRefinementRegion",48:"pageInformation",49:"endOfPage",50:"endOfStripe",51:"endOfFile",52:"profiles",53:"tables",62:"extension"};function H(X,U){return X[U]*16777216+(X[U+1]<<16|X[U+2]<<8|X[U+3])}function D(X,U){let z=X[U]>>>5;if(z!==7)return{count:z,fieldBytes:1};return{count:H(X,U)&536870911,fieldBytes:4}}function R(X){return Math.ceil((X+1)/8)}function O(X){if(X<=255)return 1;if(X<=65535)return 2;return 4}function M(X){if(!(X instanceof Uint8Array))throw new P("pdf/jbig2/bad-input","JBIG2Decode expects Uint8Array");let U=[],z=0,q=0;while(z+11<=X.length){let C=z,K=H(X,z);z+=4;let V=X[z++],F=V&63,$=V>>6&1,Q=V>>7&1,J=D(X,z);z+=J.fieldBytes,z+=R(J.count);let Z=O(Math.max(K,q));if(z+=J.count*Z,z+4>X.length)throw new P("pdf/jbig2/truncated-header","JBIG2 segment header truncated",{context:{segNum:K,offset:C}});if(z+=1,z+4>X.length)throw new P("pdf/jbig2/truncated-data-length","JBIG2 segment data length truncated",{context:{segNum:K,offset:C}});let W=H(X,z);z+=4;let I=z;if(W!==4294967295){if(I+W>X.length)throw new P("pdf/jbig2/truncated-data","JBIG2 segment data truncated",{context:{segNum:K,dataLength:W}});z=I+W}else z=X.length;if(U.push({segmentNumber:K,type:F,typeName:j[F]||"unknown",referredCount:J.count,retain:!!$,deferredNonRetain:!!Q,dataOffset:I,dataLength:W===4294967295?null:W,unknownLength:W===4294967295}),q=Math.max(q,K),F===51)break}return U}function Y(X){return M(X).filter((U)=>U.type===36||U.type===38||U.type===39)}function G(X){throw new P("pdf/jbig2/not-implemented","JBIG2Decode full decode not implemented — header-only",{context:{status:"partial"}})}return{parseSegments:M,enumerateGenericRegions:Y,decode:G,SEGMENT_TYPES:j,STATUS:"partial — header-only"}}}),a({name:"pdfMisc",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j=new Set(["EnableJavaScripts"]);function H(K){return K&&K.type==="dict"}function D(K){return K&&K.type==="name"}function R(K){return K&&K.type==="array"}function O(K){return K&&K.type==="bool"}function M(K){return K&&K.type==="int"}function Y(K){if(!H(K))throw new P("pdf/misc/spider-not-dict","/SpiderInfo must be a dict");let V=K.entries,F={raw:K,_extras:{}};if(V.V){if(!M(V.V)&&!(V.V&&V.V.type==="real"))throw new P("pdf/misc/spider-bad-V","/SpiderInfo /V must be numeric");F.version=V.V.value}if(V.C){if(!R(V.C))throw new P("pdf/misc/spider-bad-C","/SpiderInfo /C must be an array");F.commands=V.C.items}let $=new Set(["V","C"]);for(let Q of Object.keys(V))if(!$.has(Q))F._extras[Q]=V[Q];return F}function G(K){if(!R(K))throw new P("pdf/misc/threads-not-array","/Threads must be an array");let V=[];for(let F=0;F<K.items.length;F++){let $=K.items[F];if($.type!=="ref"&&!H($))throw new P("pdf/misc/thread-bad-entry","/Threads entry must be a dict or ref",{context:{index:F}});V.push($)}return V}function X(K){if(!H(K))throw new P("pdf/misc/legal-not-dict","/Legal must be a dict");let V=K.entries,F={raw:K,flags:{},_extras:{}},$=new Set(["JavaScriptActions","LaunchActions","URIActions","MovieActions","SoundActions","HiddenAnnotations","NonEmbeddedFonts","DevDepGS_OP","DevDepGS_HT","DevDepGS_TR","DevDepGS_UCR","DevDepGS_FL","DevDepGS_BG","Annotations","ExternalRefXobjects","ExternalOPIdicts","ExternalStreams","TrueTypeFonts","AlternateImages"]);for(let[Q,J]of Object.entries(V))if($.has(Q)){if(!M(J))throw new P("pdf/misc/legal-bad-flag",`/Legal /${Q} must be an integer count`,{context:{key:Q}});F.flags[Q]=J.value}else if(Q==="Attestation"){if(J.type!=="string")throw new P("pdf/misc/legal-bad-attestation","/Attestation must be a string");F.attestation=J.value}else F._extras[Q]=J;return F}function U(K){if(!R(K))throw new P("pdf/misc/req-not-array","/Requirements must be an array");let V=[];for(let F=0;F<K.items.length;F++){let $=K.items[F];if(!H($))throw new P("pdf/misc/req-bad-entry","/Requirements entry must be a dict",{context:{index:F}});let Q=$.entries;if(!Q.S||!D(Q.S))throw new P("pdf/misc/req-missing-S","/Requirements entry needs /S name",{context:{index:F}});V.push({raw:$,s:Q.S.value,standard:j.has(Q.S.value),rh:Q.RH})}return V}function z(K){if(!H(K))throw new P("pdf/misc/docmdp-not-dict","/DocMDP transform params must be a dict");let V=K.entries,F={raw:K,_extras:{}};if(V.P){if(!M(V.P)||V.P.value<1||V.P.value>3)throw new P("pdf/misc/docmdp-bad-P","/DocMDP /P must be 1, 2, or 3");F.permission=V.P.value}if(V.V){if(!D(V.V))throw new P("pdf/misc/docmdp-bad-V","/DocMDP /V must be a name");F.version=V.V.value}let $=new Set(["Type","P","V"]);for(let Q of Object.keys(V))if(!$.has(Q))F._extras[Q]=V[Q];return F}function q(K){if(!H(K))throw new P("pdf/misc/perms-not-dict","/Perms must be a dict");let V=K.entries,F={raw:K,_extras:{}};if(V.DocMDP)F.docMDP=V.DocMDP;if(V.UR3)F.ur3=V.UR3;if(V.UR)F.ur=V.UR;let $=new Set(["DocMDP","UR3","UR"]);for(let Q of Object.keys(V))if(!$.has(Q))F._extras[Q]=V[Q];return F}function C(K){if(!O(K))throw new P("pdf/misc/needsrendering-bad","/NeedsRendering must be boolean");return K.value}return{typeSpiderInfo:Y,typeThreads:G,typeLegal:X,typeRequirements:U,typeDocMdpParams:z,typePerms:q,typeNeedsRendering:C,REQUIREMENT_S_VALUES:j}}}),a({name:"pdfInfoDictDeprecated",dependencies:["pdfErrors"],factory:function(A){let{ParseError:P}=A,j={Title:{ns:"dc",field:"title"},Author:{ns:"dc",field:"creator"},Subject:{ns:"dc",field:"description"},Keywords:{ns:"pdf",field:"Keywords"},Creator:{ns:"xmp",field:"CreatorTool"},Producer:{ns:"pdf",field:"Producer"},CreationDate:{ns:"xmp",field:"CreateDate"},ModDate:{ns:"xmp",field:"ModifyDate"},Trapped:{ns:"pdf",field:"Trapped"}};function H(G){return G&&G.type==="dict"}function D(G){if(typeof G==="string")return G;if(G&&G.type==="name")return G.value;if(G&&G.type==="string"){let X=G.value;if(X instanceof Uint8Array)return new TextDecoder("latin1").decode(X);return String(X)}if(typeof G==="number")return String(G);throw new P("pdf/info-deprecated/bad-version","PDF version must be string or PDF name",{context:{type:G&&G.type}})}function R(G){let X=/^(\d+)\.(\d+)/.exec(G||"");if(!X)return!1;return parseInt(X[1],10)>=2}function O(G){if(!H(G))return[];let X=[];for(let U of Object.keys(G.entries)){let z=j[U];if(z)X.push({infoKey:U,xmpNamespace:z.ns,xmpField:z.field});else X.push({infoKey:U,xmpNamespace:null,xmpField:null,note:"no standard XMP equivalent"})}return X}function M(G){G=G||{};let X=D(G.version),U=G.info,z=!!G.xmpPresent,q=[];if(U!=null){if(!H(U))throw new P("pdf/info-deprecated/bad-info","/Info must be a dict",{context:{type:U&&U.type}})}let C=R(X);if(C&&U)q.push({code:"pdf/info-deprecated",severity:"warn",message:"/Info is deprecated in PDF 2.0 — use the XMP metadata stream instead",suggestions:O(U)});if(C&&U&&!z)q.push({code:"pdf/info-without-xmp",severity:"warn",message:"PDF 2.0 document carries /Info but no XMP /Metadata stream"});return{version:X,isPdf2:C,hasInfo:U!=null,xmpPresent:z,warnings:q}}function Y(G){return j[G]||null}return{lint:M,mapInfoKey:Y,suggestionsFor:O,INFO_TO_XMP:j,isVersion2OrHigher:R}}}),a({name:"pdfSandbox",dependencies:["pdfErrors"],factory:function(A){let{ContractError:P}=A,j={Launch:{severity:"error",message:"/Launch action present — external execution "+"requested by document"},JavaScript:{severity:"error",message:"/JavaScript action present — script "+"execution requested by document"},ImportData:{severity:"error",message:"/ImportData action present — file-system "+"read requested by document"},SubmitForm:{severity:"warning",message:"/SubmitForm action present — network "+"submission requested by document"},Rendition:{severity:"warning",message:"/Rendition action carries /JS payload"},URI:{severity:"warning",message:"/URI action present — external navigation "+"requested by document"}};function H(R){if(!R||typeof R!=="object")return null;if(R.kind==="Rendition"&&!R.sandboxed)return null;let O=j[R.kind];if(!O)return null;return{kind:R.kind,code:"pdf/sandbox/active-"+R.kind.toLowerCase(),severity:O.severity,message:O.message,context:{sandboxed:R.sandboxed===!0}}}function D(R){if(!R||typeof R[Symbol.iterator]!=="function")throw new P("pdf/sandbox/bad-input","lintActions expects an iterable of action records");let O=[],M=!1;for(let Y of R){let G=H(Y);if(G){if(O.push(G),G.severity==="error")M=!0}}return{sandboxed:!0,issues:O,hasActiveContent:O.length>0,hasErrors:M}}return{lintAction:H,lintActions:D,ACTIVE_KINDS:j}}});let R0=M0("pdf");return R0.use({name:"pdfContentOpsExtended",register(){return{["pdfContentOpsExtended"]:M0("pdfContentOpsExtended")}}}),R0.use({name:"pdfFontCidTyped",register(){return{["pdfFontCidTyped"]:M0("pdfFontCidTyped")}}}),R0.use({name:"pdfFontColorTagging",register(){return{["pdfFontColorTagging"]:M0("pdfFontColorTagging")}}}),R0.use({name:"pdfTaggedPdfTyped",register(){return{["pdfTaggedPdfTyped"]:M0("pdfTaggedPdfTyped")}}}),R0.use({name:"pdfAnnotExtended",register(){return{["pdfAnnotExtended"]:M0("pdfAnnotExtended")}}}),R0.use({name:"pdfAOutputIntent",register(){return{["pdfAOutputIntent"]:M0("pdfAOutputIntent")}}}),R0.use({name:"pdfUaTagged",register(){return{["pdfUaTagged"]:M0("pdfUaTagged")}}}),R0.use({name:"pdfFormActionsExtended",register(){return{["pdfFormActionsExtended"]:M0("pdfFormActionsExtended")}}}),R0.use({name:"pdfColorSpacesExtended",register(){return{["pdfColorSpacesExtended"]:M0("pdfColorSpacesExtended")}}}),R0.use({name:"pdfShadingTyped",register(){return{["pdfShadingTyped"]:M0("pdfShadingTyped")}}}),R0.use({name:"pdfTransparencyTyped",register(){return{["pdfTransparencyTyped"]:M0("pdfTransparencyTyped")}}}),R0.use({name:"pdfSigPades",register(){return{["pdfSigPades"]:M0("pdfSigPades")}}}),R0.use({name:"pdfSigAesGcm",register(){return{["pdfSigAesGcm"]:M0("pdfSigAesGcm")}}}),R0.use({name:"pdfDocumentParts",register(){return{["pdfDocumentParts"]:M0("pdfDocumentParts")}}}),R0.use({name:"pdfRedactionIso32005",register(){return{["pdfRedactionIso32005"]:M0("pdfRedactionIso32005")}}}),R0.use({name:"pdfXPrepress",register(){return{["pdfXPrepress"]:M0("pdfXPrepress")}}}),R0.use({name:"pdfWellTagged",register(){return{["pdfWellTagged"]:M0("pdfWellTagged")}}}),R0.use({name:"pdfOptionalContentExtended",register(){return{["pdfOptionalContentExtended"]:M0("pdfOptionalContentExtended")}}}),R0.use({name:"pdfEmbeddedFilesPortfolio",register(){return{["pdfEmbeddedFilesPortfolio"]:M0("pdfEmbeddedFilesPortfolio")}}}),R0.use({name:"pdfAssociatedFiles2",register(){return{["pdfAssociatedFiles2"]:M0("pdfAssociatedFiles2")}}}),R0.use({name:"pdfXmpExtended",register(){return{["pdfXmpExtended"]:M0("pdfXmpExtended")}}}),R0.use({name:"pdfLinearizationWrite",register(){return{["pdfLinearizationWrite"]:M0("pdfLinearizationWrite")}}}),R0.use({name:"pdf3dRichMedia",register(){return{["pdf3dRichMedia"]:M0("pdf3dRichMedia")}}}),R0.use({name:"pdfJbig2Read",register(){return{["pdfJbig2Read"]:M0("pdfJbig2Read")}}}),R0.use({name:"pdfMisc",register(){return{["pdfMisc"]:M0("pdfMisc")}}}),R0.use({name:"pdfInfoDictDeprecated",register(){return{["pdfInfoDictDeprecated"]:M0("pdfInfoDictDeprecated")}}}),R0.use({name:"pdfSandbox",register(){return{["pdfSandbox"]:M0("pdfSandbox")}}}),R0}};export{q$ as pdfFullBundled};