@cascade-fyi/compression-kit 0.1.0 → 0.2.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.
- package/CHANGELOG.md +97 -0
- package/README.md +34 -0
- package/dist/index.cjs +131 -39
- package/dist/index.d.cts +48 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +48 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +131 -40
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -3
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.2.1] - 2026-02-12
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- `MemcmpFilter` now works with Photon RPC - filters are transformed to the correct wire format (`{ memcmp: { offset, bytes } }` with base58-encoded bytes)
|
|
13
|
+
- `getCompressedAccountsByOwner` properly passes memcmp filters to Photon for server-side filtering (previously filters were passed through raw and ignored)
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- Removed unused `encoding` field from `MemcmpFilter` interface (was documented as "not yet supported")
|
|
18
|
+
- Updated `MemcmpFilter.bytes` type docs to reflect actual usage (base58 string or Uint8Array)
|
|
19
|
+
|
|
20
|
+
## [0.2.0] - 2025-01-04
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- **Web Crypto Utilities**
|
|
25
|
+
- `importEd25519PublicKey()` - Import Ed25519 public keys using Web Crypto API for signature verification
|
|
26
|
+
|
|
27
|
+
- **RPC Types**
|
|
28
|
+
- `MemcmpFilter` - Interface for memory comparison filtering in Photon RPC queries
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
|
|
32
|
+
- Upgraded TypeScript target to ES2022 with ES2023 lib for better performance
|
|
33
|
+
- Added DOM type definitions for Web Crypto API compatibility
|
|
34
|
+
- Improved npm package metadata and publishing configuration
|
|
35
|
+
|
|
36
|
+
## [0.1.0] - 2024-12-29
|
|
37
|
+
|
|
38
|
+
### Added
|
|
39
|
+
|
|
40
|
+
- Initial release of `@cascade-fyi/compression-kit`
|
|
41
|
+
- **Photon RPC Client**
|
|
42
|
+
- `createPhotonRpc()` - Create RPC client for Light Protocol indexer
|
|
43
|
+
- `getCompressedAccount()` - Fetch compressed account by hash
|
|
44
|
+
- `getCompressedAccountsByOwner()` - Fetch all compressed accounts for owner
|
|
45
|
+
- `getCompressedTokenAccountsByOwner()` - Fetch token accounts
|
|
46
|
+
- `getCompressedTokenBalancesByOwner()` - Fetch token balances
|
|
47
|
+
- `getValidityProof()` - Get validity proofs for accounts/addresses
|
|
48
|
+
- `getMultipleCompressedAccounts()` - Batch fetch accounts
|
|
49
|
+
- `getCompressionSignaturesForOwner()` - Get transaction signatures
|
|
50
|
+
- `getLatestCompressionSignatures()` - Get recent signatures
|
|
51
|
+
- `getIndexerHealth()` / `getIndexerSlot()` - Health checks
|
|
52
|
+
|
|
53
|
+
- **Address Derivation**
|
|
54
|
+
- `deriveAddressSeed()` / `deriveAddress()` - V1 address derivation
|
|
55
|
+
- `deriveAddressSeedV2()` / `deriveAddressV2()` - V2 address derivation
|
|
56
|
+
- `packNewAddressParams()` - Pack address params for instructions
|
|
57
|
+
- `addressToBytes()` / `bytesToAddress()` - Address conversions
|
|
58
|
+
|
|
59
|
+
- **BN254 Field Operations**
|
|
60
|
+
- `createBN254()` - Create field element from bigint
|
|
61
|
+
- `bn254FromBytes()` / `bn254ToBytes()` - Byte conversions
|
|
62
|
+
- `bn254Add()` / `bn254Sub()` / `bn254Mul()` - Field arithmetic
|
|
63
|
+
- `isSmallerThanFieldSize()` - Field size validation
|
|
64
|
+
- `encodeBN254toBase58()` / `encodeBN254toHex()` - Encoding utilities
|
|
65
|
+
|
|
66
|
+
- **Instruction Building**
|
|
67
|
+
- `PackedAccounts` - Helper class for building instruction accounts
|
|
68
|
+
- `getLightSystemAccountMetas()` - Get Light system account metas (V1)
|
|
69
|
+
- `getLightSystemAccountMetasV2()` - Get Light system account metas (V2)
|
|
70
|
+
- `createSystemAccountConfig()` - Create system account configuration
|
|
71
|
+
- `getCpiSignerPda()` - Derive CPI signer PDA
|
|
72
|
+
|
|
73
|
+
- **Conversion Utilities**
|
|
74
|
+
- `hashToBn254FieldSizeBe()` - Hash to BN254 field
|
|
75
|
+
- `hexToBytes()` / `bytesToHex()` - Hex conversions
|
|
76
|
+
- `mergeBytes()` / `padBytes()` - Byte manipulation
|
|
77
|
+
- `bytesEqual()` - Byte comparison
|
|
78
|
+
|
|
79
|
+
- **Constants**
|
|
80
|
+
- Program IDs: `LIGHT_SYSTEM_PROGRAM`, `ACCOUNT_COMPRESSION_PROGRAM`, `COMPRESSED_TOKEN_PROGRAM`
|
|
81
|
+
- Tree addresses for mainnet and devnet
|
|
82
|
+
- Fee constants and configuration values
|
|
83
|
+
|
|
84
|
+
- **Error Handling**
|
|
85
|
+
- Typed error codes for different domains (RPC, Proof, BN254, etc.)
|
|
86
|
+
- Error factory functions for consistent error creation
|
|
87
|
+
|
|
88
|
+
### Notes
|
|
89
|
+
|
|
90
|
+
- This package is a Solana Kit native implementation of Light Protocol's `@lightprotocol/stateless.js`
|
|
91
|
+
- Uses native `bigint` instead of BN.js for better performance
|
|
92
|
+
- Uses `Address` type from `@solana/kit` instead of `PublicKey`
|
|
93
|
+
- Compatible with edge runtimes (Cloudflare Workers, Deno, browsers)
|
|
94
|
+
|
|
95
|
+
[0.2.1]: https://github.com/cascade-protocol/sati/compare/@cascade-fyi/compression-kit@0.2.0...@cascade-fyi/compression-kit@0.2.1
|
|
96
|
+
[0.2.0]: https://github.com/cascade-protocol/sati/compare/@cascade-fyi/compression-kit@0.1.0...@cascade-fyi/compression-kit@0.2.0
|
|
97
|
+
[0.1.0]: https://github.com/cascade-protocol/sati/releases/tag/@cascade-fyi/compression-kit@0.1.0
|
package/README.md
CHANGED
|
@@ -57,6 +57,15 @@ const rpc = createPhotonRpc('https://mainnet.helius-rpc.com/?api-key=YOUR_KEY');
|
|
|
57
57
|
// Get all compressed accounts for an owner
|
|
58
58
|
const accounts = await rpc.getCompressedAccountsByOwner(ownerAddress);
|
|
59
59
|
|
|
60
|
+
// With server-side memcmp filtering (up to 5 filters, AND logic)
|
|
61
|
+
const filtered = await rpc.getCompressedAccountsByOwner(ownerAddress, {
|
|
62
|
+
filters: [
|
|
63
|
+
{ offset: 8, bytes: schemaAddress }, // base58 string
|
|
64
|
+
{ offset: 40, bytes: agentMintBytes }, // or Uint8Array
|
|
65
|
+
],
|
|
66
|
+
limit: 50,
|
|
67
|
+
});
|
|
68
|
+
|
|
60
69
|
// Get compressed token accounts
|
|
61
70
|
const tokenAccounts = await rpc.getCompressedTokenAccountsByOwner(ownerAddress, {
|
|
62
71
|
mint: mintAddress,
|
|
@@ -155,6 +164,20 @@ if (isSmallerThanFieldSize(someBytes)) {
|
|
|
155
164
|
}
|
|
156
165
|
```
|
|
157
166
|
|
|
167
|
+
### Web Crypto Utilities
|
|
168
|
+
|
|
169
|
+
```typescript
|
|
170
|
+
import { importEd25519PublicKey } from '@cascade-fyi/compression-kit';
|
|
171
|
+
import { verifySignature, signatureBytes } from '@solana/kit';
|
|
172
|
+
|
|
173
|
+
// Import Ed25519 public key for signature verification
|
|
174
|
+
const pubkeyBytes = new Uint8Array(32); // your public key
|
|
175
|
+
const cryptoKey = await importEd25519PublicKey(pubkeyBytes);
|
|
176
|
+
|
|
177
|
+
// Use with Web Crypto API
|
|
178
|
+
const isValid = await verifySignature(cryptoKey, signatureBytes(sig), message);
|
|
179
|
+
```
|
|
180
|
+
|
|
158
181
|
## Configuration
|
|
159
182
|
|
|
160
183
|
### RPC Endpoints
|
|
@@ -196,6 +219,12 @@ import {
|
|
|
196
219
|
| `getIndexerHealth()` | Check indexer health status |
|
|
197
220
|
| `getIndexerSlot()` | Get current indexer slot |
|
|
198
221
|
|
|
222
|
+
### Crypto Utilities
|
|
223
|
+
|
|
224
|
+
| Function | Description |
|
|
225
|
+
|----------|-------------|
|
|
226
|
+
| `importEd25519PublicKey(bytes)` | Import Ed25519 public key for Web Crypto verification |
|
|
227
|
+
|
|
199
228
|
### Types
|
|
200
229
|
|
|
201
230
|
| Type | Description |
|
|
@@ -205,6 +234,7 @@ import {
|
|
|
205
234
|
| `ValidityProof` | ZK validity proof |
|
|
206
235
|
| `BN254` | BN254 field element (branded bigint) |
|
|
207
236
|
| `PackedAccounts` | Helper for building instruction accounts |
|
|
237
|
+
| `MemcmpFilter` | Memory comparison filter for RPC queries |
|
|
208
238
|
|
|
209
239
|
### Constants
|
|
210
240
|
|
|
@@ -220,6 +250,10 @@ import {
|
|
|
220
250
|
- Node.js >= 20.18.0
|
|
221
251
|
- TypeScript >= 5.0 (for type definitions)
|
|
222
252
|
|
|
253
|
+
## Changelog
|
|
254
|
+
|
|
255
|
+
See [CHANGELOG.md](https://github.com/cascade-protocol/sati/blob/main/packages/compression-kit/CHANGELOG.md) for version history.
|
|
256
|
+
|
|
223
257
|
## Related Packages
|
|
224
258
|
|
|
225
259
|
- [`@solana/kit`](https://www.npmjs.com/package/@solana/kit) - Solana Kit for modern Solana development
|
package/dist/index.cjs
CHANGED
|
@@ -378,6 +378,9 @@ let BN254ErrorCode = /* @__PURE__ */ function(BN254ErrorCode$1) {
|
|
|
378
378
|
* Base error class for Light Protocol errors.
|
|
379
379
|
*/
|
|
380
380
|
var LightError = class extends Error {
|
|
381
|
+
code;
|
|
382
|
+
functionName;
|
|
383
|
+
codeMessage;
|
|
381
384
|
constructor(code, functionName, codeMessage) {
|
|
382
385
|
super(`${code}: ${codeMessage ?? ""}`);
|
|
383
386
|
this.name = this.constructor.name;
|
|
@@ -1016,12 +1019,10 @@ async function getLightSystemAccountMetasV2(config) {
|
|
|
1016
1019
|
* 3. Packed accounts: Dynamic accounts indexed by pubkey
|
|
1017
1020
|
*/
|
|
1018
1021
|
var PackedAccounts = class PackedAccounts {
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
this.accountMap = /* @__PURE__ */ new Map();
|
|
1024
|
-
}
|
|
1022
|
+
preAccounts = [];
|
|
1023
|
+
systemAccounts = [];
|
|
1024
|
+
nextIndex = 0;
|
|
1025
|
+
accountMap = /* @__PURE__ */ new Map();
|
|
1025
1026
|
/**
|
|
1026
1027
|
* Create a new PackedAccounts with system accounts (V1 layout).
|
|
1027
1028
|
*/
|
|
@@ -1141,6 +1142,35 @@ var PackedAccounts = class PackedAccounts {
|
|
|
1141
1142
|
}
|
|
1142
1143
|
};
|
|
1143
1144
|
|
|
1145
|
+
//#endregion
|
|
1146
|
+
//#region src/utils/crypto.ts
|
|
1147
|
+
/**
|
|
1148
|
+
* Web Crypto utilities for Ed25519 operations.
|
|
1149
|
+
*
|
|
1150
|
+
* Edge-compatible helpers for importing keys and verifying signatures
|
|
1151
|
+
* using the Web Crypto API.
|
|
1152
|
+
*/
|
|
1153
|
+
/**
|
|
1154
|
+
* Import Ed25519 public key bytes as a CryptoKey for Web Crypto verification.
|
|
1155
|
+
*
|
|
1156
|
+
* @param bytes - 32-byte Ed25519 public key
|
|
1157
|
+
* @returns CryptoKey suitable for signature verification
|
|
1158
|
+
*
|
|
1159
|
+
* @example
|
|
1160
|
+
* ```typescript
|
|
1161
|
+
* import { importEd25519PublicKey } from "@cascade-fyi/compression-kit";
|
|
1162
|
+
* import { verifySignature, signatureBytes } from "@solana/kit";
|
|
1163
|
+
*
|
|
1164
|
+
* const pubkeyBytes = new Uint8Array(32); // your public key
|
|
1165
|
+
* const key = await importEd25519PublicKey(pubkeyBytes);
|
|
1166
|
+
* const valid = await verifySignature(key, signatureBytes(sig), message);
|
|
1167
|
+
* ```
|
|
1168
|
+
*/
|
|
1169
|
+
async function importEd25519PublicKey(bytes) {
|
|
1170
|
+
if (bytes.length !== 32) throw new Error(`Invalid Ed25519 public key length: ${bytes.length}, expected 32`);
|
|
1171
|
+
return crypto.subtle.importKey("raw", bytes, { name: "Ed25519" }, true, ["verify"]);
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1144
1174
|
//#endregion
|
|
1145
1175
|
//#region src/rpc.ts
|
|
1146
1176
|
let requestId = 0n;
|
|
@@ -1151,6 +1181,8 @@ let requestId = 0n;
|
|
|
1151
1181
|
* and other indexer operations.
|
|
1152
1182
|
*/
|
|
1153
1183
|
var PhotonRpc = class {
|
|
1184
|
+
endpoint;
|
|
1185
|
+
headers;
|
|
1154
1186
|
constructor(endpoint, headers) {
|
|
1155
1187
|
this.endpoint = endpoint;
|
|
1156
1188
|
this.headers = {
|
|
@@ -1219,13 +1251,20 @@ var PhotonRpc = class {
|
|
|
1219
1251
|
}
|
|
1220
1252
|
/**
|
|
1221
1253
|
* Get compressed accounts by owner.
|
|
1254
|
+
*
|
|
1255
|
+
* Supports up to 5 memcmp filters for server-side filtering (AND logic).
|
|
1222
1256
|
*/
|
|
1223
1257
|
async getCompressedAccountsByOwner(owner, config) {
|
|
1224
1258
|
const method = versionedEndpoint("getCompressedAccountsByOwner");
|
|
1259
|
+
const photonFilters = config?.filters?.map((f) => ({ memcmp: {
|
|
1260
|
+
offset: f.offset,
|
|
1261
|
+
bytes: f.bytes instanceof Uint8Array ? bs58.default.encode(f.bytes) : f.bytes
|
|
1262
|
+
} }));
|
|
1225
1263
|
const params = {
|
|
1226
1264
|
owner,
|
|
1227
1265
|
cursor: config?.cursor,
|
|
1228
|
-
limit: config?.limit
|
|
1266
|
+
limit: config?.limit,
|
|
1267
|
+
filters: photonFilters
|
|
1229
1268
|
};
|
|
1230
1269
|
const result = await this.requestWithContext(method, params);
|
|
1231
1270
|
return {
|
|
@@ -1262,19 +1301,18 @@ var PhotonRpc = class {
|
|
|
1262
1301
|
*
|
|
1263
1302
|
* This is the main method for obtaining ZK proofs needed to use
|
|
1264
1303
|
* compressed accounts in transactions.
|
|
1304
|
+
*
|
|
1305
|
+
* Note: The Photon API expects:
|
|
1306
|
+
* - `hashes`: array of base58 strings (account hashes)
|
|
1307
|
+
* - `newAddressesWithTrees`: array of { address: string, tree: string }
|
|
1265
1308
|
*/
|
|
1266
1309
|
async getValidityProof(hashes, newAddresses) {
|
|
1267
1310
|
const method = versionedEndpoint("getValidityProof");
|
|
1268
1311
|
const params = {
|
|
1269
|
-
hashes: hashes.map((h) => (
|
|
1270
|
-
|
|
1271
|
-
tree: h.stateTreeInfo.tree,
|
|
1272
|
-
queue: h.stateTreeInfo.queue
|
|
1273
|
-
})),
|
|
1274
|
-
newAddresses: newAddresses.map((a) => ({
|
|
1312
|
+
hashes: hashes.map((h) => encodeBN254(h.hash)),
|
|
1313
|
+
newAddressesWithTrees: newAddresses.map((a) => ({
|
|
1275
1314
|
address: encodeBN254(a.address),
|
|
1276
|
-
tree: a.addressTreeInfo.tree
|
|
1277
|
-
queue: a.addressTreeInfo.queue
|
|
1315
|
+
tree: a.addressTreeInfo.tree
|
|
1278
1316
|
}))
|
|
1279
1317
|
};
|
|
1280
1318
|
return parseValidityProof((await this.requestWithContext(method, params)).value);
|
|
@@ -1391,15 +1429,16 @@ function parseCompressedAccount(raw) {
|
|
|
1391
1429
|
lamports: BigInt(raw.lamports),
|
|
1392
1430
|
address: raw.address ? base58ToBytes(raw.address) : null,
|
|
1393
1431
|
data: raw.data ? {
|
|
1394
|
-
discriminator:
|
|
1432
|
+
discriminator: discriminatorToBytes(raw.data.discriminator),
|
|
1395
1433
|
data: base64ToBytes(raw.data.data),
|
|
1396
|
-
dataHash:
|
|
1434
|
+
dataHash: base58ToBytesLE(raw.data.dataHash, 32)
|
|
1397
1435
|
} : null,
|
|
1398
1436
|
treeInfo,
|
|
1399
1437
|
hash: createBN254(raw.hash, "base58"),
|
|
1400
1438
|
leafIndex: raw.leafIndex,
|
|
1401
1439
|
proveByIndex: raw.proveByIndex ?? false,
|
|
1402
|
-
readOnly: false
|
|
1440
|
+
readOnly: false,
|
|
1441
|
+
slotCreated: BigInt(raw.slotCreated)
|
|
1403
1442
|
};
|
|
1404
1443
|
}
|
|
1405
1444
|
function parseTreeInfo(raw) {
|
|
@@ -1410,7 +1449,13 @@ function parseTreeInfo(raw) {
|
|
|
1410
1449
|
queue: (0, _solana_kit.address)(ctx.queue),
|
|
1411
1450
|
treeType: ctx.treeType,
|
|
1412
1451
|
cpiContext: ctx.cpiContext ? (0, _solana_kit.address)(ctx.cpiContext) : void 0,
|
|
1413
|
-
nextTreeInfo:
|
|
1452
|
+
nextTreeInfo: ctx.nextTreeContext ? {
|
|
1453
|
+
tree: (0, _solana_kit.address)(ctx.nextTreeContext.tree),
|
|
1454
|
+
queue: (0, _solana_kit.address)(ctx.nextTreeContext.queue),
|
|
1455
|
+
treeType: ctx.nextTreeContext.treeType,
|
|
1456
|
+
cpiContext: ctx.nextTreeContext.cpiContext ? (0, _solana_kit.address)(ctx.nextTreeContext.cpiContext) : void 0,
|
|
1457
|
+
nextTreeInfo: null
|
|
1458
|
+
} : null
|
|
1414
1459
|
};
|
|
1415
1460
|
}
|
|
1416
1461
|
if ("treeContext" in raw && raw.treeContext) {
|
|
@@ -1420,7 +1465,13 @@ function parseTreeInfo(raw) {
|
|
|
1420
1465
|
queue: (0, _solana_kit.address)(ctx.queue),
|
|
1421
1466
|
treeType: ctx.treeType,
|
|
1422
1467
|
cpiContext: ctx.cpiContext ? (0, _solana_kit.address)(ctx.cpiContext) : void 0,
|
|
1423
|
-
nextTreeInfo:
|
|
1468
|
+
nextTreeInfo: ctx.nextTreeContext ? {
|
|
1469
|
+
tree: (0, _solana_kit.address)(ctx.nextTreeContext.tree),
|
|
1470
|
+
queue: (0, _solana_kit.address)(ctx.nextTreeContext.queue),
|
|
1471
|
+
treeType: ctx.nextTreeContext.treeType,
|
|
1472
|
+
cpiContext: ctx.nextTreeContext.cpiContext ? (0, _solana_kit.address)(ctx.nextTreeContext.cpiContext) : void 0,
|
|
1473
|
+
nextTreeInfo: null
|
|
1474
|
+
} : null
|
|
1424
1475
|
};
|
|
1425
1476
|
}
|
|
1426
1477
|
const tree = "tree" in raw && raw.tree ? raw.tree : "merkleTree" in raw ? raw.merkleTree ?? "" : "";
|
|
@@ -1448,20 +1499,31 @@ function parseValidityProof(raw) {
|
|
|
1448
1499
|
b: new Uint8Array(raw.compressedProof.b),
|
|
1449
1500
|
c: new Uint8Array(raw.compressedProof.c)
|
|
1450
1501
|
} : null;
|
|
1451
|
-
if (raw.accounts)
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1502
|
+
if (raw.accounts || raw.addresses) {
|
|
1503
|
+
const accounts = raw.accounts ?? [];
|
|
1504
|
+
const addresses = raw.addresses ?? [];
|
|
1505
|
+
return {
|
|
1506
|
+
compressedProof: proof,
|
|
1507
|
+
roots: accounts.map((a) => createBN254(a.root, "base58")).concat(addresses.map((a) => createBN254(a.root, "base58"))),
|
|
1508
|
+
rootIndices: accounts.map((a) => a.rootIndex.rootIndex).concat(addresses.map((a) => a.rootIndex)),
|
|
1509
|
+
leafIndices: accounts.map((a) => a.leafIndex).concat(addresses.map(() => 0)),
|
|
1510
|
+
leaves: accounts.map((a) => createBN254(a.hash, "base58")).concat(addresses.map((a) => createBN254(a.address, "base58"))),
|
|
1511
|
+
treeInfos: accounts.map((a) => ({
|
|
1512
|
+
tree: (0, _solana_kit.address)(a.merkleContext.tree),
|
|
1513
|
+
queue: (0, _solana_kit.address)(a.merkleContext.queue),
|
|
1514
|
+
treeType: a.merkleContext.treeType,
|
|
1515
|
+
cpiContext: a.merkleContext.cpiContext ? (0, _solana_kit.address)(a.merkleContext.cpiContext) : void 0,
|
|
1516
|
+
nextTreeInfo: null
|
|
1517
|
+
})).concat(addresses.map((a) => ({
|
|
1518
|
+
tree: (0, _solana_kit.address)(a.merkleContext.tree),
|
|
1519
|
+
queue: (0, _solana_kit.address)(a.merkleContext.queue),
|
|
1520
|
+
treeType: a.merkleContext.treeType,
|
|
1521
|
+
cpiContext: a.merkleContext.cpiContext ? (0, _solana_kit.address)(a.merkleContext.cpiContext) : void 0,
|
|
1522
|
+
nextTreeInfo: null
|
|
1523
|
+
}))),
|
|
1524
|
+
proveByIndices: accounts.map((a) => a.rootIndex.proveByIndex).concat(addresses.map(() => false))
|
|
1525
|
+
};
|
|
1526
|
+
}
|
|
1465
1527
|
return {
|
|
1466
1528
|
compressedProof: proof,
|
|
1467
1529
|
roots: raw.roots.map((r) => createBN254(r, "base58")),
|
|
@@ -1485,7 +1547,11 @@ function parseTokenAccount(raw) {
|
|
|
1485
1547
|
owner: (0, _solana_kit.address)(raw.tokenData.owner),
|
|
1486
1548
|
amount: BigInt(raw.tokenData.amount),
|
|
1487
1549
|
delegate: raw.tokenData.delegate ? (0, _solana_kit.address)(raw.tokenData.delegate) : null,
|
|
1488
|
-
state:
|
|
1550
|
+
state: [
|
|
1551
|
+
"uninitialized",
|
|
1552
|
+
"initialized",
|
|
1553
|
+
"frozen"
|
|
1554
|
+
].indexOf(raw.tokenData.state),
|
|
1489
1555
|
tlv: null
|
|
1490
1556
|
}
|
|
1491
1557
|
};
|
|
@@ -1499,10 +1565,35 @@ function base64ToBytes(value) {
|
|
|
1499
1565
|
for (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);
|
|
1500
1566
|
return bytes;
|
|
1501
1567
|
}
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1568
|
+
/**
|
|
1569
|
+
* Convert u64 discriminator (as string or number) to 8-byte little-endian array.
|
|
1570
|
+
* Photon API returns discriminator as a decimal string/number representing a u64.
|
|
1571
|
+
*/
|
|
1572
|
+
function discriminatorToBytes(value) {
|
|
1573
|
+
const bigintValue = typeof value === "string" ? BigInt(value) : BigInt(value);
|
|
1574
|
+
const bytes = new Uint8Array(8);
|
|
1575
|
+
let v = bigintValue;
|
|
1576
|
+
for (let i = 0; i < 8; i++) {
|
|
1577
|
+
bytes[i] = Number(v & 255n);
|
|
1578
|
+
v >>= 8n;
|
|
1579
|
+
}
|
|
1580
|
+
return bytes;
|
|
1581
|
+
}
|
|
1582
|
+
/**
|
|
1583
|
+
* Convert base58 string to little-endian byte array.
|
|
1584
|
+
* Used for dataHash which Light Protocol stores as little-endian.
|
|
1585
|
+
* Light Protocol: base58 → BN → .toArray('le', size)
|
|
1586
|
+
*/
|
|
1587
|
+
function base58ToBytesLE(value, size) {
|
|
1588
|
+
const decoded = bs58.default.decode(value);
|
|
1589
|
+
let bigintValue = 0n;
|
|
1590
|
+
for (let i = 0; i < decoded.length; i++) bigintValue = bigintValue << 8n | BigInt(decoded[i]);
|
|
1591
|
+
const bytes = new Uint8Array(size);
|
|
1592
|
+
let v = bigintValue;
|
|
1593
|
+
for (let i = 0; i < size; i++) {
|
|
1594
|
+
bytes[i] = Number(v & 255n);
|
|
1595
|
+
v >>= 8n;
|
|
1596
|
+
}
|
|
1506
1597
|
return bytes;
|
|
1507
1598
|
}
|
|
1508
1599
|
/**
|
|
@@ -1639,6 +1730,7 @@ exports.hashToBn254FieldSizeBe = hashToBn254FieldSizeBe;
|
|
|
1639
1730
|
exports.hashvToBn254FieldSizeBe = hashvToBn254FieldSizeBe;
|
|
1640
1731
|
exports.hashvToBn254FieldSizeBeWithBump = hashvToBn254FieldSizeBeWithBump;
|
|
1641
1732
|
exports.hexToBytes = hexToBytes;
|
|
1733
|
+
exports.importEd25519PublicKey = importEd25519PublicKey;
|
|
1642
1734
|
exports.isBN254 = isBN254;
|
|
1643
1735
|
exports.isLocalTest = isLocalTest;
|
|
1644
1736
|
exports.isSmallerThanFieldSize = isSmallerThanFieldSize;
|
package/dist/index.d.cts
CHANGED
|
@@ -132,6 +132,8 @@ interface CompressedAccount extends MerkleContext {
|
|
|
132
132
|
data: CompressedAccountData | null;
|
|
133
133
|
/** Whether this account is read-only in the transaction */
|
|
134
134
|
readOnly: boolean;
|
|
135
|
+
/** Slot when this account was created */
|
|
136
|
+
slotCreated: bigint;
|
|
135
137
|
}
|
|
136
138
|
/**
|
|
137
139
|
* Compressed account meta for instruction data.
|
|
@@ -859,6 +861,31 @@ declare class PackedAccounts {
|
|
|
859
861
|
};
|
|
860
862
|
}
|
|
861
863
|
//#endregion
|
|
864
|
+
//#region src/utils/crypto.d.ts
|
|
865
|
+
/**
|
|
866
|
+
* Web Crypto utilities for Ed25519 operations.
|
|
867
|
+
*
|
|
868
|
+
* Edge-compatible helpers for importing keys and verifying signatures
|
|
869
|
+
* using the Web Crypto API.
|
|
870
|
+
*/
|
|
871
|
+
/**
|
|
872
|
+
* Import Ed25519 public key bytes as a CryptoKey for Web Crypto verification.
|
|
873
|
+
*
|
|
874
|
+
* @param bytes - 32-byte Ed25519 public key
|
|
875
|
+
* @returns CryptoKey suitable for signature verification
|
|
876
|
+
*
|
|
877
|
+
* @example
|
|
878
|
+
* ```typescript
|
|
879
|
+
* import { importEd25519PublicKey } from "@cascade-fyi/compression-kit";
|
|
880
|
+
* import { verifySignature, signatureBytes } from "@solana/kit";
|
|
881
|
+
*
|
|
882
|
+
* const pubkeyBytes = new Uint8Array(32); // your public key
|
|
883
|
+
* const key = await importEd25519PublicKey(pubkeyBytes);
|
|
884
|
+
* const valid = await verifySignature(key, signatureBytes(sig), message);
|
|
885
|
+
* ```
|
|
886
|
+
*/
|
|
887
|
+
declare function importEd25519PublicKey(bytes: Uint8Array): Promise<CryptoKey>;
|
|
888
|
+
//#endregion
|
|
862
889
|
//#region src/rpc.d.ts
|
|
863
890
|
/**
|
|
864
891
|
* Context wrapper for RPC responses.
|
|
@@ -883,12 +910,26 @@ interface PaginatedOptions {
|
|
|
883
910
|
cursor?: string;
|
|
884
911
|
limit?: number;
|
|
885
912
|
}
|
|
913
|
+
/**
|
|
914
|
+
* Memcmp filter for compressed account queries.
|
|
915
|
+
*
|
|
916
|
+
* Photon RPC supports up to 5 memcmp filters per request (AND logic).
|
|
917
|
+
* Bytes are compared against raw account data at the given offset.
|
|
918
|
+
*/
|
|
919
|
+
interface MemcmpFilter {
|
|
920
|
+
/** Byte offset into account data to start comparison */
|
|
921
|
+
offset: number;
|
|
922
|
+
/** Bytes to compare - base58 string or raw Uint8Array */
|
|
923
|
+
bytes: string | Uint8Array;
|
|
924
|
+
}
|
|
886
925
|
/**
|
|
887
926
|
* Options for getCompressedAccountsByOwner.
|
|
888
927
|
*/
|
|
889
928
|
interface GetCompressedAccountsByOwnerConfig {
|
|
890
929
|
cursor?: string;
|
|
891
930
|
limit?: number;
|
|
931
|
+
/** Memcmp filters for server-side filtering (up to 5, AND logic). */
|
|
932
|
+
filters?: MemcmpFilter[];
|
|
892
933
|
}
|
|
893
934
|
/**
|
|
894
935
|
* Options for getCompressedTokenAccountsByOwner.
|
|
@@ -966,6 +1007,8 @@ declare class PhotonRpc {
|
|
|
966
1007
|
getMultipleCompressedAccounts(hashes: BN254[]): Promise<CompressedAccount[]>;
|
|
967
1008
|
/**
|
|
968
1009
|
* Get compressed accounts by owner.
|
|
1010
|
+
*
|
|
1011
|
+
* Supports up to 5 memcmp filters for server-side filtering (AND logic).
|
|
969
1012
|
*/
|
|
970
1013
|
getCompressedAccountsByOwner(owner: Address, config?: GetCompressedAccountsByOwnerConfig): Promise<WithCursor<CompressedAccount[]>>;
|
|
971
1014
|
/**
|
|
@@ -985,6 +1028,10 @@ declare class PhotonRpc {
|
|
|
985
1028
|
*
|
|
986
1029
|
* This is the main method for obtaining ZK proofs needed to use
|
|
987
1030
|
* compressed accounts in transactions.
|
|
1031
|
+
*
|
|
1032
|
+
* Note: The Photon API expects:
|
|
1033
|
+
* - `hashes`: array of base58 strings (account hashes)
|
|
1034
|
+
* - `newAddressesWithTrees`: array of { address: string, tree: string }
|
|
988
1035
|
*/
|
|
989
1036
|
getValidityProof(hashes: HashWithTreeInfo[], newAddresses: AddressWithTreeInfo[]): Promise<ValidityProofWithContext>;
|
|
990
1037
|
/**
|
|
@@ -1029,5 +1076,5 @@ declare class PhotonRpc {
|
|
|
1029
1076
|
*/
|
|
1030
1077
|
declare function createPhotonRpc(endpoint: string, headers?: Record<string, string>): PhotonRpc;
|
|
1031
1078
|
//#endregion
|
|
1032
|
-
export { ACCOUNT_COMPRESSION_PROGRAM, ADDRESS_QUEUE, ADDRESS_QUEUE_ROLLOVER_FEE, ADDRESS_TREE, ADDRESS_TREE_NETWORK_FEE_V1, ADDRESS_TREE_NETWORK_FEE_V2, type AccountProofInput, type AddressTreeInfo, type AddressWithTreeInfo, BATCH_ADDRESS_TREE, BATCH_CPI_CONTEXT_1, BATCH_CPI_CONTEXT_2, BATCH_MERKLE_TREE_1, BATCH_MERKLE_TREE_2, BATCH_QUEUE_1, BATCH_QUEUE_2, type BN254, BN254Error, BN254ErrorCode, COMPRESSED_TOKEN_PROGRAM, COMPUTE_BUDGET_PATTERN, CPI_CONTEXT_2_PUBKEY, CPI_CONTEXT_PUBKEY, type CompressedAccount, type CompressedAccountData, type CompressedAccountMeta, type CompressedCpiContext, CreateUtxoError, CreateUtxoErrorCode, DEFAULT_MERKLE_TREE_HEIGHT, DEFAULT_MERKLE_TREE_ROOTS, FIELD_SIZE, type GetCompressedAccountsByOwnerConfig, type GetCompressedTokenAccountsConfig, HIGHEST_ADDRESS_PLUS_ONE, HashError, HashErrorCode, type HashWithTreeInfo, INSERT_INTO_QUEUES_DISCRIMINATOR, INVOKE_CPI_DISCRIMINATOR, INVOKE_CPI_WITH_ACCOUNT_INFO_DISCRIMINATOR, INVOKE_CPI_WITH_READ_ONLY_DISCRIMINATOR, INVOKE_DISCRIMINATOR, LIGHT_SYSTEM_PROGRAM, LookupTableError, LookupTableErrorCode, MERKLE_TREE_2_PUBKEY, MERKLE_TREE_PUBKEY, type MerkleContext, type MerkleContextWithProof, MerkleTreeError, MerkleTreeErrorCode, NOOP_PROGRAM, NULLIFIED_STATE_TREE_LOOKUP_TABLE_DEVNET, NULLIFIED_STATE_TREE_LOOKUP_TABLE_MAINNET, NULLIFIER_QUEUE_2_PUBKEY, NULLIFIER_QUEUE_PUBKEY, type NewAddressParams, type NewAddressParamsPacked, type NewAddressProofInput, PackedAccounts, type PackedAddressTreeInfo, type PackedMerkleContext, type PackedStateTreeInfo, type PaginatedOptions, type ParsedTokenAccount, PhotonRpc, ProofError, ProofErrorCode, REGISTERED_PROGRAM_PDA, RpcError, RpcErrorCode, STATE_MERKLE_TREE_NETWORK_FEE, STATE_MERKLE_TREE_ROLLOVER_FEE, STATE_TREE_LOOKUP_TABLE_DEVNET, STATE_TREE_LOOKUP_TABLE_MAINNET, SelectInUtxosError, SelectInUtxosErrorCode, type SignatureWithMetadata, type StateTreeInfo, type StateTreeLUTPair, type SystemAccountMetaConfig, TEST_BATCH_ADDRESS_TREE, TRANSACTION_MERKLE_TREE_ROLLOVER_THRESHOLD, type TokenBalance, type TokenData, type TreeInfo, TreeType, UTXO_MERGE_MAXIMUM, UTXO_MERGE_THRESHOLD, UtilsError, UtilsErrorCode, UtxoError, UtxoErrorCode, VERSION, type ValidityProof, type ValidityProofWithContext, type WithContext, type WithCursor, addressToBytes, assertIsBN254, assertValidBN254Hash, bigIntToBytesBE, bigIntToBytesLE, bn254Add, bn254FromBytes, bn254Mul, bn254Sub, bn254ToBytes, bn254ToDecimalString, bytesEqual, bytesToAddress, bytesToBigIntBE, bytesToBigIntLE, bytesToDecimalString, bytesToHex, createBN254, createBN254Error, createPhotonRpc, createProofError, createRpcError, createSystemAccountConfig, createSystemAccountConfigWithCpi, createUtxoError, defaultStateTreeLookupTables, defaultStaticAccounts, defaultTestStateTreeAccounts, deriveAddress, deriveAddressSeed, deriveAddressSeedV2, deriveAddressV2, encodeBN254toBase58, encodeBN254toHex, featureFlags, getAccountCompressionAuthority, getAccountCompressionAuthority$1 as getCompressionAuthority, getCpiSignerPda, getDefaultAddressTreeInfo, getIndexOrAdd, getLightSystemAccountMetas, getLightSystemAccountMetasV2, getSystemProgram, hashToBn254FieldSizeBe, hashvToBn254FieldSizeBe, hashvToBn254FieldSizeBeWithBump, hexToBytes, isBN254, isLocalTest, isSmallerThanFieldSize, localTestActiveStateTreeInfos, mergeBytes, packNewAddressParams, padBytes, pushUniqueItems, toArray, toHex, validateBN254Hash, versionedEndpoint };
|
|
1079
|
+
export { ACCOUNT_COMPRESSION_PROGRAM, ADDRESS_QUEUE, ADDRESS_QUEUE_ROLLOVER_FEE, ADDRESS_TREE, ADDRESS_TREE_NETWORK_FEE_V1, ADDRESS_TREE_NETWORK_FEE_V2, type AccountProofInput, type AddressTreeInfo, type AddressWithTreeInfo, BATCH_ADDRESS_TREE, BATCH_CPI_CONTEXT_1, BATCH_CPI_CONTEXT_2, BATCH_MERKLE_TREE_1, BATCH_MERKLE_TREE_2, BATCH_QUEUE_1, BATCH_QUEUE_2, type BN254, BN254Error, BN254ErrorCode, COMPRESSED_TOKEN_PROGRAM, COMPUTE_BUDGET_PATTERN, CPI_CONTEXT_2_PUBKEY, CPI_CONTEXT_PUBKEY, type CompressedAccount, type CompressedAccountData, type CompressedAccountMeta, type CompressedCpiContext, CreateUtxoError, CreateUtxoErrorCode, DEFAULT_MERKLE_TREE_HEIGHT, DEFAULT_MERKLE_TREE_ROOTS, FIELD_SIZE, type GetCompressedAccountsByOwnerConfig, type GetCompressedTokenAccountsConfig, HIGHEST_ADDRESS_PLUS_ONE, HashError, HashErrorCode, type HashWithTreeInfo, INSERT_INTO_QUEUES_DISCRIMINATOR, INVOKE_CPI_DISCRIMINATOR, INVOKE_CPI_WITH_ACCOUNT_INFO_DISCRIMINATOR, INVOKE_CPI_WITH_READ_ONLY_DISCRIMINATOR, INVOKE_DISCRIMINATOR, LIGHT_SYSTEM_PROGRAM, LookupTableError, LookupTableErrorCode, MERKLE_TREE_2_PUBKEY, MERKLE_TREE_PUBKEY, type MemcmpFilter, type MerkleContext, type MerkleContextWithProof, MerkleTreeError, MerkleTreeErrorCode, NOOP_PROGRAM, NULLIFIED_STATE_TREE_LOOKUP_TABLE_DEVNET, NULLIFIED_STATE_TREE_LOOKUP_TABLE_MAINNET, NULLIFIER_QUEUE_2_PUBKEY, NULLIFIER_QUEUE_PUBKEY, type NewAddressParams, type NewAddressParamsPacked, type NewAddressProofInput, PackedAccounts, type PackedAddressTreeInfo, type PackedMerkleContext, type PackedStateTreeInfo, type PaginatedOptions, type ParsedTokenAccount, PhotonRpc, ProofError, ProofErrorCode, REGISTERED_PROGRAM_PDA, RpcError, RpcErrorCode, STATE_MERKLE_TREE_NETWORK_FEE, STATE_MERKLE_TREE_ROLLOVER_FEE, STATE_TREE_LOOKUP_TABLE_DEVNET, STATE_TREE_LOOKUP_TABLE_MAINNET, SelectInUtxosError, SelectInUtxosErrorCode, type SignatureWithMetadata, type StateTreeInfo, type StateTreeLUTPair, type SystemAccountMetaConfig, TEST_BATCH_ADDRESS_TREE, TRANSACTION_MERKLE_TREE_ROLLOVER_THRESHOLD, type TokenBalance, type TokenData, type TreeInfo, TreeType, UTXO_MERGE_MAXIMUM, UTXO_MERGE_THRESHOLD, UtilsError, UtilsErrorCode, UtxoError, UtxoErrorCode, VERSION, type ValidityProof, type ValidityProofWithContext, type WithContext, type WithCursor, addressToBytes, assertIsBN254, assertValidBN254Hash, bigIntToBytesBE, bigIntToBytesLE, bn254Add, bn254FromBytes, bn254Mul, bn254Sub, bn254ToBytes, bn254ToDecimalString, bytesEqual, bytesToAddress, bytesToBigIntBE, bytesToBigIntLE, bytesToDecimalString, bytesToHex, createBN254, createBN254Error, createPhotonRpc, createProofError, createRpcError, createSystemAccountConfig, createSystemAccountConfigWithCpi, createUtxoError, defaultStateTreeLookupTables, defaultStaticAccounts, defaultTestStateTreeAccounts, deriveAddress, deriveAddressSeed, deriveAddressSeedV2, deriveAddressV2, encodeBN254toBase58, encodeBN254toHex, featureFlags, getAccountCompressionAuthority, getAccountCompressionAuthority$1 as getCompressionAuthority, getCpiSignerPda, getDefaultAddressTreeInfo, getIndexOrAdd, getLightSystemAccountMetas, getLightSystemAccountMetasV2, getSystemProgram, hashToBn254FieldSizeBe, hashvToBn254FieldSizeBe, hashvToBn254FieldSizeBeWithBump, hexToBytes, importEd25519PublicKey, isBN254, isLocalTest, isSmallerThanFieldSize, localTestActiveStateTreeInfos, mergeBytes, packNewAddressParams, padBytes, pushUniqueItems, toArray, toHex, validateBN254Hash, versionedEndpoint };
|
|
1033
1080
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/state/types.ts","../src/state/bn254.ts","../src/constants.ts","../src/errors.ts","../src/utils/conversion.ts","../src/utils/address.ts","../src/utils/instruction.ts","../src/rpc.ts"],"sourcesContent":[],"mappings":"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AAIjB,cE/LI,sBF+LJ,EE/L0B,OF+L1B,CAAA,8CAAA,CAAA;AAIG,cE7LC,oBF6LD,EE7LqB,UF6LrB,CE7LqB,WF6LrB,CAAA;AAIL,cE/LM,wBF+LN,EE/L8B,UF+L9B,CE/L8B,WF+L9B,CAAA;AAAU,cE7LJ,uCF6LI,EE7LmC,UF6LnC,CE7LmC,WF6LnC,CAAA;AAMA,cEjMJ,0CFqMH,EErM6C,UFqMpC,CErMoC,WFqMpC,CAAA;AAUF,cE7MJ,gCF6MwB,EE7MQ,UF6MR,CE7MQ,WF6MR,CAAA;AAYpB,cEvNJ,sBFuNoB,EEvNE,UFuNF,CEvNE,WFuNF,CAAA;;AAMN,cEtNd,+BFsNc,EEtNiB,OFsNjB,CAAA,8CAAA,CAAA;;AAEE,cErNhB,yCFqNgB,EErNyB,OFqNzB,CAAA,8CAAA,CAAA;AAM7B;cExNa,gCAA8B;;cAG9B,0CAAwC;ADxEzC,UC0EK,gBAAA,CD1EA;EASD,oBAAO,ECkEC,ODlED;EAQP,kBAAa,EC2DP,OD3DyC;AA2B/D;AAqCA;AAcA;AAQA;AAOgB,iBC5BA,4BAAA,CAAA,CD4BsC,EAAA;EAOtC,OAAA,EClCL,gBDkCyB,EAAA;EAWpB,MAAA,EC5CN,gBD4CqB,EAAA;AAW/B,CAAA;AAWgB,cC3CH,kBD2CmD,EC3CjC,OD2C2C,CAAA,6CAAA,CAAA;AAa1D,cCvDH,sBDuDmD,ECvD7B,ODuDuC,CAAA,6CAAA,CAAA;AAiB1D,cCvEH,kBDuEW,ECvEO,ODuEP,CAAA,6CAAA,CAAA;AAAI,cCrEf,oBDqEe,ECrEK,ODqEL,CAAA,6CAAA,CAAA;AAAU,cCpEzB,wBDoEyB,ECpED,ODoEC,CAAA,6CAAA,CAAA;AAAQ,cCnEjC,oBDmEiC,ECnEb,ODmEa,CAAA,6CAAA,CAAA;AAAK,cChEtC,YDgEsC,EChE1B,ODgE0B,CAAA,6CAAA,CAAA;AAOnC,cCtEH,aDsEW,ECtEE,ODsEF,CAAA,6CAAA,CAAA;AAAI,cCnEf,mBDmEe,ECnEI,ODmEJ,CAAA,6CAAA,CAAA;AAAU,cClEzB,aDkEyB,EClEZ,ODkEY,CAAA,6CAAA,CAAA;AAAQ,cCjEjC,mBDiEiC,ECjEd,ODiEc,CAAA,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"}
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/state/types.ts","../src/state/bn254.ts","../src/constants.ts","../src/errors.ts","../src/utils/conversion.ts","../src/utils/address.ts","../src/utils/instruction.ts","../src/utils/crypto.ts","../src/rpc.ts"],"sourcesContent":[],"mappings":"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oBF+LD,EE/LqB,UF+LrB,CE/LqB,WF+LrB,CAAA;AAIL,cEjMM,wBFiMN,EEjM8B,UFiM9B,CEjM8B,WFiM9B,CAAA;AAAU,cE/LJ,uCF+LI,EE/LmC,UF+LnC,CE/LmC,WF+LnC,CAAA;AAMA,cEnMJ,0CFuMH,EEvM6C,UFuMpC,CEvMoC,WFuMpC,CAAA;AAUF,cE/MJ,gCF+MwB,EE/MQ,UF+MR,CE/MQ,WF+MR,CAAA;AAYpB,cEzNJ,sBFyNoB,EEzNE,UFyNF,CEzNE,WFyNF,CAAA;;AAMN,cExNd,+BFwNc,EExNiB,OFwNjB,CAAA,8CAAA,CAAA;;AAEE,cEvNhB,yCFuNgB,EEvNyB,OFuNzB,CAAA,8CAAA,CAAA;AAM7B;cE1Na,gCAA8B;;cAG9B,0CAAwC;ADxEzC,UC0EK,gBAAA,CD1EA;EASD,oBAAO,ECkEC,ODlED;EAQP,kBAAa,EC2DP,OD3DO;AA2B7B;AAqCA;AAcA;AAQA;AAOgB,iBC5BA,4BAAA,CAAA,CD4BsC,EAAA;EAOtC,OAAA,EClCL,gBDkCyB,EAAA;EAWpB,MAAA,EC5CN,gBD4CqB,EAAA;AAW/B,CAAA;AAWgB,cC3CH,kBD2CmD,EC3CjC,OD2C2C,CAAA,6CAAA,CAAA;AAa1D,cCvDH,sBDuDmD,ECvD7B,ODuDuC,CAAA,6CAAA,CAAA;AAiB1D,cCvEH,kBDuEW,ECvEO,ODuEP,CAAA,6CAAA,CAAA;AAAI,cCrEf,oBDqEe,ECrEK,ODqEL,CAAA,6CAAA,CAAA;AAAU,cCpEzB,wBDoEyB,ECpED,ODoEC,CAAA,6CAAA,CAAA;AAAQ,cCnEjC,oBDmEiC,ECnEb,ODmEa,CAAA,6CAAA,CAAA;AAAK,cChEtC,YDgEsC,EChE1B,ODgE0B,CAAA,6CAAA,CAAA;AAOnC,cCtEH,aDsEW,ECtEE,ODsEF,CAAA,6CAAA,CAAA;AAAI,cCnEf,mBDmEe,ECnEI,ODmEJ,CAAA,6CAAA,CAAA;AAAU,cClEzB,aDkEyB,EClEZ,ODkEY,CAAA,6CAAA,CAAA;AAAQ,cCjEjC,mBDiEiC,ECjEd,ODiEc,CAAA,6CAAA,CAAA;AAAK,cC/DtC,mBD+DsC,EC/DnB,OD+DmB,CAAA,6CAAA,CAAA;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"}
|