salty-crypto 0.3.1 → 1.0.0-rc.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 (107) hide show
  1. package/README.md +3 -3
  2. package/browser-demo.html +1 -1
  3. package/dist/salty-crypto.d.mts +348 -0
  4. package/dist/salty-crypto.d.ts +36 -87
  5. package/dist/salty-crypto.global.js +2 -0
  6. package/dist/salty-crypto.global.js.map +1 -0
  7. package/dist/salty-crypto.js +2 -1
  8. package/dist/salty-crypto.js.map +1 -0
  9. package/dist/salty-crypto.mjs +2 -0
  10. package/dist/salty-crypto.mjs.map +1 -0
  11. package/lib/aead/chacha20poly1305.d.ts +1 -1
  12. package/lib/aead/chacha20poly1305.js +5 -5
  13. package/lib/aead/chacha20poly1305.js.map +1 -1
  14. package/lib/aead.d.ts +2 -2
  15. package/lib/aead.js +2 -2
  16. package/lib/aead.js.map +1 -1
  17. package/lib/bytes.d.ts +1 -1
  18. package/lib/bytes.js +1 -1
  19. package/lib/bytes.js.map +1 -1
  20. package/lib/cipher/chacha20.d.ts +1 -1
  21. package/lib/cipher/chacha20.js +1 -1
  22. package/lib/cipher/chacha20.js.map +1 -1
  23. package/lib/cipher.d.ts +2 -2
  24. package/lib/cipher.js +2 -2
  25. package/lib/cipher.js.map +1 -1
  26. package/lib/dh/x25519.js +1 -1
  27. package/lib/dh/x25519.js.map +1 -1
  28. package/lib/dh.js +3 -3
  29. package/lib/dh.js.map +1 -1
  30. package/lib/hash/blake2s.d.ts +4 -4
  31. package/lib/hash/blake2s.js +5 -5
  32. package/lib/hash/blake2s.js.map +1 -1
  33. package/lib/hash/poly1305.d.ts +4 -4
  34. package/lib/hash/poly1305.js +4 -4
  35. package/lib/hash/poly1305.js.map +1 -1
  36. package/lib/hash.d.ts +2 -2
  37. package/lib/hash.js +3 -3
  38. package/lib/hash.js.map +1 -1
  39. package/lib/hkdf.d.ts +1 -1
  40. package/lib/hkdf.js +2 -2
  41. package/lib/hkdf.js.map +1 -1
  42. package/lib/hmac.d.ts +1 -1
  43. package/lib/hmac.js +2 -2
  44. package/lib/hmac.js.map +1 -1
  45. package/lib/index.d.ts +22 -22
  46. package/lib/index.js +23 -23
  47. package/lib/index.js.map +1 -1
  48. package/lib/io.js +2 -0
  49. package/lib/io.js.map +1 -1
  50. package/lib/noise/algorithms.d.ts +6 -6
  51. package/lib/noise/algorithms.js +1 -1
  52. package/lib/noise/algorithms.js.map +1 -1
  53. package/lib/noise/cipherstate.d.ts +2 -2
  54. package/lib/noise/cipherstate.js +3 -3
  55. package/lib/noise/cipherstate.js.map +1 -1
  56. package/lib/noise/handshake.d.ts +7 -7
  57. package/lib/noise/handshake.js +6 -6
  58. package/lib/noise/handshake.js.map +1 -1
  59. package/lib/noise/patterns.js +1 -1
  60. package/lib/noise/patterns.js.map +1 -1
  61. package/lib/noise/profiles.d.ts +1 -1
  62. package/lib/noise/profiles.js +4 -4
  63. package/lib/noise/profiles.js.map +1 -1
  64. package/lib/noise/rekey.d.ts +1 -1
  65. package/lib/noise/rekey.js +2 -2
  66. package/lib/noise/rekey.js.map +1 -1
  67. package/lib/noise.js +1 -1
  68. package/lib/noise.js.map +1 -1
  69. package/lib/nonce.js +1 -1
  70. package/lib/nonce.js.map +1 -1
  71. package/lib/random.js +2 -3
  72. package/lib/random.js.map +1 -1
  73. package/package.json +29 -23
  74. package/src/.DS_Store +0 -0
  75. package/src/aead/chacha20poly1305.ts +7 -7
  76. package/src/aead.ts +3 -3
  77. package/src/bytes.ts +1 -1
  78. package/src/cipher/chacha20.ts +3 -3
  79. package/src/cipher.ts +3 -3
  80. package/src/dh/x25519.ts +1 -1
  81. package/src/dh.ts +3 -3
  82. package/src/hash/blake2s.ts +2 -2
  83. package/src/hash/poly1305.ts +2 -2
  84. package/src/hash.ts +3 -3
  85. package/src/hkdf.ts +3 -3
  86. package/src/hmac.ts +3 -3
  87. package/src/index.ts +23 -23
  88. package/src/io.ts +3 -0
  89. package/src/noise/algorithms.ts +7 -7
  90. package/src/noise/cipherstate.ts +4 -4
  91. package/src/noise/handshake.ts +8 -8
  92. package/src/noise/patterns.ts +1 -1
  93. package/src/noise/profiles.ts +5 -5
  94. package/src/noise/rekey.ts +3 -3
  95. package/src/noise.ts +1 -1
  96. package/src/nonce.ts +1 -1
  97. package/src/random.ts +2 -3
  98. package/test/{tests/aead.test.ts → aead.test.ts} +2 -2
  99. package/test/{tests/blake2.test.ts → blake2.test.ts} +2 -2
  100. package/test/{tests/chacha20.test.ts → chacha20.test.ts} +2 -2
  101. package/test/{tests/io.test.ts → io.test.ts} +2 -2
  102. package/test/{tests/noise.test.ts → noise.test.ts} +2 -2
  103. package/test/{tests/poly1305.test.ts → poly1305.test.ts} +2 -2
  104. package/tsup.config.ts +14 -0
  105. package/rollup.config.js +0 -19
  106. package/test/harness.ts +0 -74
  107. package/test/tsconfig.json +0 -18
@@ -1 +1 @@
1
- {"version":3,"file":"x25519.js","sourceRoot":"","sources":["../../src/dh/x25519.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;AAE3F,uEAAuE;AACvE,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,0DAA0D;AAC1D,oBAAoB;AACpB,KAAK;AACL,6DAA6D;AAC7D,iDAAiD;AAEjD,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAEhD,SAAS,EAAE;IACP,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;AAC9B,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEV,MAAM,OAAO,GAAG,EAAE,EAAE,CAAC;AACrB,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AACpB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEf,SAAS,QAAQ,CAAC,CAAe;IAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;QACzB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC3B,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;KACxB;IACD,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAe,EAAE,CAAe,EAAE,CAAS;IACzD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACV,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KACb;AACL,CAAC;AAED,SAAS,SAAS,CAAC,CAAa,EAAE,CAAe;IAC7C,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;IACf,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACxB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;YACzB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,IAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,IAAI,MAAM,CAAC;SACpB;QACD,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC;QAChB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAC,CAAC,CAAC,CAAC;KACvB;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;QACzB,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC,GAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAE,CAAC,CAAC;KACtB;AACL,CAAC;AAED,SAAS,WAAW,CAAC,CAAe,EAAE,CAAa;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAC,CAAC,GAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC;AACpB,CAAC;AAED,SAAS,CAAC,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe;IACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,CAAC,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe;IACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,CAAC,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe;IACxD,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAElB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,iBAAiB;IAEjB,YAAY;IACZ,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,EAAE,IAAI,CAAC,GAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;IAEvB,aAAa;IACb,CAAC,GAAG,CAAC,CAAC;IACN,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAA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"}
1
+ {"version":3,"file":"x25519.js","sourceRoot":"","sources":["../../src/dh/x25519.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAEhG,uEAAuE;AACvE,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,0DAA0D;AAC1D,oBAAoB;AACpB,KAAK;AACL,6DAA6D;AAC7D,iDAAiD;AAEjD,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAC1C,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAEhD,SAAS,EAAE;IACP,OAAO,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;AAC9B,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEV,MAAM,OAAO,GAAG,EAAE,EAAE,CAAC;AACrB,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AACpB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEf,SAAS,QAAQ,CAAC,CAAe;IAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC3B,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACzB,CAAC;IACD,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAe,EAAE,CAAe,EAAE,CAAS;IACzD,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACV,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,CAAa,EAAE,CAAe;IAC7C,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;IACf,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,CAAC,CAAC,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,IAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,IAAI,MAAM,CAAC;QACrB,CAAC;QACD,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC;QAChB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC,GAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAE,CAAC,CAAC;IACvB,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,CAAe,EAAE,CAAa;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAC,CAAC,GAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC;AACpB,CAAC;AAED,SAAS,CAAC,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe;IACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,CAAC,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe;IACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,CAAC,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe;IACxD,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAElB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACT,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACd,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IACf,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC;IAEf,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,EAAE,IAAK,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,GAAG,IAAI,EAAE,GAAG,GAAG,CAAC;IAChB,iBAAiB;IAEjB,YAAY;IACZ,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,EAAE,IAAI,CAAC,GAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAC,CAAC,CAAC,CAAC;IAEvB,aAAa;IACb,CAAC,GAAG,CAAC,CAAC;IACN,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACpE,CAAC,GAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;IAAE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"}
package/lib/dh.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
- import { randomBytes } from "./random";
4
- import { scalarMult, scalarMultBase } from "./dh/x25519";
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
+ import { randomBytes } from "./random.js";
4
+ import { scalarMult, scalarMultBase } from "./dh/x25519.js";
5
5
  export const X25519 = {
6
6
  NAME: "25519",
7
7
  DHLEN: scalarMult.groupElementLength,
package/lib/dh.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"dh.js","sourceRoot":"","sources":["../src/dh.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;AAE3F,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAYzD,MAAM,CAAC,MAAM,MAAM,GAAO;IACtB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,UAAU,CAAC,kBAAkB;IAEpC,eAAe;QACX,MAAM,EAAE,GAAG,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtC,CAAC;IAED,EAAE,CAAC,EAAa,EAAE,EAAc;QAC5B,OAAO,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;CACJ,CAAC"}
1
+ {"version":3,"file":"dh.js","sourceRoot":"","sources":["../src/dh.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAEhG,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAY5D,MAAM,CAAC,MAAM,MAAM,GAAO;IACtB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,UAAU,CAAC,kBAAkB;IAEpC,eAAe;QACX,MAAM,EAAE,GAAG,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtC,CAAC;IAED,EAAE,CAAC,EAAa,EAAE,EAAc;QAC5B,OAAO,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;CACJ,CAAC"}
@@ -1,9 +1,9 @@
1
1
  export declare const BLAKE2s: {
2
2
  new (key?: Uint8Array, outlen?: number): {
3
- b: Uint8Array;
4
- bv: DataView;
5
- h: Uint32Array;
6
- t: Uint32Array;
3
+ b: Uint8Array<ArrayBuffer>;
4
+ bv: DataView<ArrayBuffer>;
5
+ h: Uint32Array<ArrayBuffer>;
6
+ t: Uint32Array<ArrayBuffer>;
7
7
  c: number;
8
8
  outlen: number;
9
9
  update(input: Uint8Array, offset?: number, length?: number): void;
@@ -1,5 +1,5 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
3
  var _a;
4
4
  function ROTR32(n, bits) {
5
5
  return (n >>> bits) | (n << (32 - bits));
@@ -35,19 +35,19 @@ function sigma(i, j) {
35
35
  }
36
36
  export const BLAKE2s = (_a = class BLAKE2s {
37
37
  static digest(input, key, outlen) {
38
- const p = new BLAKE2s(key, outlen);
38
+ const p = new _a(key, outlen);
39
39
  p.update(input);
40
40
  return p.final();
41
41
  }
42
- constructor(key, outlen = BLAKE2s.OUTBYTES) {
43
- var _a;
42
+ constructor(key, outlen = _a.OUTBYTES) {
43
+ var _b;
44
44
  this.outlen = outlen;
45
45
  this.b = new Uint8Array(64);
46
46
  this.bv = new DataView(this.b.buffer);
47
47
  this.h = Uint32Array.from(blake2s_iv);
48
48
  this.t = new Uint32Array(2);
49
49
  this.c = 0;
50
- const keylen = (_a = key === null || key === void 0 ? void 0 : key.byteLength) !== null && _a !== void 0 ? _a : 0;
50
+ const keylen = (_b = key === null || key === void 0 ? void 0 : key.byteLength) !== null && _b !== void 0 ? _b : 0;
51
51
  if (outlen == 0 || outlen > 32 || keylen > 32) {
52
52
  throw new Error("illegal BLAKE2s parameter length(s)");
53
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"blake2s.js","sourceRoot":"","sources":["../../src/hash/blake2s.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;;AAM3F,SAAS,MAAM,CAAC,CAAS,EAAE,IAAY;IACnC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,KAAK,CAAC,CAAc,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3F,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;IAChC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU;IAC9C,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU;CACjD,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;IAC3B,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACpD,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACpD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IACpD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IACpD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IACpD,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,C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"}
1
+ {"version":3,"file":"blake2s.js","sourceRoot":"","sources":["../../src/hash/blake2s.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;;AAMhG,SAAS,MAAM,CAAC,CAAS,EAAE,IAAY;IACnC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,KAAK,CAAC,CAAc,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;IAC3F,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC;IAChC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU;IAC9C,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU;CACjD,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC;IAC3B,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACpD,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACpD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IACpD,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IACpD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;IACpD,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IACpD,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,C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"}
@@ -1,9 +1,9 @@
1
1
  export declare const Poly1305: {
2
2
  new (key?: Uint8Array, outlen?: number): {
3
- buffer: Uint8Array;
4
- r: Uint16Array;
5
- h: Uint16Array;
6
- pad: Uint16Array;
3
+ buffer: Uint8Array<ArrayBuffer>;
4
+ r: Uint16Array<ArrayBuffer>;
5
+ h: Uint16Array<ArrayBuffer>;
6
+ pad: Uint16Array<ArrayBuffer>;
7
7
  leftover: number;
8
8
  fin: number;
9
9
  blocks(m: Uint8Array, mpos: number, bytes: number): void;
@@ -1,9 +1,9 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
3
  var _a;
4
4
  export const Poly1305 = (_a = class Poly1305 {
5
5
  static digest(input, key, outlen) {
6
- const p = new Poly1305(key, outlen);
6
+ const p = new _a(key, outlen);
7
7
  p.update(input);
8
8
  return p.final();
9
9
  }
@@ -16,7 +16,7 @@ export const Poly1305 = (_a = class Poly1305 {
16
16
  this.fin = 0;
17
17
  if (!key)
18
18
  throw new Error("Poly1305: key required");
19
- if ((outlen !== null && outlen !== void 0 ? outlen : Poly1305.OUTBYTES) !== Poly1305.OUTBYTES)
19
+ if ((outlen !== null && outlen !== void 0 ? outlen : _a.OUTBYTES) !== _a.OUTBYTES)
20
20
  throw new Error("Poly1305: outlen != OUTBYTES");
21
21
  const t0 = key[0] & 0xff | (key[1] & 0xff) << 8;
22
22
  this.r[0] = (t0) & 0x1fff;
@@ -268,7 +268,7 @@ export const Poly1305 = (_a = class Poly1305 {
268
268
  }
269
269
  final(mac) {
270
270
  if (!mac)
271
- mac = new Uint8Array(Poly1305.OUTBYTES);
271
+ mac = new Uint8Array(_a.OUTBYTES);
272
272
  if (this.leftover) {
273
273
  let i = this.leftover;
274
274
  this.buffer[i++] = 1;
@@ -1 +1 @@
1
- {"version":3,"file":"poly1305.js","sourceRoot":"","sources":["../../src/hash/poly1305.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poly1305.js","sourceRoot":"","sources":["../../src/hash/poly1305.ts"],"names":[],"mappings":"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"}
package/lib/hash.d.ts CHANGED
@@ -10,5 +10,5 @@ export interface HashAlgorithm {
10
10
  update(input: Uint8Array, offset?: number, length?: number): void;
11
11
  final(output?: Uint8Array): Uint8Array;
12
12
  }
13
- export { BLAKE2s } from './hash/blake2s';
14
- export { Poly1305 } from './hash/poly1305';
13
+ export { BLAKE2s } from './hash/blake2s.js';
14
+ export { Poly1305 } from './hash/poly1305.js';
package/lib/hash.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
- export { BLAKE2s } from './hash/blake2s';
4
- export { Poly1305 } from './hash/poly1305';
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
+ export { BLAKE2s } from './hash/blake2s.js';
4
+ export { Poly1305 } from './hash/poly1305.js';
5
5
  //# sourceMappingURL=hash.js.map
package/lib/hash.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hash.js","sourceRoot":"","sources":["../src/hash.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;AAkB3F,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../src/hash.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAkBhG,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
package/lib/hkdf.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { HMAC } from './hmac';
1
+ import { HMAC } from './hmac.js';
2
2
  export type HKDF = {
3
3
  (chainingKey: Uint8Array, input: Uint8Array, numOutputs: 2): [Uint8Array, Uint8Array];
4
4
  (chainingKey: Uint8Array, input: Uint8Array, numOutputs: 3): [Uint8Array, Uint8Array, Uint8Array];
package/lib/hkdf.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
- import * as Bytes from './bytes';
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
+ import * as Bytes from './bytes.js';
4
4
  export function makeHKDF(hmac) {
5
5
  function hkdf(chainingKey, input, numOutputs) {
6
6
  const tempKey = hmac(chainingKey, input);
package/lib/hkdf.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hkdf.js","sourceRoot":"","sources":["../src/hkdf.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;AAG3F,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAOjC,MAAM,UAAU,QAAQ,CAAC,IAAU;IAG/B,SAAS,IAAI,CAAC,WAAuB,EAAE,KAAiB,EAAE,UAAiB;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,QAAQ,UAAU,EAAE;YAChB,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACxB,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAClF;IACL,CAAC;IAAA,CAAC;IACF,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"hkdf.js","sourceRoot":"","sources":["../src/hkdf.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAGhG,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAOpC,MAAM,UAAU,QAAQ,CAAC,IAAU;IAG/B,SAAS,IAAI,CAAC,WAAuB,EAAE,KAAiB,EAAE,UAAiB;QACvE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,QAAQ,UAAU,EAAE,CAAC;YACjB,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACxB,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;IACL,CAAC;IAAA,CAAC;IACF,OAAO,IAAI,CAAC;AAChB,CAAC"}
package/lib/hmac.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Hash } from './hash';
1
+ import { Hash } from './hash.js';
2
2
  export type HMAC = {
3
3
  (key: Uint8Array, data: Uint8Array): Uint8Array;
4
4
  readonly NAME: string;
package/lib/hmac.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
- import * as Bytes from './bytes';
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
+ import * as Bytes from './bytes.js';
4
4
  export function makeHMAC(hash) {
5
5
  const HMAC_IPAD = new Uint8Array(hash.BLOCKLEN);
6
6
  HMAC_IPAD.fill(0x36);
package/lib/hmac.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hmac.js","sourceRoot":"","sources":["../src/hmac.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;AAG3F,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAOjC,MAAM,UAAU,QAAQ,CAAC,IAAU;IAC/B,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,CAAC,IAAgB,EAAE,IAAgB,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EACzB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC;IACF,IAAI,CAAC,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;IAChC,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"hmac.js","sourceRoot":"","sources":["../src/hmac.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAGhG,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AAOpC,MAAM,UAAU,QAAQ,CAAC,IAAU;IAC/B,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,CAAC,IAAgB,EAAE,IAAgB,EAAE,EAAE;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,EACzB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC;IACF,IAAI,CAAC,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;IAChC,OAAO,IAAI,CAAC;AAChB,CAAC"}
package/lib/index.d.ts CHANGED
@@ -1,25 +1,25 @@
1
- export * from './aead';
2
- export * as Bytes from './bytes';
3
- export * from './cipher';
4
- export * from './dh';
5
- export * from './hash';
6
- export * from './hkdf';
7
- export * from './hmac';
8
- export * as IO from './io';
9
- export * from './noise';
10
- export * from './nonce';
11
- export * from './random';
12
- import * as chacha20poly1305 from './aead/chacha20poly1305';
13
- import * as chacha20 from './cipher/chacha20';
14
- import * as x25519 from './dh/x25519';
15
- import * as blake2s from './hash/blake2s';
16
- import * as poly1305 from './hash/poly1305';
17
- import * as algorithms from './noise/algorithms';
18
- import * as cipherstate from './noise/cipherstate';
19
- import * as handshake from './noise/handshake';
20
- import * as patterns from './noise/patterns';
21
- import * as profiles from './noise/profiles';
22
- import * as rekey from './noise/rekey';
1
+ export * from './aead.js';
2
+ export * as Bytes from './bytes.js';
3
+ export * from './cipher.js';
4
+ export * from './dh.js';
5
+ export * from './hash.js';
6
+ export * from './hkdf.js';
7
+ export * from './hmac.js';
8
+ export * as IO from './io.js';
9
+ export * from './noise.js';
10
+ export * from './nonce.js';
11
+ export * from './random.js';
12
+ import * as chacha20poly1305 from './aead/chacha20poly1305.js';
13
+ import * as chacha20 from './cipher/chacha20.js';
14
+ import * as x25519 from './dh/x25519.js';
15
+ import * as blake2s from './hash/blake2s.js';
16
+ import * as poly1305 from './hash/poly1305.js';
17
+ import * as algorithms from './noise/algorithms.js';
18
+ import * as cipherstate from './noise/cipherstate.js';
19
+ import * as handshake from './noise/handshake.js';
20
+ import * as patterns from './noise/patterns.js';
21
+ import * as profiles from './noise/profiles.js';
22
+ import * as rekey from './noise/rekey.js';
23
23
  export declare const INTERNALS: {
24
24
  aead: {
25
25
  chacha20poly1305: typeof chacha20poly1305;
package/lib/index.js CHANGED
@@ -1,27 +1,27 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
- export * from './aead';
4
- export * as Bytes from './bytes';
5
- export * from './cipher';
6
- export * from './dh';
7
- export * from './hash';
8
- export * from './hkdf';
9
- export * from './hmac';
10
- export * as IO from './io';
11
- export * from './noise';
12
- export * from './nonce';
13
- export * from './random';
14
- import * as chacha20poly1305 from './aead/chacha20poly1305';
15
- import * as chacha20 from './cipher/chacha20';
16
- import * as x25519 from './dh/x25519';
17
- import * as blake2s from './hash/blake2s';
18
- import * as poly1305 from './hash/poly1305';
19
- import * as algorithms from './noise/algorithms';
20
- import * as cipherstate from './noise/cipherstate';
21
- import * as handshake from './noise/handshake';
22
- import * as patterns from './noise/patterns';
23
- import * as profiles from './noise/profiles';
24
- import * as rekey from './noise/rekey';
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
+ export * from './aead.js';
4
+ export * as Bytes from './bytes.js';
5
+ export * from './cipher.js';
6
+ export * from './dh.js';
7
+ export * from './hash.js';
8
+ export * from './hkdf.js';
9
+ export * from './hmac.js';
10
+ export * as IO from './io.js';
11
+ export * from './noise.js';
12
+ export * from './nonce.js';
13
+ export * from './random.js';
14
+ import * as chacha20poly1305 from './aead/chacha20poly1305.js';
15
+ import * as chacha20 from './cipher/chacha20.js';
16
+ import * as x25519 from './dh/x25519.js';
17
+ import * as blake2s from './hash/blake2s.js';
18
+ import * as poly1305 from './hash/poly1305.js';
19
+ import * as algorithms from './noise/algorithms.js';
20
+ import * as cipherstate from './noise/cipherstate.js';
21
+ import * as handshake from './noise/handshake.js';
22
+ import * as patterns from './noise/patterns.js';
23
+ import * as profiles from './noise/profiles.js';
24
+ import * as rekey from './noise/rekey.js';
25
25
  export const INTERNALS = {
26
26
  aead: {
27
27
  chacha20poly1305,
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2FAA2F;AAE3F,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,MAAM,CAAC;AACrB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AAEzB,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,SAAS,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG;IACrB,IAAI,EAAE;QACF,gBAAgB;KACnB;IACD,MAAM,EAAE;QACJ,QAAQ;KACX;IACD,EAAE,EAAE;QACA,MAAM;KACT;IACD,IAAI,EAAE;QACF,OAAO;QACP,QAAQ;KACX;IACD,KAAK,EAAE;QACH,UAAU;QACV,WAAW;QACX,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,KAAK;KACR;CACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAEhG,cAAc,WAAW,CAAC;AAC1B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAE5B,OAAO,KAAK,gBAAgB,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,QAAQ,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,UAAU,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAE1C,MAAM,CAAC,MAAM,SAAS,GAAG;IACrB,IAAI,EAAE;QACF,gBAAgB;KACnB;IACD,MAAM,EAAE;QACJ,QAAQ;KACX;IACD,EAAE,EAAE;QACA,MAAM;KACT;IACD,IAAI,EAAE;QACF,OAAO;QACP,QAAQ;KACX;IACD,KAAK,EAAE;QACH,UAAU;QACV,WAAW;QACX,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,KAAK;KACR;CACJ,CAAC"}
package/lib/io.js CHANGED
@@ -1,3 +1,5 @@
1
+ /// SPDX-License-Identifier: MIT
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
1
3
  export function toHex(bs) {
2
4
  let s = '';
3
5
  bs.forEach(b => {
package/lib/io.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK,CAAC,EAAc;IAChC,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACX,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS;IAC7B,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QAC1B,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAC,CAAC,EAAC,CAAC,GAAC,CAAC,GAAC,CAAC,CAAC,EAAC,EAAE,CAAC,CAAC;KACnD;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAc,EAAE,WAAW,GAAG,IAAI;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAChB,IAAI,CAAC,WAAW;QAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAS;IAChC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/D,OAAO,MAAM,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,gGAAgG;AAEhG,MAAM,UAAU,KAAK,CAAC,EAAc;IAChC,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACX,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnC,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,CAAS;IAC7B,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACjD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAC,CAAC,EAAC,CAAC,GAAC,CAAC,GAAC,CAAC,CAAC,EAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAc,EAAE,WAAW,GAAG,IAAI;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAChB,IAAI,CAAC,WAAW;QAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC;AACb,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,CAAS;IAChC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/D,OAAO,MAAM,CAAC;AAClB,CAAC"}
@@ -1,9 +1,9 @@
1
- import { AEAD } from '../aead';
2
- import { Hash } from '../hash';
3
- import { DH } from '../dh';
4
- import { HMAC } from '../hmac';
5
- import { HKDF } from '../hkdf';
6
- import { Rekey } from './rekey';
1
+ import { AEAD } from '../aead.js';
2
+ import { Hash } from '../hash.js';
3
+ import { DH } from '../dh.js';
4
+ import { HMAC } from '../hmac.js';
5
+ import { HKDF } from '../hkdf.js';
6
+ import { Rekey } from './rekey.js';
7
7
  export interface Algorithms {
8
8
  dh: DH;
9
9
  aead: AEAD;
@@ -1,5 +1,5 @@
1
1
  /// SPDX-License-Identifier: MIT
2
- /// SPDX-FileCopyrightText: Copyright © 2023 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
2
+ /// SPDX-FileCopyrightText: Copyright © 2023-2025 Tony Garnock-Jones <tonyg@leastfixedpoint.com>
3
3
  export function matchPattern(a, protocol_name) {
4
4
  const r = new RegExp(`^Noise_([A-Za-z0-9+]+)_${a.dh.NAME}_${a.aead.NAME}_${a.hash.NAME}$`);
5
5
  const m = r.exec(protocol_name);