@btc-vision/bitcoin 7.0.0-beta.0 → 7.0.0-beta.1

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 (116) hide show
  1. package/README.md +112 -13
  2. package/benchmark-compare/BENCHMARK.md +74 -59
  3. package/benchmark-compare/compare.bench.ts +249 -96
  4. package/benchmark-compare/harness.ts +23 -25
  5. package/benchmark-compare/package.json +1 -0
  6. package/browser/address.d.ts +4 -4
  7. package/browser/address.d.ts.map +1 -1
  8. package/browser/chunks/{psbt-parallel-B-dfm5GZ.js → psbt-parallel-jZ6QcCnM.js} +3128 -2731
  9. package/browser/index.d.ts +1 -1
  10. package/browser/index.d.ts.map +1 -1
  11. package/browser/index.js +603 -585
  12. package/browser/io/base58check.d.ts +1 -25
  13. package/browser/io/base58check.d.ts.map +1 -1
  14. package/browser/io/base64.d.ts.map +1 -1
  15. package/browser/networks.d.ts +1 -0
  16. package/browser/networks.d.ts.map +1 -1
  17. package/browser/payments/bip341.d.ts +17 -0
  18. package/browser/payments/bip341.d.ts.map +1 -1
  19. package/browser/payments/index.d.ts +3 -2
  20. package/browser/payments/index.d.ts.map +1 -1
  21. package/browser/payments/p2mr.d.ts +169 -0
  22. package/browser/payments/p2mr.d.ts.map +1 -0
  23. package/browser/payments/types.d.ts +11 -1
  24. package/browser/payments/types.d.ts.map +1 -1
  25. package/browser/psbt/bip371.d.ts +30 -0
  26. package/browser/psbt/bip371.d.ts.map +1 -1
  27. package/browser/psbt/psbtutils.d.ts +1 -0
  28. package/browser/psbt/psbtutils.d.ts.map +1 -1
  29. package/browser/psbt.d.ts.map +1 -1
  30. package/browser/workers/index.js +9 -9
  31. package/build/address.d.ts +4 -4
  32. package/build/address.d.ts.map +1 -1
  33. package/build/address.js +11 -1
  34. package/build/address.js.map +1 -1
  35. package/build/index.d.ts +1 -1
  36. package/build/index.d.ts.map +1 -1
  37. package/build/index.js.map +1 -1
  38. package/build/io/base58check.d.ts +1 -25
  39. package/build/io/base58check.d.ts.map +1 -1
  40. package/build/io/base58check.js +1 -31
  41. package/build/io/base58check.js.map +1 -1
  42. package/build/io/base64.d.ts.map +1 -1
  43. package/build/io/base64.js +3 -0
  44. package/build/io/base64.js.map +1 -1
  45. package/build/networks.d.ts +1 -0
  46. package/build/networks.d.ts.map +1 -1
  47. package/build/networks.js +12 -0
  48. package/build/networks.js.map +1 -1
  49. package/build/payments/bip341.d.ts +17 -0
  50. package/build/payments/bip341.d.ts.map +1 -1
  51. package/build/payments/bip341.js +32 -1
  52. package/build/payments/bip341.js.map +1 -1
  53. package/build/payments/index.d.ts +3 -2
  54. package/build/payments/index.d.ts.map +1 -1
  55. package/build/payments/index.js +2 -1
  56. package/build/payments/index.js.map +1 -1
  57. package/build/payments/p2mr.d.ts +178 -0
  58. package/build/payments/p2mr.d.ts.map +1 -0
  59. package/build/payments/p2mr.js +555 -0
  60. package/build/payments/p2mr.js.map +1 -0
  61. package/build/payments/types.d.ts +11 -1
  62. package/build/payments/types.d.ts.map +1 -1
  63. package/build/payments/types.js +1 -0
  64. package/build/payments/types.js.map +1 -1
  65. package/build/psbt/bip371.d.ts +30 -0
  66. package/build/psbt/bip371.d.ts.map +1 -1
  67. package/build/psbt/bip371.js +80 -15
  68. package/build/psbt/bip371.js.map +1 -1
  69. package/build/psbt/psbtutils.d.ts +1 -0
  70. package/build/psbt/psbtutils.d.ts.map +1 -1
  71. package/build/psbt/psbtutils.js +2 -0
  72. package/build/psbt/psbtutils.js.map +1 -1
  73. package/build/psbt.d.ts.map +1 -1
  74. package/build/psbt.js +3 -2
  75. package/build/psbt.js.map +1 -1
  76. package/build/pubkey.js +1 -1
  77. package/build/pubkey.js.map +1 -1
  78. package/build/tsconfig.build.tsbuildinfo +1 -1
  79. package/documentation/README.md +122 -0
  80. package/documentation/address.md +820 -0
  81. package/documentation/block.md +679 -0
  82. package/documentation/crypto.md +461 -0
  83. package/documentation/ecc.md +584 -0
  84. package/documentation/errors.md +656 -0
  85. package/documentation/io.md +942 -0
  86. package/documentation/networks.md +625 -0
  87. package/documentation/p2mr.md +380 -0
  88. package/documentation/payments.md +1485 -0
  89. package/documentation/psbt.md +1400 -0
  90. package/documentation/script.md +730 -0
  91. package/documentation/taproot.md +670 -0
  92. package/documentation/transaction.md +943 -0
  93. package/documentation/types.md +587 -0
  94. package/documentation/workers.md +1007 -0
  95. package/eslint.config.js +3 -0
  96. package/package.json +17 -14
  97. package/src/address.ts +22 -10
  98. package/src/index.ts +1 -0
  99. package/src/io/base58check.ts +1 -35
  100. package/src/io/base64.ts +5 -0
  101. package/src/networks.ts +13 -0
  102. package/src/payments/bip341.ts +36 -1
  103. package/src/payments/index.ts +4 -0
  104. package/src/payments/p2mr.ts +660 -0
  105. package/src/payments/types.ts +12 -0
  106. package/src/psbt/bip371.ts +84 -13
  107. package/src/psbt/psbtutils.ts +2 -0
  108. package/src/psbt.ts +4 -2
  109. package/src/pubkey.ts +1 -1
  110. package/test/bitcoin.core.spec.ts +1 -1
  111. package/test/fixtures/p2mr.json +270 -0
  112. package/test/integration/taproot.spec.ts +7 -3
  113. package/test/opnetTestnet.spec.ts +302 -0
  114. package/test/payments.spec.ts +3 -1
  115. package/test/psbt.spec.ts +297 -2
  116. package/test/tsconfig.json +2 -2
@@ -15,8 +15,38 @@ interface PsbtOutputWithScript extends PsbtOutput {
15
15
  export declare function tapScriptFinalizer(inputIndex: number, input: PsbtInput, tapLeafHashToFinalize?: Uint8Array): {
16
16
  finalScriptWitness: Uint8Array | undefined;
17
17
  };
18
+ /**
19
+ * Serializes a taproot (Schnorr) signature, optionally appending the sighash type byte.
20
+ * If sighashType is SIGHASH_DEFAULT (0x00) or not provided, no byte is appended (per BIP 341).
21
+ * Used for both P2TR key-path/script-path and P2MR script-path signatures.
22
+ * @param sig - The 64-byte Schnorr signature.
23
+ * @param sighashType - Optional sighash type. Omit or pass 0 for SIGHASH_DEFAULT.
24
+ * @returns The serialized signature (64 or 65 bytes).
25
+ */
18
26
  export declare function serializeTaprootSignature(sig: Uint8Array, sighashType?: number): Uint8Array;
27
+ /**
28
+ * Determines whether a PSBT input should be handled as a taproot-style input.
29
+ * Returns true for both P2TR (SegWit v1, BIP 341) and P2MR (SegWit v2, BIP 360) inputs.
30
+ * This is the gateway check that routes inputs to taproot signing and finalization logic.
31
+ * @param input - The PSBT input to check.
32
+ * @returns True if the input has taproot/P2MR fields or a P2TR/P2MR witnessUtxo script.
33
+ */
19
34
  export declare function isTaprootInput(input: PsbtInput): boolean;
35
+ /**
36
+ * Checks if the input is spending a P2MR (Pay-to-Merkle-Root, BIP 360) output.
37
+ * Requires `witnessUtxo` to be set on the input; returns false otherwise.
38
+ * P2MR uses SegWit version 2 with scriptPubKey: `OP_2 <32-byte merkle_root>`.
39
+ * @param input - The PSBT input to check.
40
+ * @returns True if the witnessUtxo script is a valid P2MR output.
41
+ */
42
+ export declare function isP2MRInput(input: PsbtInput): boolean;
43
+ /**
44
+ * Determines whether a PSBT output should be handled as a taproot-style output.
45
+ * Returns true for both P2TR (BIP 341) and P2MR (BIP 360) outputs.
46
+ * @param output - The PSBT output to check.
47
+ * @param script - Optional output script to test against P2TR/P2MR patterns.
48
+ * @returns True if the output has taproot fields or a P2TR/P2MR script.
49
+ */
20
50
  export declare function isTaprootOutput(output: PsbtOutput, script?: Uint8Array): boolean;
21
51
  export declare function checkTaprootInputFields(inputData: PsbtInput, newInputData: PsbtInput, action: string): void;
22
52
  export declare function checkTaprootOutputFields(outputData: PsbtOutputWithScript, newOutputData: PsbtOutput, action: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"bip371.d.ts","sourceRoot":"","sources":["../../src/psbt/bip371.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,SAAS,EACT,UAAU,EAEV,OAAO,EAIV,MAAM,QAAQ,CAAC;AAUhB,OAAO,KAAK,EAAoB,OAAO,EAAkB,MAAM,aAAa,CAAC;AAU7E,UAAU,oBAAqB,SAAQ,UAAU;IAC7C,MAAM,CAAC,EAAE,UAAU,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,qBAAqB,CAAC,EAAE,UAAU,GACnC;IACC,kBAAkB,EAAE,UAAU,GAAG,SAAS,CAAC;CAC9C,CAYA;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,CAI3F;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAWxD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAUhF;AAED,wBAAgB,uBAAuB,CACnC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,MAAM,GACf,IAAI,CAGN;AAED,wBAAgB,wBAAwB,CACpC,UAAU,EAAE,oBAAoB,EAChC,aAAa,EAAE,UAAU,EACzB,MAAM,EAAE,MAAM,GACf,IAAI,CAGN;AA6BD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,UAAU,CAoBpF;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAItD;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAS/D;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAGlF;AA2BD,wBAAgB,uBAAuB,CAAC,kBAAkB,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAM/F"}
1
+ {"version":3,"file":"bip371.d.ts","sourceRoot":"","sources":["../../src/psbt/bip371.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,SAAS,EACT,UAAU,EAEV,OAAO,EAIV,MAAM,QAAQ,CAAC;AAWhB,OAAO,KAAK,EAAoB,OAAO,EAAkB,MAAM,aAAa,CAAC;AAW7E,UAAU,oBAAqB,SAAQ,UAAU;IAC7C,MAAM,CAAC,EAAE,UAAU,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,qBAAqB,CAAC,EAAE,UAAU,GACnC;IACC,kBAAkB,EAAE,UAAU,GAAG,SAAS,CAAC;CAC9C,CAYA;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,CAI3F;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAaxD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAErD;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAUhF;AAED,wBAAgB,uBAAuB,CACnC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,SAAS,EACvB,MAAM,EAAE,MAAM,GACf,IAAI,CAGN;AAED,wBAAgB,wBAAwB,CACpC,UAAU,EAAE,oBAAoB,EAChC,aAAa,EAAE,UAAU,EACzB,MAAM,EAAE,MAAM,GACf,IAAI,CAGN;AA6BD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,UAAU,CAoBpF;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAItD;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAS/D;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAGlF;AA2BD,wBAAgB,uBAAuB,CAAC,kBAAkB,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAM/F"}
@@ -1,9 +1,9 @@
1
- import { LEAF_VERSION_TAPSCRIPT, MAX_TAPTREE_DEPTH, rootHashFromPath, tapleafHash, tweakKey, } from '../payments/bip341.js';
1
+ import { LEAF_VERSION_TAPSCRIPT, MAX_TAPTREE_DEPTH, rootHashFromPath, rootHashFromPathP2MR, tapleafHash, tweakKey, } from '../payments/bip341.js';
2
2
  import { p2tr } from '../payments/p2tr.js';
3
3
  import { Transaction } from '../transaction.js';
4
4
  import { isTapleaf, isTaptree } from '../types.js';
5
5
  import { concat, equals } from '../io/index.js';
6
- import { isP2TR, pubkeyPositionInScript, signatureBlocksAction, witnessStackToScriptWitness, } from './psbtutils.js';
6
+ import { isP2MR, isP2TR, pubkeyPositionInScript, signatureBlocksAction, witnessStackToScriptWitness, } from './psbtutils.js';
7
7
  /**
8
8
  * Default tapscript finalizer. It searches for the `tapLeafHashToFinalize` if provided.
9
9
  * Otherwise it will search for the tapleaf that has at least one signature and has the shortest path.
@@ -23,27 +23,61 @@ export function tapScriptFinalizer(inputIndex, input, tapLeafHashToFinalize) {
23
23
  return { finalScriptWitness: witnessStackToScriptWitness(witness) };
24
24
  }
25
25
  catch (err) {
26
- throw new Error(`Can not finalize taproot input #${inputIndex}: ${err}`);
26
+ throw new Error(`Can not finalize taproot input #${inputIndex}: ${err}`, { cause: err });
27
27
  }
28
28
  }
29
+ /**
30
+ * Serializes a taproot (Schnorr) signature, optionally appending the sighash type byte.
31
+ * If sighashType is SIGHASH_DEFAULT (0x00) or not provided, no byte is appended (per BIP 341).
32
+ * Used for both P2TR key-path/script-path and P2MR script-path signatures.
33
+ * @param sig - The 64-byte Schnorr signature.
34
+ * @param sighashType - Optional sighash type. Omit or pass 0 for SIGHASH_DEFAULT.
35
+ * @returns The serialized signature (64 or 65 bytes).
36
+ */
29
37
  export function serializeTaprootSignature(sig, sighashType) {
30
38
  const sighashTypeByte = sighashType ? new Uint8Array([sighashType]) : new Uint8Array(0);
31
39
  return concat([sig, sighashTypeByte]);
32
40
  }
41
+ /**
42
+ * Determines whether a PSBT input should be handled as a taproot-style input.
43
+ * Returns true for both P2TR (SegWit v1, BIP 341) and P2MR (SegWit v2, BIP 360) inputs.
44
+ * This is the gateway check that routes inputs to taproot signing and finalization logic.
45
+ * @param input - The PSBT input to check.
46
+ * @returns True if the input has taproot/P2MR fields or a P2TR/P2MR witnessUtxo script.
47
+ */
33
48
  export function isTaprootInput(input) {
34
49
  return (input &&
35
50
  !!(input.tapInternalKey ||
36
51
  input.tapMerkleRoot ||
37
52
  (input.tapLeafScript && input.tapLeafScript.length) ||
38
53
  (input.tapBip32Derivation && input.tapBip32Derivation.length) ||
39
- (input.witnessUtxo && isP2TR(new Uint8Array(input.witnessUtxo.script)))));
54
+ (input.witnessUtxo &&
55
+ (isP2TR(new Uint8Array(input.witnessUtxo.script)) ||
56
+ isP2MR(new Uint8Array(input.witnessUtxo.script))))));
40
57
  }
58
+ /**
59
+ * Checks if the input is spending a P2MR (Pay-to-Merkle-Root, BIP 360) output.
60
+ * Requires `witnessUtxo` to be set on the input; returns false otherwise.
61
+ * P2MR uses SegWit version 2 with scriptPubKey: `OP_2 <32-byte merkle_root>`.
62
+ * @param input - The PSBT input to check.
63
+ * @returns True if the witnessUtxo script is a valid P2MR output.
64
+ */
65
+ export function isP2MRInput(input) {
66
+ return !!(input.witnessUtxo && isP2MR(new Uint8Array(input.witnessUtxo.script)));
67
+ }
68
+ /**
69
+ * Determines whether a PSBT output should be handled as a taproot-style output.
70
+ * Returns true for both P2TR (BIP 341) and P2MR (BIP 360) outputs.
71
+ * @param output - The PSBT output to check.
72
+ * @param script - Optional output script to test against P2TR/P2MR patterns.
73
+ * @returns True if the output has taproot fields or a P2TR/P2MR script.
74
+ */
41
75
  export function isTaprootOutput(output, script) {
42
76
  return (output &&
43
77
  !!(output.tapInternalKey ||
44
78
  output.tapTree ||
45
79
  (output.tapBip32Derivation && output.tapBip32Derivation.length) ||
46
- (script && isP2TR(script))));
80
+ (script && (isP2TR(script) || isP2MR(script)))));
47
81
  }
48
82
  export function checkTaprootInputFields(inputData, newInputData, action) {
49
83
  checkMixedTaprootAndNonTaprootInputFields(inputData, newInputData, action);
@@ -231,35 +265,66 @@ function checkMixedTaprootAndNonTaprootOutputFields(inputData, newInputData, act
231
265
  * @throws {Error} - If the tap leaf is not part of the tap tree.
232
266
  */
233
267
  function checkIfTapLeafInTree(inputData, newInputData, action) {
268
+ const p2mrInput = isP2MRInput(inputData) || isP2MRInput(newInputData);
234
269
  if (newInputData.tapMerkleRoot) {
235
270
  const merkleRoot = new Uint8Array(newInputData.tapMerkleRoot);
236
- const newLeafsInTree = (newInputData.tapLeafScript || []).every((l) => isTapLeafInTree(l, merkleRoot));
237
- const oldLeafsInTree = (inputData.tapLeafScript || []).every((l) => isTapLeafInTree(l, merkleRoot));
271
+ const newLeafsInTree = (newInputData.tapLeafScript || []).every((l) => isTapLeafInTree(l, merkleRoot, p2mrInput));
272
+ const oldLeafsInTree = (inputData.tapLeafScript || []).every((l) => isTapLeafInTree(l, merkleRoot, p2mrInput));
238
273
  if (!newLeafsInTree || !oldLeafsInTree)
239
274
  throw new Error(`Invalid arguments for Psbt.${action}. Tapleaf not part of taptree.`);
240
275
  }
241
276
  else if (inputData.tapMerkleRoot) {
242
277
  const merkleRoot = new Uint8Array(inputData.tapMerkleRoot);
243
- const newLeafsInTree = (newInputData.tapLeafScript || []).every((l) => isTapLeafInTree(l, merkleRoot));
278
+ const newLeafsInTree = (newInputData.tapLeafScript || []).every((l) => isTapLeafInTree(l, merkleRoot, p2mrInput));
244
279
  if (!newLeafsInTree)
245
280
  throw new Error(`Invalid arguments for Psbt.${action}. Tapleaf not part of taptree.`);
246
281
  }
247
282
  }
248
283
  /**
249
- * Checks if a TapLeafScript is present in a Merkle tree.
250
- * @param tapLeaf The TapLeafScript to check.
251
- * @param merkleRoot The Merkle root of the tree. If not provided, the function assumes the TapLeafScript is present.
252
- * @returns A boolean indicating whether the TapLeafScript is present in the tree.
284
+ * Checks if a TapLeafScript is present in a Merkle tree by recomputing the root
285
+ * from the control block's merkle path.
286
+ *
287
+ * Handles both P2TR and P2MR control block formats:
288
+ * - P2TR: 33 + 32*m bytes (1 control byte + 32-byte internal pubkey + merkle path)
289
+ * - P2MR: 1 + 32*m bytes (1 control byte + merkle path, no internal pubkey)
290
+ *
291
+ * When `p2mr` is explicitly true, only the P2MR format is tried. When false and
292
+ * the input type is unknown (witnessUtxo not yet set), both formats are tried as
293
+ * their lengths overlap at 33, 65, 97... bytes. The merkle root is used to
294
+ * disambiguate which interpretation is correct.
295
+ *
296
+ * @param tapLeaf - The TapLeafScript to check (includes script, leafVersion, controlBlock).
297
+ * @param merkleRoot - The expected Merkle root. If not provided, returns true (no validation).
298
+ * @param p2mr - If true, use P2MR control block format exclusively.
299
+ * @returns True if the leaf's control block produces the expected merkle root.
253
300
  */
254
- function isTapLeafInTree(tapLeaf, merkleRoot) {
301
+ function isTapLeafInTree(tapLeaf, merkleRoot, p2mr = false) {
255
302
  if (!merkleRoot)
256
303
  return true;
257
304
  const leafHash = tapleafHash({
258
305
  output: new Uint8Array(tapLeaf.script),
259
306
  version: tapLeaf.leafVersion,
260
307
  });
261
- const rootHash = rootHashFromPath(new Uint8Array(tapLeaf.controlBlock), leafHash);
262
- return equals(rootHash, merkleRoot);
308
+ const controlBlock = new Uint8Array(tapLeaf.controlBlock);
309
+ if (p2mr) {
310
+ return equals(rootHashFromPathP2MR(controlBlock, leafHash), merkleRoot);
311
+ }
312
+ // When the input type isn't known yet (witnessUtxo not set), try P2TR first,
313
+ // then fall back to P2MR. Control block lengths overlap (33, 65, ...) between
314
+ // P2TR (33 + 32*m) and P2MR (1 + 32*m), so we verify against the merkle root.
315
+ const isValidP2TRLength = controlBlock.length >= 33 && (controlBlock.length - 33) % 32 === 0;
316
+ const isValidP2MRLength = controlBlock.length >= 1 && (controlBlock.length - 1) % 32 === 0;
317
+ if (isValidP2TRLength) {
318
+ const rootHash = rootHashFromPath(controlBlock, leafHash);
319
+ if (equals(rootHash, merkleRoot))
320
+ return true;
321
+ }
322
+ if (isValidP2MRLength) {
323
+ const rootHash = rootHashFromPathP2MR(controlBlock, leafHash);
324
+ if (equals(rootHash, merkleRoot))
325
+ return true;
326
+ }
327
+ return false;
263
328
  }
264
329
  /**
265
330
  * Sorts the signatures in the input's tapScriptSig array based on their position in the tapLeaf script.
@@ -1 +1 @@
1
- {"version":3,"file":"bip371.js","sourceRoot":"","sources":["../../src/psbt/bip371.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bip371.js","sourceRoot":"","sources":["../../src/psbt/bip371.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare const isP2WPKH: (script: Uint8Array) => boolean;
6
6
  export declare const isP2WSHScript: (script: Uint8Array) => boolean;
7
7
  export declare const isP2SHScript: (script: Uint8Array) => boolean;
8
8
  export declare const isP2TR: (script: Uint8Array) => boolean;
9
+ export declare const isP2MR: (script: Uint8Array) => boolean;
9
10
  export declare const isP2OP: (script: Uint8Array) => boolean;
10
11
  export declare const isP2A: (script: Uint8Array) => boolean;
11
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"psbtutils.d.ts","sourceRoot":"","sources":["../../src/psbt/psbtutils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AA6BpD,eAAO,MAAM,MAAM,WAX2C,UAAU,KAAK,OAWjC,CAAC;AAC7C,eAAO,MAAM,MAAM,WAZ2C,UAAU,KAAK,OAYjC,CAAC;AAC7C,eAAO,MAAM,OAAO,WAb0C,UAAU,KAAK,OAa/B,CAAC;AAC/C,eAAO,MAAM,QAAQ,WAdyC,UAAU,KAAK,OAc7B,CAAC;AACjD,eAAO,MAAM,aAAa,WAfoC,UAAU,KAAK,OAezB,CAAC;AACrD,eAAO,MAAM,YAAY,WAhBqC,UAAU,KAAK,OAgB3B,CAAC;AACnD,eAAO,MAAM,MAAM,WAjB2C,UAAU,KAAK,OAiBjC,CAAC;AAC7C,eAAO,MAAM,MAAM,WAlB2C,UAAU,KAAK,OAkBjC,CAAC;AAC7C,eAAO,MAAM,KAAK,GAAI,QAAQ,UAAU,KAAG,OAQ1C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,UAAU,CA2B7E;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CA0CrF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAG1E;AAED,KAAK,mBAAmB,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK;IAC/C,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,SAAS,EAAE,UAAU,EACrB,iBAAiB,EAAE,mBAAmB,EACtC,MAAM,EAAE,MAAM,GACf,OAAO,CAgBT;AAwBD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,EAAE,CAa5E"}
1
+ {"version":3,"file":"psbtutils.d.ts","sourceRoot":"","sources":["../../src/psbt/psbtutils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AA8BpD,eAAO,MAAM,MAAM,WAX2C,UAAU,KAAK,OAWjC,CAAC;AAC7C,eAAO,MAAM,MAAM,WAZ2C,UAAU,KAAK,OAYjC,CAAC;AAC7C,eAAO,MAAM,OAAO,WAb0C,UAAU,KAAK,OAa/B,CAAC;AAC/C,eAAO,MAAM,QAAQ,WAdyC,UAAU,KAAK,OAc7B,CAAC;AACjD,eAAO,MAAM,aAAa,WAfoC,UAAU,KAAK,OAezB,CAAC;AACrD,eAAO,MAAM,YAAY,WAhBqC,UAAU,KAAK,OAgB3B,CAAC;AACnD,eAAO,MAAM,MAAM,WAjB2C,UAAU,KAAK,OAiBjC,CAAC;AAC7C,eAAO,MAAM,MAAM,WAlB2C,UAAU,KAAK,OAkBjC,CAAC;AAC7C,eAAO,MAAM,MAAM,WAnB2C,UAAU,KAAK,OAmBjC,CAAC;AAC7C,eAAO,MAAM,KAAK,GAAI,QAAQ,UAAU,KAAG,OAQ1C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,UAAU,CA2B7E;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CA0CrF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAE9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAG1E;AAED,KAAK,mBAAmB,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK;IAC/C,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,SAAS,EAAE,UAAU,EACrB,iBAAiB,EAAE,mBAAmB,EACtC,MAAM,EAAE,MAAM,GACf,OAAO,CAgBT;AAwBD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,EAAE,CAa5E"}
@@ -4,6 +4,7 @@ import { p2ms } from '../payments/p2ms.js';
4
4
  import { p2pk } from '../payments/p2pk.js';
5
5
  import { p2pkh } from '../payments/p2pkh.js';
6
6
  import { p2sh } from '../payments/p2sh.js';
7
+ import { p2mr } from '../payments/p2mr.js';
7
8
  import { p2tr } from '../payments/p2tr.js';
8
9
  import { p2wpkh } from '../payments/p2wpkh.js';
9
10
  import { p2wsh } from '../payments/p2wsh.js';
@@ -29,6 +30,7 @@ export const isP2WPKH = isPaymentFactory(p2wpkh);
29
30
  export const isP2WSHScript = isPaymentFactory(p2wsh);
30
31
  export const isP2SHScript = isPaymentFactory(p2sh);
31
32
  export const isP2TR = isPaymentFactory(p2tr);
33
+ export const isP2MR = isPaymentFactory(p2mr);
32
34
  export const isP2OP = isPaymentFactory(p2op);
33
35
  export const isP2A = (script) => {
34
36
  return (script.length === 4 &&
@@ -1 +1 @@
1
- {"version":3,"file":"psbtutils.js","sourceRoot":"","sources":["../../src/psbt/psbtutils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"psbtutils.js","sourceRoot":"","sources":["../../src/psbt/psbtutils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"psbt.d.ts","sourceRoot":"","sources":["../src/psbt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"psbt.d.ts","sourceRoot":"","sources":["../src/psbt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,QAAQ,EACR,gBAAgB,EAChB,SAAS,EACT,eAAe,EAEf,gBAAgB,EAGnB,MAAM,QAAQ,CAAC;AAiBhB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAoB,MAAM,EAAE,MAAM,YAAY,CAAC;AAE5F,OAAO,KAAK,EACR,aAAa,EACb,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EAEjB,gBAAgB,EAChB,kBAAkB,EAElB,WAAW,EACX,YAAY,EACZ,MAAM,EACN,WAAW,EACX,sBAAsB,EACtB,mBAAmB,EACtB,MAAM,iBAAiB,CAAC;AAwBzB,YAAY,EACR,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,QAAQ,EACR,aAAa,EACb,MAAM,EACN,WAAW,EACX,sBAAsB,EACtB,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,uBAAuB,GAC1B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAgBnF,iBAAS,eAAe,CACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,OAAO,EAChB,YAAY,GAAE,OAAc,EAC5B,QAAQ,CAAC,EAAE,UAAU,EAAE,GACxB;IACC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,kBAAkB,EAAE,UAAU,GAAG,SAAS,CAAC;CAC9C,CAWA;AAED,iBAAS,mBAAmB,CACxB,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,OAAO,QAAQ,EAAE,UAAU,EAAE,EACzC,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,OAAO,EAChB,QAAQ,CAAC,EAAE,UAAU,EAAE,GACxB;IACC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,kBAAkB,EAAE,UAAU,GAAG,SAAS,CAAC;CAC9C,CAUA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,qBAAa,IAAI;;IAQF,IAAI,EAAE,gBAAgB;gBAD7B,IAAI,GAAE,gBAAqB,EACpB,IAAI,GAAE,gBAAsD;IAWvE,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,OAAO,CAAC,OAAO,EAAE,MAAM,EAEjC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAEnC;IAED,IAAW,QAAQ,IAAI,WAAW,EAAE,CAMnC;IAED,IAAW,SAAS,IAAI,YAAY,EAAE,CAcrC;WAkBa,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,IAAI;WAK3D,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,gBAAqB,GAAG,IAAI;WAKxD,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,gBAAqB,GAAG,IAAI;IAexE,OAAO,CAAC,GAAG,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAK/B,KAAK,IAAI,IAAI;IAKpB,IAAW,cAAc,IAAI,MAAM,CAElC;IAEM,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAK/C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQjC,cAAc,IAAI,IAAI;IAItB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQnC,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAW5D,SAAS,CAAC,UAAU,EAAE,iBAAiB,EAAE,EAAE,gBAAgB,GAAE,OAAc,GAAG,IAAI;IAKlF,QAAQ,CAAC,SAAS,EAAE,iBAAiB,EAAE,gBAAgB,GAAE,OAAc,GAAG,IAAI;IAwC9E,UAAU,CAAC,WAAW,EAAE,kBAAkB,EAAE,EAAE,gBAAgB,GAAE,OAAc,GAAG,IAAI;IAKrF,SAAS,CAAC,UAAU,EAAE,kBAAkB,EAAE,gBAAgB,GAAE,OAAc,GAAG,IAAI;IAyBjF,kBAAkB,CACrB,eAAe,CAAC,EAAE,OAAO,EACzB,mBAAmB,CAAC,EAAE,OAAO,GAC9B,WAAW;IAwBP,UAAU,CAAC,mBAAmB,GAAE,OAAe,GAAG,MAAM;IAIxD,MAAM,CAAC,mBAAmB,GAAE,OAAe,GAAG,MAAM;IAIpD,iBAAiB,IAAI,IAAI;IAMzB,aAAa,CAChB,UAAU,EAAE,MAAM,EAClB,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,EAC7D,YAAY,CAAC,EAAE,OAAO,GACvB,IAAI;IAkBA,oBAAoB,CACvB,UAAU,EAAE,MAAM,EAClB,qBAAqB,CAAC,EAAE,OAAO,EAC/B,gBAAgB,GAAE,uBAA4C,GAC/D,IAAI;IAYA,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa;IAgB/C,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO;IAK9D,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO;IAM1D,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO;IAKhE,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO;IAM5D,6BAA6B,CAAC,SAAS,EAAE,mBAAmB,GAAG,OAAO;IAQtE,yBAAyB,CAC5B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,mBAAmB,EAC9B,MAAM,CAAC,EAAE,SAAS,GACnB,OAAO;IAQH,eAAe,CAClB,SAAS,EAAE,QAAQ,EACnB,YAAY,GAAE,MAAM,EAA8B,GACnD,IAAI;IAoBM,oBAAoB,CAC7B,SAAS,EAAE,QAAQ,GAAG,aAAa,EACnC,YAAY,GAAE,MAAM,EAA8B,GACnD,OAAO,CAAC,IAAI,CAAC;IAyBT,WAAW,CACd,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,QAAQ,EACnB,YAAY,GAAE,MAAM,EAA8B,GACnD,IAAI;IASM,gBAAgB,CACzB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,QAAQ,GAAG,aAAa,EACnC,YAAY,GAAE,MAAM,EAA8B,GACnD,OAAO,CAAC,IAAI,CAAC;IAWT,aAAa,CAChB,OAAO,EAAE,MAAM,GAAG,QAAQ,EAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,IAAI;IAkBM,kBAAkB,CAC3B,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,EACxD,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,OAAO,CAAC,IAAI,CAAC;IAuBT,SAAS,CACZ,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,QAAQ,EAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,IAAI;IAaA,gBAAgB,CACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,QAAQ,EAC1B,iBAAiB,CAAC,EAAE,UAAU,EAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,IAAI;IAmBM,cAAc,CACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,EACxD,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,OAAO,CAAC,IAAI,CAAC;IAgBH,qBAAqB,CAC9B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,EACxD,WAAW,CAAC,EAAE,UAAU,EACxB,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,OAAO,CAAC,IAAI,CAAC;IAgBT,QAAQ,IAAI,UAAU;IAKtB,KAAK,IAAI,MAAM;IAKf,QAAQ,IAAI,MAAM;IAKlB,YAAY,CAAC,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAKhD,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,GAAG,IAAI;IA0BlE,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAQrE,wBAAwB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;IAKhD,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAKnE,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI;IAKrE,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAK7C,wBAAwB,CAC3B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,sBAAsB,EACjF,iBAAiB,CAAC,EAAE,UAAU,EAC9B,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAC/B;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE;CAkWjD"}
package/build/psbt.js CHANGED
@@ -3,7 +3,7 @@ import { clone, equals, fromBase64, fromHex, toHex } from './io/index.js';
3
3
  import { fromOutputScript, toOutputScript } from './address.js';
4
4
  import { bitcoin as btcNetwork } from './networks.js';
5
5
  import * as payments from './payments/index.js';
6
- import { checkTaprootInputFields, checkTaprootOutputFields, isTaprootInput, serializeTaprootSignature, tapScriptFinalizer, } from './psbt/bip371.js';
6
+ import { checkTaprootInputFields, checkTaprootOutputFields, isP2MRInput, isTaprootInput, serializeTaprootSignature, tapScriptFinalizer, } from './psbt/bip371.js';
7
7
  import { toXOnly } from './pubkey.js';
8
8
  import * as bscript from './script.js';
9
9
  import { Transaction } from './transaction.js';
@@ -558,7 +558,8 @@ export class Psbt {
558
558
  #finalizeTaprootInput(inputIndex, input, tapLeafHashToFinalize, finalScriptsFunc = tapScriptFinalizer) {
559
559
  if (!input.witnessUtxo)
560
560
  throw new Error(`Cannot finalize input #${inputIndex}. Missing witness utxo.`);
561
- if (input.tapKeySig) {
561
+ // P2MR has no key-path spend — always use script-path finalization
562
+ if (input.tapKeySig && !isP2MRInput(input)) {
562
563
  const payment = payments.p2tr({
563
564
  output: input.witnessUtxo.script,
564
565
  signature: input.tapKeySig,
package/build/psbt.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"psbt.js","sourceRoot":"","sources":["../src/psbt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"psbt.js","sourceRoot":"","sources":["../src/psbt.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACH,uBAAuB,EACvB,wBAAwB,EACxB,WAAW,EACX,cAAc,EACd,yBAAyB,EACzB,kBAAkB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAsB/C,6BAA6B;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EACH,eAAe,IAAI,gBAAgB,EACnC,mBAAmB,IAAI,oBAAoB,EAC3C,aAAa,GAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AACnF,OAAO,EACH,UAAU,EACV,UAAU,EACV,wBAAwB,EACxB,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AA8BlE,wCAAwC;AACxC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEnF;;GAEG;AACH,MAAM,YAAY,GAAa;IAC3B,OAAO,EAAE,UAAU;IACnB,cAAc,EAAE,IAAI;CACvB,CAAC;AAEF,mDAAmD;AACnD,SAAS,YAAY,CAAC,GAAe;IACjC,OAAO,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC;AAED,oDAAoD;AACpD,SAAS,eAAe,CACpB,UAAkB,EAClB,KAAgB,EAChB,MAAc,EACd,QAAiB,EACjB,MAAe,EACf,OAAgB,EAChB,eAAwB,IAAI,EAC5B,QAAuB;IAKvB,OAAO,gBAAgB,CACnB,UAAU,EACV,KAAK,EACL,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,YAAY,EACZ,QAAQ,CACX,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CACxB,MAAkB,EAClB,UAAkB,EAClB,UAAyC,EACzC,QAAiB,EACjB,MAAe,EACf,OAAgB,EAChB,QAAuB;IAKvB,OAAO,oBAAoB,CACvB,MAAM,EACN,UAAU,EACV,UAAU,EACV,QAAQ,EACR,MAAM,EACN,OAAO,EACP,QAAQ,CACX,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,OAAO,IAAI;IAQF;IAPF,MAAM,CAAY;IAC3B,OAAO,CAAyB;IAChC,UAAU,CAA4B;IAC7B,KAAK,CAAW;IAEzB,YACI,OAAyB,EAAE,EACpB,OAAyB,IAAI,QAAQ,CAAC,IAAI,eAAe,EAAE,CAAC;QAA5D,SAAI,GAAJ,IAAI,CAAwD;QAEnE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,EAAE,GAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAA8B,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1B,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC;IAClC,CAAC;IAED,IAAW,OAAO,CAAC,OAAe;QAC9B,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,IAAW,QAAQ,CAAC,QAAgB;QAChC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACtC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAY;YAClC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;SAC3B,CAAC,CAAC,CAAC;IACR,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACtC,IAAI,OAA2B,CAAC;YAChC,IAAI,CAAC;gBACD,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,iDAAiD;YACrD,CAAC;YACD,OAAO;gBACH,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAW;gBACtC,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO;aACV,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED,0DAA0D;IAC1D,IAAI,WAAW;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,6DAA6D;IAC7D,IAAI,cAAc;QACd,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,IAAY,EAAE,OAAyB,EAAE;QAC9D,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,IAAY,EAAE,OAAyB,EAAE;QAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,MAAkB,EAAE,OAAyB,EAAE;QACpE,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACtC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAC7C,CAAC,KAAK,EAAE,EAAE,CACN,KAAK,CAAC,UAAU,EAAE,MAAM;YACxB,KAAK,CAAC,SAAS;YACf,KAAK,CAAC,YAAY,EAAE,MAAM;YAC1B,KAAK,CAAC,cAAc;YACpB,KAAK,CAAC,kBAAkB,CAC/B,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,OAAO,CAAC,GAAG,KAAa;QAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK;QACR,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAqB,CAAC;QACnE,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC7E,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;IACrC,CAAC;IAEM,iBAAiB,CAAC,cAAsB;QAC3C,UAAU,CAAC,cAAc,CAAC,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;IAC/C,CAAC;IAEM,UAAU,CAAC,OAAe;QAC7B,UAAU,CAAC,OAAO,CAAC,CAAC;QACpB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACpF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,GAAG,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,cAAc;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACrD,CAAC;IAEM,WAAW,CAAC,QAAgB;QAC/B,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,UAAkB,EAAE,QAAgB;QACxD,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC1F,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC5C,CAAC;QACA,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAA0B,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS,CAAC,UAA+B,EAAE,mBAA4B,IAAI;QAC9E,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,QAAQ,CAAC,SAA4B,EAAE,mBAA4B,IAAI;QAC1E,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9E,MAAM,IAAI,KAAK,CACX,uCAAuC;gBACnC,yDAAyD,CAChE,CAAC;QACN,CAAC;QAED,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAE1D,IAAI,gBAAgB,EAAE,CAAC;YACnB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,SAAS,CAAC,aAAa;YAAE,iBAAiB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACxE,MAAM,mBAAmB,GAAG,SAAS,CAAC,WAAW;YAC7C,CAAC,CAAC;gBACI,GAAG,SAAS;gBACZ,WAAW,EAAE;oBACT,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM;oBACpC,KAAK,EACD,OAAO,SAAS,CAAC,WAAW,CAAC,KAAK,KAAK,QAAQ;wBAC3C,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK;wBAC7B,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC;iBAChD;aACJ;YACH,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAA0B,CAAC;QACxF,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAErC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAc,CAAC;QACxD,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,UAAU,CAAC,WAAiC,EAAE,mBAA4B,IAAI;QACjF,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS,CAAC,UAA8B,EAAE,mBAA4B,IAAI;QAC7E,MAAM,UAAU,GAAG,SAAS,IAAI,UAAU,CAAC;QAC3C,MAAM,SAAS,GAAG,QAAQ,IAAI,UAAU,CAAC;QACzC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CACX,wCAAwC;gBACpC,sEAAsE,CAC7E,CAAC;QACN,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACnB,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,EAAE,OAAO,EAAE,GAAG,UAAuC,CAAC;YAC5D,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YAC/B,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAChD,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,wBAAwB,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAE9D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,kBAAkB,CACrB,eAAyB,EACzB,mBAA6B;QAE7B,IAAI,mBAAmB,EAAE,CAAC;YACrB,IAAI,CAAC,IAA2C,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAC9E,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CACvB,CAAC;QACN,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAC;YAChF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QAC5D,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,yBAAyB,CACjC,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,EAAE,EACF,IAAI,EACJ,mBAAmB,EACnB,YAAY,CACf,CAAC;QACF,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,UAAU,CAAC,sBAA+B,KAAK;QAClD,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAC;IAC3F,CAAC;IAEM,MAAM,CAAC,sBAA+B,KAAK;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAAC;IACvF,CAAC;IAEM,iBAAiB;QACpB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,aAAa,CAChB,UAAkB,EAClB,gBAA6D,EAC7D,YAAsB;QAEtB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,qBAAqB,CAC7B,UAAU,EACV,KAAK,EACL,SAAS,EACT,gBAA2C,CAC9C,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CACtB,UAAU,EACV,KAAK,EACL,gBAAoC,EACpC,YAAY,IAAI,IAAI,CACvB,CAAC;IACN,CAAC;IAEM,oBAAoB,CACvB,UAAkB,EAClB,qBAA+B,EAC/B,mBAA4C,kBAAkB;QAE9D,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,cAAc,CAAC,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,qBAAqB,CAC7B,UAAU,EACV,KAAK,EACL,qBAAqB,EACrB,gBAAgB,CACnB,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,0BAA0B,UAAU,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IAEM,YAAY,CAAC,UAAkB;QAClC,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QAC9E,MAAM,MAAM,GAAG,mBAAmB,CAC9B,MAAM,EACN,UAAU,EACV,OAAO,EACP,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,KAAK,CAAC,cAAc,CAAC,EAChF,KAAK,CAAC,aAAa;YACf,IAAI,CAAC,MAAM,CAAC,4BAA4B,CAAC,KAAK,CAAC,kBAAkB,CAAC,CACzE,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;QAC5D,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAkB,CAAC;IAC9C,CAAC;IAEM,cAAc,CAAC,UAAkB,EAAE,MAAiB;QACvD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IAC9E,CAAC;IAEM,aAAa,CAAC,UAAkB,EAAE,IAAc;QACnD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO,CAAC,CAAC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACnF,CAAC;IAEM,eAAe,CAAC,WAAmB,EAAE,MAAiB;QACzD,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACnE,CAAC;IAEM,cAAc,CAAC,WAAmB,EAAE,IAAc;QACrD,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO,CAAC,CAAC,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACrF,CAAC;IAEM,6BAA6B,CAAC,SAA8B;QAC/D,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACvD,IAAI,CAAC,yBAAyB,CAAC,GAAG,EAAE,SAAS,CAAC,CACjD,CAAC;QACF,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAEM,yBAAyB,CAC5B,UAAkB,EAClB,SAA8B,EAC9B,MAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAc,CAAC;QACxD,IAAI,cAAc,CAAC,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,iCAAiC,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAEjF,OAAO,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAEM,eAAe,CAClB,SAAmB,EACnB,eAAyB,CAAC,WAAW,CAAC,WAAW,CAAC;QAElD,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAC7B,SAAmC,EACnC,eAAyB,CAAC,WAAW,CAAC,WAAW,CAAC;QAElD,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,QAAQ,CAAC,IAAI,CACT,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,IAAI,CAClD,GAAG,EAAE;gBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC,EACD,GAAG,EAAE;gBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC,CACJ,CACJ,CAAC;QACN,CAAC;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAEM,WAAW,CACd,UAAkB,EAClB,SAAmB,EACnB,eAAyB,CAAC,WAAW,CAAC,WAAW,CAAC;QAElD,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC3F,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;QAC9E,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,gBAAgB,CACzB,UAAkB,EAClB,SAAmC,EACnC,eAAyB,CAAC,WAAW,CAAC,WAAW,CAAC;QAElD,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC3F,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACpC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,CAAC,CACxD,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAEM,aAAa,CAChB,OAA0B,EAC1B,YAAuB;QAEvB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAEjF,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC3B,OAAwD,EACxD,YAAuB;QAEvB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAEjF,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CACT,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,IAAI,CAC9C,GAAG,EAAE;gBACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC,EACD,GAAG,EAAE;gBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC,CACJ,CACJ,CAAC;QACN,CAAC;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAEM,SAAS,CACZ,UAAkB,EAClB,OAA0B,EAC1B,YAAuB;QAEvB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QACvF,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC9D,CAAC;IAEM,gBAAgB,CACnB,UAAkB,EAClB,OAA0B,EAC1B,iBAA8B,EAC9B,YAAuB;QAEvB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,iBAAiB,CACzB,UAAU,EACV,KAAK,EACL,OAAO,EACP,iBAAiB,EACjB,YAAY,CACf,CAAC;QACN,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,0BAA0B,CAAC,CAAC;IACpE,CAAC;IAEM,KAAK,CAAC,cAAc,CACvB,UAAkB,EAClB,OAAwD,EACxD,YAAuB;QAEvB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAEjF,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,cAAc,CAAC,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,sBAAsB,CAC9B,UAAU,EACV,KAAK,EACL,OAAO,EACP,SAAS,EACT,YAAY,CACf,CAAC;QAEN,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAC9B,UAAkB,EAClB,OAAwD,EACxD,WAAwB,EACxB,YAAuB;QAEvB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAEjF,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,cAAc,CAAC,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,sBAAsB,CAC9B,UAAU,EACV,KAAK,EACL,OAAO,EACP,WAAW,EACX,YAAY,CACf,CAAC;QAEN,MAAM,IAAI,KAAK,CAAC,UAAU,UAAU,0BAA0B,CAAC,CAAC;IACpE,CAAC;IAEM,QAAQ;QACX,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChD,CAAC;IAEM,KAAK;QACR,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEM,QAAQ;QACX,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IAChC,CAAC;IAEM,YAAY,CAAC,UAA4B;QAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,WAAW,CAAC,UAAkB,EAAE,UAA2B;QAC9D,IAAI,UAAU,CAAC,aAAa;YAAE,iBAAiB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAC1E,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAc,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;QAC9F,MAAM,gBAAgB,GAAG,UAAU,CAAC,WAAW;YAC3C,CAAC,CAAC;gBACI,GAAG,UAAU;gBACb,WAAW,EAAE;oBACT,MAAM,EAAE,UAAU,CAAC,WAAW,CAAC,MAAM;oBACrC,KAAK,EACD,OAAO,UAAU,CAAC,WAAW,CAAC,KAAK,KAAK,QAAQ;wBAC5C,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK;wBAC9B,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC;iBACjD;aACJ;YACH,CAAC,CAAC,UAAU,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QACpD,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAc,EACzC,UAAU,EACV,YAAY,CACf,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,YAAY,CAAC,WAAmB,EAAE,UAA4B;QACjE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAe,CAAC;QAChE,wBAAwB,CAAC,UAAU,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;QAEjE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAAC,MAAgB;QAC5C,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,uBAAuB,CAAC,UAAkB,EAAE,MAAgB;QAC/D,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAAC,WAAmB,EAAE,MAAgB;QACjE,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,mBAAmB,CAAC,UAAkB;QACzC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAC3B,UAAkB,EAClB,KAAgB,EAChB,OAAiF,EACjF,iBAA8B,EAC9B,mBAA8B;QAE9B,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,UAAU;YACxE,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,GAAG,CAAC,CAAC;QAEjF,MAAM,MAAM,GACR,OAAO,CAAC,SAAS,YAAY,UAAU;YACnC,CAAC,CAAC,OAAO,CAAC,SAAS;YACnB,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE5C,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,CACxD,UAAU,EACV,KAAK,EACL,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,MAAM,EACN,iBAAiB,EACjB,mBAAmB,CACtB,CAAC;QAEF,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM;YACrC,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,iBAAiB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE3F,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,cAAc,CACV,UAAkB,EAClB,KAAgB,EAChB,mBAAqC,eAAe,EACpD,eAAwB,IAAI;QAE5B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAChF,UAAU,EACV,KAAK,CACR,CAAC;QACF,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,UAAU,EAAE,CAAC,CAAC;QAEzE,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAC3D,UAAU,EACV,KAAK,EACL,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,YAAY,CACf,CAAC;QAEF,IAAI,cAAc;YAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;QAC1E,IAAI,kBAAkB;YAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,cAAc,IAAI,CAAC,kBAAkB;YACtC,MAAM,IAAI,KAAK,CAAC,mCAAmC,UAAU,EAAE,CAAC,CAAC;QAErE,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,qBAAqB,CACjB,UAAkB,EAClB,KAAgB,EAChB,qBAA+B,EAC/B,mBAA4C,kBAAkB;QAE9D,IAAI,CAAC,KAAK,CAAC,WAAW;YAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,UAAU,yBAAyB,CAAC,CAAC;QAEnF,mEAAmE;QACnE,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC1B,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,MAAgB;gBAC1C,SAAS,EAAE,KAAK,CAAC,SAA6B;aACjD,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YAC3E,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACJ,MAAM,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAC3C,UAAU,EACV,KAAK,EACL,qBAAqB,CACxB,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,kBAAkB,EAAqB,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAE1C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0BAA0B,CACtB,UAAkB,EAClB,SAA8B,EAC9B,MAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,KAAK,EAAE,UAAU,CAAC;QACrC,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACjD,IAAI,OAAO,SAAS,KAAK,UAAU;YAC/B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5F,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACxE,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,IAAI,SAAkC,CAAC;QACvC,IAAI,WAA+B,CAAC;QACpC,IAAI,YAAgC,CAAC;QACrC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YACxB,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC;YACrC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAmB,CAAC;YAC5C,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACpD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAClB,YAAY,KAAK,GAAG,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW;gBACvD,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAC1B,UAAU,EACV,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE;oBACrB,WAAW,EAAE,GAAG,CAAC,QAAQ;iBAC5B,CAAC,EACF,IAAI,CACP;gBACH,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;YACnD,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC5B,SAAS,GAAG,IAAI,CAAC;YACjB,WAAW,GAAG,MAAM,CAAC;YACrB,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAED,iCAAiC,CAC7B,UAAkB,EAClB,SAA8B,EAC9B,MAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAc,CAAC;QACxD,MAAM,SAAS,GAAG,KAAK,EAAE,SAAS,CAAC;QACnC,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,CAAC;QACzC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YAC/D,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACjD,IAAI,OAAO,SAAS,KAAK,UAAU;YAC/B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAEtE,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrD,MAAM,UAAU,GAAG,OAAO;YACtB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;YACvF,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEtF,IAAI,CAAC,UAAU,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAEzE,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,qBAAqB,GAAG,CAAC,CAAC;QAC9B,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;YAC1B,MAAM,gBAAgB,GAAG,SAAS,CAC9B,UAAU,CAAC,MAAM,EACjB,UAAU,CAAC,IAAI,EACf,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,CAC7C,CAAC;YACF,IAAI,CAAC,gBAAgB;gBAAE,OAAO,KAAK,CAAC;YACpC,qBAAqB,EAAE,CAAC;QAC5B,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YACf,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;gBAChC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAmB,CAAC;gBAChD,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC1E,IAAI,UAAU,EAAE,CAAC;oBACb,MAAM,mBAAmB,GAAG,SAAS,CACjC,YAAY,EACZ,UAAU,CAAC,IAAI,EACf,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CACpD,CAAC;oBACF,IAAI,CAAC,mBAAmB;wBAAE,OAAO,KAAK,CAAC;oBACvC,qBAAqB,EAAE,CAAC;gBAC5B,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,qBAAqB,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,UAAU,CACN,UAAkB,EAClB,OAA0B,EAC1B,eAAyB,CAAC,WAAW,CAAC,WAAW,CAAC;QAElD,MAAM,MAAM,GACR,OAAO,CAAC,SAAS,YAAY,UAAU;YACnC,CAAC,CAAC,OAAO,CAAC,SAAS;YACnB,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE5C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAChE,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,UAAU,EACV,MAAM,EACN,YAAY,CACf,CAAC;QAEF,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG;YACf;gBACI,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAC/B,GAAG,YAAY,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EACrD,WAAW,CACd;aACJ;SACJ,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,iBAAiB,CACb,UAAkB,EAClB,KAAgB,EAChB,OAA0B,EAC1B,iBAA8B,EAC9B,sBAAgC,CAAC,WAAW,CAAC,eAAe,CAAC;QAE7D,MAAM,MAAM,GAAG,CACX,OAAO,CAAC,SAAS,YAAY,UAAU;YACnC,CAAC,CAAC,OAAO,CAAC,SAAS;YACnB,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAC7B,CAAC;QAEf,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,UAAU;YACxE,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,GAAG,CAAC,CAAC;QAEjF,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAC9C,UAAU,EACV,KAAK,EACL,OAAO,EACP,iBAAiB,EACjB,mBAAmB,CACtB,CAAC;QACF,MAAM,WAAW,GAAI,OAAO,CAAC,WAAoD,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEhG,MAAM,SAAS,GAAG,YAAY;aACzB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;aAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACP,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CACpE,CAAC,CAAC,CAAc,CAAC;QAEtB,MAAM,YAAY,GAAG,YAAY;aAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;aAC3B,GAAG,CACA,CAAC,CAAC,EAAE,EAAE,CACF,CAAC;YACG,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;YACvB,SAAS,EAAE,yBAAyB,CAChC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,EACnB,KAAK,CAAC,WAAW,CACpB;YACD,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACvB,CAAiB,CACzB,CAAC;QAEN,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACrC,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,eAAe,CACjB,UAAkB,EAClB,OAAwD,EACxD,eAAyB,CAAC,WAAW,CAAC,WAAW,CAAC;QAElD,MAAM,MAAM,GACR,OAAO,CAAC,SAAS,YAAY,UAAU;YACnC,CAAC,CAAC,OAAO,CAAC,SAAS;YACnB,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE5C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAChE,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,UAAU,EACV,MAAM,EACN,YAAY,CACf,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,SAAS,YAAY,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;QACpF,MAAM,UAAU,GAAG;YACf;gBACI,MAAM;gBACN,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC;aACxD;SACJ,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,sBAAsB,CACxB,UAAkB,EAClB,KAAgB,EAChB,OAAwD,EACxD,WAAwB,EACxB,eAAyB,CAAC,WAAW,CAAC,eAAe,CAAC;QAEtD,MAAM,MAAM,GAAG,CACX,OAAO,CAAC,SAAS,YAAY,UAAU;YACnC,CAAC,CAAC,OAAO,CAAC,SAAS;YACnB,CAAC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAC7B,CAAC;QAEf,IAAI,CAAC,CAAC,aAAa,IAAI,OAAO,CAAC,IAAI,OAAO,OAAO,CAAC,WAAW,KAAK,UAAU;YACxE,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,GAAG,CAAC,CAAC;QAEjF,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAC9C,UAAU,EACV,KAAK,EACL,OAAO,EACP,WAAW,EACX,YAAY,CACf,CAAC;QACF,MAAM,WAAW,GACb,OAAO,CAAC,WACX,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEhB,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,UAAU,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,yBAAyB,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YACpE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACrC,CAAC;QAED,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CACvC,CAAC,CAAC,EAAyC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAC7D,CAAC;QACF,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBAC9B,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC9C,OAAO;oBACH,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;oBACvB,SAAS,EAAE,yBAAyB,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC;oBAClE,QAAQ,EAAE,GAAG,CAAC,QAAQ;iBACT,CAAC;YACtB,CAAC,CAAC,CACL,CAAC;YACF,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACrC,CAAC;IACL,CAAC;CACJ"}
package/build/pubkey.js CHANGED
@@ -43,7 +43,7 @@ export function decompressPublicKey(realPubKey) {
43
43
  point = Point.fromHex(toHex(realPubKey));
44
44
  }
45
45
  catch (err) {
46
- throw new Error('Invalid secp256k1 public key bytes. Cannot parse.');
46
+ throw new Error('Invalid secp256k1 public key bytes. Cannot parse.', { cause: err });
47
47
  }
48
48
  const xBuf = bigIntTo32Bytes(point.x);
49
49
  const yBuf = bigIntTo32Bytes(point.y);
@@ -1 +1 @@
1
- {"version":3,"file":"pubkey.js","sourceRoot":"","sources":["../src/pubkey.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pubkey.js","sourceRoot":"","sources":["../src/pubkey.ts"],"names":[],"mappings":"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"}