@ledgerhq/hw-app-btc 10.16.0-nightly.20260116024452 → 10.16.0-nightly.20260116124336

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 (120) hide show
  1. package/CHANGELOG.md +5 -3
  2. package/README.md +106 -56
  3. package/lib/Btc.d.ts +37 -0
  4. package/lib/Btc.d.ts.map +1 -1
  5. package/lib/Btc.js +30 -2
  6. package/lib/Btc.js.map +1 -1
  7. package/lib/BtcNew.d.ts +84 -0
  8. package/lib/BtcNew.d.ts.map +1 -1
  9. package/lib/BtcNew.js +326 -9
  10. package/lib/BtcNew.js.map +1 -1
  11. package/lib/createTransaction.d.ts.map +1 -1
  12. package/lib/createTransaction.js +3 -2
  13. package/lib/createTransaction.js.map +1 -1
  14. package/lib/getTrustedInputBIP143.d.ts +1 -2
  15. package/lib/getTrustedInputBIP143.d.ts.map +1 -1
  16. package/lib/getTrustedInputBIP143.js +1 -1
  17. package/lib/getTrustedInputBIP143.js.map +1 -1
  18. package/lib/newops/accounttype.d.ts +3 -3
  19. package/lib/newops/accounttype.d.ts.map +1 -1
  20. package/lib/newops/accounttype.js +15 -14
  21. package/lib/newops/accounttype.js.map +1 -1
  22. package/lib/newops/appClient.d.ts +1 -1
  23. package/lib/newops/appClient.d.ts.map +1 -1
  24. package/lib/newops/clientCommands.js +2 -2
  25. package/lib/newops/clientCommands.js.map +1 -1
  26. package/lib/newops/merkelizedPsbt.d.ts +1 -1
  27. package/lib/newops/merkelizedPsbt.d.ts.map +1 -1
  28. package/lib/newops/merkelizedPsbt.js +1 -1
  29. package/lib/newops/merkelizedPsbt.js.map +1 -1
  30. package/lib/newops/policy.js +2 -2
  31. package/lib/newops/policy.js.map +1 -1
  32. package/lib/newops/psbtExtractor.d.ts +1 -1
  33. package/lib/newops/psbtExtractor.d.ts.map +1 -1
  34. package/lib/newops/psbtExtractor.js +3 -3
  35. package/lib/newops/psbtExtractor.js.map +1 -1
  36. package/lib/newops/psbtFinalizer.d.ts +1 -1
  37. package/lib/newops/psbtFinalizer.d.ts.map +1 -1
  38. package/lib/newops/psbtFinalizer.js +5 -6
  39. package/lib/newops/psbtFinalizer.js.map +1 -1
  40. package/lib/signP2SHTransaction.d.ts.map +1 -1
  41. package/lib/signP2SHTransaction.js +3 -2
  42. package/lib/signP2SHTransaction.js.map +1 -1
  43. package/lib-es/Btc.d.ts +37 -0
  44. package/lib-es/Btc.d.ts.map +1 -1
  45. package/lib-es/Btc.js +30 -2
  46. package/lib-es/Btc.js.map +1 -1
  47. package/lib-es/BtcNew.d.ts +84 -0
  48. package/lib-es/BtcNew.d.ts.map +1 -1
  49. package/lib-es/BtcNew.js +325 -8
  50. package/lib-es/BtcNew.js.map +1 -1
  51. package/lib-es/createTransaction.d.ts.map +1 -1
  52. package/lib-es/createTransaction.js +3 -2
  53. package/lib-es/createTransaction.js.map +1 -1
  54. package/lib-es/getTrustedInputBIP143.d.ts +1 -2
  55. package/lib-es/getTrustedInputBIP143.d.ts.map +1 -1
  56. package/lib-es/getTrustedInputBIP143.js +1 -1
  57. package/lib-es/getTrustedInputBIP143.js.map +1 -1
  58. package/lib-es/newops/accounttype.d.ts +3 -3
  59. package/lib-es/newops/accounttype.d.ts.map +1 -1
  60. package/lib-es/newops/accounttype.js +11 -10
  61. package/lib-es/newops/accounttype.js.map +1 -1
  62. package/lib-es/newops/appClient.d.ts +1 -1
  63. package/lib-es/newops/appClient.d.ts.map +1 -1
  64. package/lib-es/newops/clientCommands.js +1 -1
  65. package/lib-es/newops/clientCommands.js.map +1 -1
  66. package/lib-es/newops/merkelizedPsbt.d.ts +1 -1
  67. package/lib-es/newops/merkelizedPsbt.d.ts.map +1 -1
  68. package/lib-es/newops/merkelizedPsbt.js +1 -1
  69. package/lib-es/newops/merkelizedPsbt.js.map +1 -1
  70. package/lib-es/newops/policy.js +1 -1
  71. package/lib-es/newops/policy.js.map +1 -1
  72. package/lib-es/newops/psbtExtractor.d.ts +1 -1
  73. package/lib-es/newops/psbtExtractor.d.ts.map +1 -1
  74. package/lib-es/newops/psbtExtractor.js +1 -1
  75. package/lib-es/newops/psbtExtractor.js.map +1 -1
  76. package/lib-es/newops/psbtFinalizer.d.ts +1 -1
  77. package/lib-es/newops/psbtFinalizer.d.ts.map +1 -1
  78. package/lib-es/newops/psbtFinalizer.js +1 -2
  79. package/lib-es/newops/psbtFinalizer.js.map +1 -1
  80. package/lib-es/signP2SHTransaction.d.ts.map +1 -1
  81. package/lib-es/signP2SHTransaction.js +3 -2
  82. package/lib-es/signP2SHTransaction.js.map +1 -1
  83. package/package.json +6 -6
  84. package/src/Btc.ts +41 -2
  85. package/src/BtcNew.ts +483 -9
  86. package/src/createTransaction.ts +4 -3
  87. package/src/getTrustedInputBIP143.ts +0 -2
  88. package/src/newops/accounttype.ts +11 -12
  89. package/src/newops/appClient.ts +1 -1
  90. package/src/newops/clientCommands.ts +1 -1
  91. package/src/newops/merkelizedPsbt.ts +1 -1
  92. package/src/newops/policy.ts +1 -1
  93. package/src/newops/psbtExtractor.ts +1 -2
  94. package/src/newops/psbtFinalizer.ts +1 -2
  95. package/src/signP2SHTransaction.ts +3 -2
  96. package/tests/Btc.test.ts +848 -20
  97. package/tests/newops/BtcNew.signMessage.test.ts +35 -0
  98. package/tests/newops/BtcNew.signPsbtBuffer.test.ts +391 -0
  99. package/tests/newops/BtcNew.test.ts +13 -1
  100. package/tests/newops/integrationtools.ts +1 -1
  101. package/lib/buffertools.d.ts +0 -31
  102. package/lib/buffertools.d.ts.map +0 -1
  103. package/lib/buffertools.js +0 -129
  104. package/lib/buffertools.js.map +0 -1
  105. package/lib/newops/psbtv2.d.ts +0 -150
  106. package/lib/newops/psbtv2.d.ts.map +0 -1
  107. package/lib/newops/psbtv2.js +0 -469
  108. package/lib/newops/psbtv2.js.map +0 -1
  109. package/lib-es/buffertools.d.ts +0 -31
  110. package/lib-es/buffertools.d.ts.map +0 -1
  111. package/lib-es/buffertools.js +0 -119
  112. package/lib-es/buffertools.js.map +0 -1
  113. package/lib-es/newops/psbtv2.d.ts +0 -150
  114. package/lib-es/newops/psbtv2.d.ts.map +0 -1
  115. package/lib-es/newops/psbtv2.js +0 -464
  116. package/lib-es/newops/psbtv2.js.map +0 -1
  117. package/src/buffertools.ts +0 -137
  118. package/src/newops/psbtv2.ts +0 -525
  119. package/tests/buffertools.test.ts +0 -25
  120. package/tests/newops/psbtv2.test.ts +0 -15
@@ -1,31 +0,0 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- export declare function unsafeTo64bitLE(n: number): Buffer;
4
- export declare function unsafeFrom64bitLE(byteArray: Buffer): number;
5
- export declare class BufferWriter {
6
- private bufs;
7
- write(alloc: number, fn: (b: Buffer) => void): void;
8
- writeUInt8(i: number): void;
9
- writeInt32(i: number): void;
10
- writeUInt32(i: number): void;
11
- writeUInt64(i: number): void;
12
- writeVarInt(i: number): void;
13
- writeSlice(slice: Buffer): void;
14
- writeVarSlice(slice: Buffer): void;
15
- buffer(): Buffer;
16
- }
17
- export declare class BufferReader {
18
- buffer: Buffer;
19
- offset: number;
20
- constructor(buffer: Buffer, offset?: number);
21
- available(): number;
22
- readUInt8(): number;
23
- readInt32(): number;
24
- readUInt32(): number;
25
- readUInt64(): number;
26
- readVarInt(): number;
27
- readSlice(n: number): Buffer;
28
- readVarSlice(): Buffer;
29
- readVector(): Buffer[];
30
- }
31
- //# sourceMappingURL=buffertools.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buffertools.d.ts","sourceRoot":"","sources":["../src/buffertools.ts"],"names":[],"mappings":";;AAEA,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAYjD;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAe3D;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,IAAI,CAAgB;IAE5B,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAMnD,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3B,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAI3B,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5B,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAK5B,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAI5B,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI/B,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKlC,MAAM,IAAI,MAAM;CAGjB;AAED,qBAAa,YAAY;IAEd,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;gBADd,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAU;IAG3B,SAAS,IAAI,MAAM;IAInB,SAAS,IAAI,MAAM;IAMnB,SAAS,IAAI,MAAM;IAMnB,UAAU,IAAI,MAAM;IAMpB,UAAU,IAAI,MAAM;IAMpB,UAAU,IAAI,MAAM;IAMpB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAS5B,YAAY,IAAI,MAAM;IAItB,UAAU,IAAI,MAAM,EAAE;CAMvB"}
@@ -1,119 +0,0 @@
1
- import varuint from "varuint-bitcoin";
2
- export function unsafeTo64bitLE(n) {
3
- // we want to represent the input as a 8-bytes array
4
- if (n > Number.MAX_SAFE_INTEGER) {
5
- throw new Error("Can't convert numbers > MAX_SAFE_INT");
6
- }
7
- const byteArray = Buffer.alloc(8, 0);
8
- for (let index = 0; index < byteArray.length; index++) {
9
- const byte = n & 0xff;
10
- byteArray[index] = byte;
11
- n = (n - byte) / 256;
12
- }
13
- return byteArray;
14
- }
15
- export function unsafeFrom64bitLE(byteArray) {
16
- let value = 0;
17
- if (byteArray.length != 8) {
18
- throw new Error("Expected Bufffer of lenght 8");
19
- }
20
- if (byteArray[7] != 0) {
21
- throw new Error("Can't encode numbers > MAX_SAFE_INT");
22
- }
23
- if (byteArray[6] > 0x1f) {
24
- throw new Error("Can't encode numbers > MAX_SAFE_INT");
25
- }
26
- for (let i = byteArray.length - 1; i >= 0; i--) {
27
- value = value * 256 + byteArray[i];
28
- }
29
- return value;
30
- }
31
- export class BufferWriter {
32
- bufs = [];
33
- write(alloc, fn) {
34
- const b = Buffer.alloc(alloc);
35
- fn(b);
36
- this.bufs.push(b);
37
- }
38
- writeUInt8(i) {
39
- this.write(1, b => b.writeUInt8(i, 0));
40
- }
41
- writeInt32(i) {
42
- this.write(4, b => b.writeInt32LE(i, 0));
43
- }
44
- writeUInt32(i) {
45
- this.write(4, b => b.writeUInt32LE(i, 0));
46
- }
47
- writeUInt64(i) {
48
- const bytes = unsafeTo64bitLE(i);
49
- this.writeSlice(bytes);
50
- }
51
- writeVarInt(i) {
52
- this.bufs.push(varuint.encode(i));
53
- }
54
- writeSlice(slice) {
55
- this.bufs.push(Buffer.from(slice));
56
- }
57
- writeVarSlice(slice) {
58
- this.writeVarInt(slice.length);
59
- this.writeSlice(slice);
60
- }
61
- buffer() {
62
- return Buffer.concat(this.bufs);
63
- }
64
- }
65
- export class BufferReader {
66
- buffer;
67
- offset;
68
- constructor(buffer, offset = 0) {
69
- this.buffer = buffer;
70
- this.offset = offset;
71
- }
72
- available() {
73
- return this.buffer.length - this.offset;
74
- }
75
- readUInt8() {
76
- const result = this.buffer.readUInt8(this.offset);
77
- this.offset++;
78
- return result;
79
- }
80
- readInt32() {
81
- const result = this.buffer.readInt32LE(this.offset);
82
- this.offset += 4;
83
- return result;
84
- }
85
- readUInt32() {
86
- const result = this.buffer.readUInt32LE(this.offset);
87
- this.offset += 4;
88
- return result;
89
- }
90
- readUInt64() {
91
- const buf = this.readSlice(8);
92
- const n = unsafeFrom64bitLE(buf);
93
- return n;
94
- }
95
- readVarInt() {
96
- const vi = varuint.decode(this.buffer, this.offset);
97
- this.offset += varuint.decode.bytes;
98
- return vi;
99
- }
100
- readSlice(n) {
101
- if (this.buffer.length < this.offset + n) {
102
- throw new Error("Cannot read slice out of bounds");
103
- }
104
- const result = this.buffer.slice(this.offset, this.offset + n);
105
- this.offset += n;
106
- return result;
107
- }
108
- readVarSlice() {
109
- return this.readSlice(this.readVarInt());
110
- }
111
- readVector() {
112
- const count = this.readVarInt();
113
- const vector = [];
114
- for (let i = 0; i < count; i++)
115
- vector.push(this.readVarSlice());
116
- return vector;
117
- }
118
- }
119
- //# sourceMappingURL=buffertools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"buffertools.js","sourceRoot":"","sources":["../src/buffertools.ts"],"names":[],"mappings":"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"}
@@ -1,150 +0,0 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- export declare enum psbtGlobal {
4
- TX_VERSION = 2,
5
- FALLBACK_LOCKTIME = 3,
6
- INPUT_COUNT = 4,
7
- OUTPUT_COUNT = 5,
8
- TX_MODIFIABLE = 6,
9
- VERSION = 251
10
- }
11
- export declare enum psbtIn {
12
- NON_WITNESS_UTXO = 0,
13
- WITNESS_UTXO = 1,
14
- PARTIAL_SIG = 2,
15
- SIGHASH_TYPE = 3,
16
- REDEEM_SCRIPT = 4,
17
- BIP32_DERIVATION = 6,
18
- FINAL_SCRIPTSIG = 7,
19
- FINAL_SCRIPTWITNESS = 8,
20
- PREVIOUS_TXID = 14,
21
- OUTPUT_INDEX = 15,
22
- SEQUENCE = 16,
23
- TAP_KEY_SIG = 19,
24
- TAP_BIP32_DERIVATION = 22
25
- }
26
- export declare enum psbtOut {
27
- REDEEM_SCRIPT = 0,
28
- BIP_32_DERIVATION = 2,
29
- AMOUNT = 3,
30
- SCRIPT = 4,
31
- TAP_BIP32_DERIVATION = 7
32
- }
33
- export declare class NoSuchEntry extends Error {
34
- }
35
- /**
36
- * Implements Partially Signed Bitcoin Transaction version 2, BIP370, as
37
- * documented at https://github.com/bitcoin/bips/blob/master/bip-0370.mediawiki
38
- * and https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki
39
- *
40
- * A psbt is a data structure that can carry all relevant information about a
41
- * transaction through all stages of the signing process. From constructing an
42
- * unsigned transaction to extracting the final serialized transaction ready for
43
- * broadcast.
44
- *
45
- * This implementation is limited to what's needed in ledgerjs to carry out its
46
- * duties, which means that support for features like multisig or taproot script
47
- * path spending are not implemented. Specifically, it supports p2pkh,
48
- * p2wpkhWrappedInP2sh, p2wpkh and p2tr key path spending.
49
- *
50
- * This class is made purposefully dumb, so it's easy to add support for
51
- * complemantary fields as needed in the future.
52
- */
53
- export declare class PsbtV2 {
54
- protected globalMap: Map<string, Buffer>;
55
- protected inputMaps: Map<string, Buffer>[];
56
- protected outputMaps: Map<string, Buffer>[];
57
- setGlobalTxVersion(version: number): void;
58
- getGlobalTxVersion(): number;
59
- setGlobalFallbackLocktime(locktime: number): void;
60
- getGlobalFallbackLocktime(): number | undefined;
61
- setGlobalInputCount(inputCount: number): void;
62
- getGlobalInputCount(): number;
63
- setGlobalOutputCount(outputCount: number): void;
64
- getGlobalOutputCount(): number;
65
- setGlobalTxModifiable(byte: Buffer): void;
66
- getGlobalTxModifiable(): Buffer | undefined;
67
- setGlobalPsbtVersion(psbtVersion: number): void;
68
- getGlobalPsbtVersion(): number;
69
- setInputNonWitnessUtxo(inputIndex: number, transaction: Buffer): void;
70
- getInputNonWitnessUtxo(inputIndex: number): Buffer | undefined;
71
- setInputWitnessUtxo(inputIndex: number, amount: Buffer, scriptPubKey: Buffer): void;
72
- getInputWitnessUtxo(inputIndex: number): {
73
- amount: Buffer;
74
- scriptPubKey: Buffer;
75
- } | undefined;
76
- setInputPartialSig(inputIndex: number, pubkey: Buffer, signature: Buffer): void;
77
- getInputPartialSig(inputIndex: number, pubkey: Buffer): Buffer | undefined;
78
- setInputSighashType(inputIndex: number, sigHashtype: number): void;
79
- getInputSighashType(inputIndex: number): number | undefined;
80
- setInputRedeemScript(inputIndex: number, redeemScript: Buffer): void;
81
- getInputRedeemScript(inputIndex: number): Buffer | undefined;
82
- setInputBip32Derivation(inputIndex: number, pubkey: Buffer, masterFingerprint: Buffer, path: number[]): void;
83
- getInputBip32Derivation(inputIndex: number, pubkey: Buffer): {
84
- masterFingerprint: Buffer;
85
- path: number[];
86
- } | undefined;
87
- setInputFinalScriptsig(inputIndex: number, scriptSig: Buffer): void;
88
- getInputFinalScriptsig(inputIndex: number): Buffer | undefined;
89
- setInputFinalScriptwitness(inputIndex: number, scriptWitness: Buffer): void;
90
- getInputFinalScriptwitness(inputIndex: number): Buffer;
91
- setInputPreviousTxId(inputIndex: number, txid: Buffer): void;
92
- getInputPreviousTxid(inputIndex: number): Buffer;
93
- setInputOutputIndex(inputIndex: number, outputIndex: number): void;
94
- getInputOutputIndex(inputIndex: number): number;
95
- setInputSequence(inputIndex: number, sequence: number): void;
96
- getInputSequence(inputIndex: number): number;
97
- setInputTapKeySig(inputIndex: number, sig: Buffer): void;
98
- getInputTapKeySig(inputIndex: number): Buffer | undefined;
99
- setInputTapBip32Derivation(inputIndex: number, pubkey: Buffer, hashes: Buffer[], masterFingerprint: Buffer, path: number[]): void;
100
- getInputTapBip32Derivation(inputIndex: number, pubkey: Buffer): {
101
- hashes: Buffer[];
102
- masterFingerprint: Buffer;
103
- path: number[];
104
- };
105
- getInputKeyDatas(inputIndex: number, keyType: KeyType): Buffer[];
106
- setOutputRedeemScript(outputIndex: number, redeemScript: Buffer): void;
107
- getOutputRedeemScript(outputIndex: number): Buffer;
108
- setOutputBip32Derivation(outputIndex: number, pubkey: Buffer, masterFingerprint: Buffer, path: number[]): void;
109
- getOutputBip32Derivation(outputIndex: number, pubkey: Buffer): {
110
- masterFingerprint: Buffer;
111
- path: number[];
112
- };
113
- setOutputAmount(outputIndex: number, amount: number): void;
114
- getOutputAmount(outputIndex: number): number;
115
- setOutputScript(outputIndex: number, scriptPubKey: Buffer): void;
116
- getOutputScript(outputIndex: number): Buffer;
117
- setOutputTapBip32Derivation(outputIndex: number, pubkey: Buffer, hashes: Buffer[], fingerprint: Buffer, path: number[]): void;
118
- getOutputTapBip32Derivation(outputIndex: number, pubkey: Buffer): {
119
- hashes: Buffer[];
120
- masterFingerprint: Buffer;
121
- path: number[];
122
- };
123
- deleteInputEntries(inputIndex: number, keyTypes: psbtIn[]): void;
124
- copy(to: PsbtV2): void;
125
- copyMaps(from: Map<string, Buffer>[], to: Map<string, Buffer>[]): void;
126
- copyMap(from: Map<string, Buffer>, to: Map<string, Buffer>): void;
127
- serialize(): Buffer;
128
- deserialize(psbt: Buffer): void;
129
- private readKeyPair;
130
- private getKeyDatas;
131
- private isKeyType;
132
- private setGlobal;
133
- private getGlobal;
134
- private getGlobalOptional;
135
- private setInput;
136
- private getInput;
137
- private getInputOptional;
138
- private setOutput;
139
- private getOutput;
140
- private getMap;
141
- private encodeBip32Derivation;
142
- private decodeBip32Derivation;
143
- private writeBip32Derivation;
144
- private readBip32Derivation;
145
- private encodeTapBip32Derivation;
146
- private decodeTapBip32Derivation;
147
- }
148
- type KeyType = number;
149
- export {};
150
- //# sourceMappingURL=psbtv2.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"psbtv2.d.ts","sourceRoot":"","sources":["../../src/newops/psbtv2.ts"],"names":[],"mappings":";;AAIA,oBAAY,UAAU;IACpB,UAAU,IAAO;IACjB,iBAAiB,IAAO;IACxB,WAAW,IAAO;IAClB,YAAY,IAAO;IACnB,aAAa,IAAO;IACpB,OAAO,MAAO;CACf;AACD,oBAAY,MAAM;IAChB,gBAAgB,IAAO;IACvB,YAAY,IAAO;IACnB,WAAW,IAAO;IAClB,YAAY,IAAO;IACnB,aAAa,IAAO;IACpB,gBAAgB,IAAO;IACvB,eAAe,IAAO;IACtB,mBAAmB,IAAO;IAC1B,aAAa,KAAO;IACpB,YAAY,KAAO;IACnB,QAAQ,KAAO;IACf,WAAW,KAAO;IAClB,oBAAoB,KAAO;CAC5B;AACD,oBAAY,OAAO;IACjB,aAAa,IAAO;IACpB,iBAAiB,IAAO;IACxB,MAAM,IAAO;IACb,MAAM,IAAO;IACb,oBAAoB,IAAO;CAC5B;AAID,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,MAAM;IACjB,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IACrD,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAM;IAChD,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAM;IAEjD,kBAAkB,CAAC,OAAO,EAAE,MAAM;IAGlC,kBAAkB,IAAI,MAAM;IAG5B,yBAAyB,CAAC,QAAQ,EAAE,MAAM;IAG1C,yBAAyB,IAAI,MAAM,GAAG,SAAS;IAG/C,mBAAmB,CAAC,UAAU,EAAE,MAAM;IAGtC,mBAAmB,IAAI,MAAM;IAG7B,oBAAoB,CAAC,WAAW,EAAE,MAAM;IAGxC,oBAAoB,IAAI,MAAM;IAG9B,qBAAqB,CAAC,IAAI,EAAE,MAAM;IAGlC,qBAAqB,IAAI,MAAM,GAAG,SAAS;IAG3C,oBAAoB,CAAC,WAAW,EAAE,MAAM;IAGxC,oBAAoB,IAAI,MAAM;IAI9B,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAG9D,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAG9D,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAM5E,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;IAM7F,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAGxE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAG1E,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAG3D,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK3D,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAG7D,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAG5D,uBAAuB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EAAE;IAUhB,uBAAuB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS;IAK5D,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAG5D,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAG9D,0BAA0B,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM;IAGpE,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAGtD,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAGrD,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAGhD,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAG3D,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAG/C,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAGrD,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAG5C,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAGjD,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAGzD,0BAA0B,CACxB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAChB,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EAAE;IAMhB,0BAA0B,CACxB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;IAIlE,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,EAAE;IAIhE,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAG/D,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAGlD,wBAAwB,CACtB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EAAE;IAShB,wBAAwB,CACtB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb;QAAE,iBAAiB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;IAIhD,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAGnD,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI5C,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAGzD,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAG5C,2BAA2B,CACzB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EAAE,EAChB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EAAE;IAKhB,2BAA2B,CACzB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;IAKlE,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;IASzD,IAAI,CAAC,EAAE,EAAE,MAAM;IAKf,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;IAO/D,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAG1D,SAAS,IAAI,MAAM;IAYnB,WAAW,CAAC,IAAI,EAAE,MAAM;IAexB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,iBAAiB;IAGzB,OAAO,CAAC,QAAQ;IAGhB,OAAO,CAAC,QAAQ;IAGhB,OAAO,CAAC,gBAAgB;IAGxB,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,SAAS;IAGjB,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,qBAAqB;IAK7B,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,wBAAwB;IAahC,OAAO,CAAC,wBAAwB;CAcjC;AAmBD,KAAK,OAAO,GAAG,MAAM,CAAC"}