@aztec/world-state 0.57.0 → 0.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dest/index.d.ts +1 -0
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +2 -1
- package/dest/native/merkle_trees_facade.d.ts +34 -0
- package/dest/native/merkle_trees_facade.d.ts.map +1 -0
- package/dest/native/merkle_trees_facade.js +193 -0
- package/dest/native/message.d.ts +78 -19
- package/dest/native/message.d.ts.map +1 -1
- package/dest/native/message.js +27 -26
- package/dest/native/native_world_state.d.ts +39 -38
- package/dest/native/native_world_state.d.ts.map +1 -1
- package/dest/native/native_world_state.js +108 -254
- package/dest/native/native_world_state_instance.d.ts +40 -0
- package/dest/native/native_world_state_instance.d.ts.map +1 -0
- package/dest/native/native_world_state_instance.js +183 -0
- package/dest/synchronizer/config.d.ts +2 -2
- package/dest/synchronizer/config.d.ts.map +1 -1
- package/dest/synchronizer/config.js +6 -7
- package/dest/synchronizer/factory.d.ts +3 -0
- package/dest/synchronizer/factory.d.ts.map +1 -1
- package/dest/synchronizer/factory.js +13 -4
- package/dest/synchronizer/server_world_state_synchronizer.d.ts +41 -41
- package/dest/synchronizer/server_world_state_synchronizer.d.ts.map +1 -1
- package/dest/synchronizer/server_world_state_synchronizer.js +126 -151
- package/dest/test/utils.d.ts +14 -0
- package/dest/test/utils.d.ts.map +1 -0
- package/dest/test/utils.js +67 -0
- package/dest/world-state-db/index.d.ts +1 -1
- package/dest/world-state-db/index.d.ts.map +1 -1
- package/dest/world-state-db/merkle_tree_db.d.ts +42 -32
- package/dest/world-state-db/merkle_tree_db.d.ts.map +1 -1
- package/dest/world-state-db/merkle_tree_db.js +1 -1
- package/dest/world-state-db/merkle_tree_operations_facade.d.ts +8 -37
- package/dest/world-state-db/merkle_tree_operations_facade.d.ts.map +1 -1
- package/dest/world-state-db/merkle_tree_operations_facade.js +6 -45
- package/dest/world-state-db/merkle_tree_snapshot_operations_facade.d.ts +4 -13
- package/dest/world-state-db/merkle_tree_snapshot_operations_facade.d.ts.map +1 -1
- package/dest/world-state-db/merkle_tree_snapshot_operations_facade.js +2 -29
- package/dest/world-state-db/merkle_trees.d.ts +17 -19
- package/dest/world-state-db/merkle_trees.d.ts.map +1 -1
- package/dest/world-state-db/merkle_trees.js +39 -36
- package/package.json +15 -12
- package/src/index.ts +1 -0
- package/src/native/merkle_trees_facade.ts +279 -0
- package/src/native/message.ts +97 -20
- package/src/native/native_world_state.ts +125 -346
- package/src/native/native_world_state_instance.ts +262 -0
- package/src/synchronizer/config.ts +8 -9
- package/src/synchronizer/factory.ts +20 -3
- package/src/synchronizer/server_world_state_synchronizer.ts +149 -178
- package/src/test/utils.ts +123 -0
- package/src/world-state-db/index.ts +1 -1
- package/src/world-state-db/merkle_tree_db.ts +55 -49
- package/src/world-state-db/merkle_tree_operations_facade.ts +10 -55
- package/src/world-state-db/merkle_tree_snapshot_operations_facade.ts +7 -46
- package/src/world-state-db/merkle_trees.ts +50 -45
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ Once a new block is received, the synchronizer checks the uncommitted root value
|
|
|
31
31
|
|
|
32
32
|
### The Merkle Tree Interface
|
|
33
33
|
|
|
34
|
-
The interface to the Merkle Tree DB offers a unified asynchronous API to the set of trees available. Reads from the Merkle Trees need to be marked as to whether they should include uncommitted state. For this reason, the
|
|
34
|
+
The interface to the Merkle Tree DB offers a unified asynchronous API to the set of trees available. Reads from the Merkle Trees need to be marked as to whether they should include uncommitted state. For this reason, the MerkleTreeReadOperationsFacade exists to abstract this detail away from the end consumer.
|
|
35
35
|
|
|
36
36
|
# Building/Testing
|
|
37
37
|
|
package/dest/index.d.ts
CHANGED
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC"}
|
package/dest/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './synchronizer/index.js';
|
|
2
2
|
export * from './world-state-db/index.js';
|
|
3
3
|
export * from './synchronizer/config.js';
|
|
4
|
-
|
|
4
|
+
export * from './native/index.js';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxtQkFBbUIsQ0FBQyJ9
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { type BatchInsertionResult, type IndexedTreeId, MerkleTreeId, type MerkleTreeLeafType, type MerkleTreeReadOperations, type MerkleTreeWriteOperations, SiblingPath, type TreeInfo } from '@aztec/circuit-types';
|
|
3
|
+
import { Fr, type Header, NullifierLeaf, PublicDataTreeLeaf, StateReference } from '@aztec/circuits.js';
|
|
4
|
+
import { type IndexedTreeLeafPreimage } from '@aztec/foundation/trees';
|
|
5
|
+
import { type SerializedLeafValue, type WorldStateRevision } from './message.js';
|
|
6
|
+
import { type NativeWorldStateInstance } from './native_world_state_instance.js';
|
|
7
|
+
export declare class MerkleTreesFacade implements MerkleTreeReadOperations {
|
|
8
|
+
protected readonly instance: NativeWorldStateInstance;
|
|
9
|
+
protected readonly initialHeader: Header;
|
|
10
|
+
protected readonly revision: WorldStateRevision;
|
|
11
|
+
constructor(instance: NativeWorldStateInstance, initialHeader: Header, revision: WorldStateRevision);
|
|
12
|
+
getInitialHeader(): Header;
|
|
13
|
+
findLeafIndex(treeId: MerkleTreeId, value: MerkleTreeLeafType<MerkleTreeId>): Promise<bigint | undefined>;
|
|
14
|
+
findLeafIndexAfter(treeId: MerkleTreeId, leaf: MerkleTreeLeafType<MerkleTreeId>, startIndex: bigint): Promise<bigint | undefined>;
|
|
15
|
+
getLeafPreimage(treeId: IndexedTreeId, leafIndex: bigint): Promise<IndexedTreeLeafPreimage | undefined>;
|
|
16
|
+
getLeafValue<ID extends MerkleTreeId>(treeId: ID, leafIndex: bigint): Promise<MerkleTreeLeafType<ID> | undefined>;
|
|
17
|
+
getPreviousValueIndex(treeId: IndexedTreeId, value: bigint): Promise<{
|
|
18
|
+
index: bigint;
|
|
19
|
+
alreadyPresent: boolean;
|
|
20
|
+
} | undefined>;
|
|
21
|
+
getSiblingPath<N extends number>(treeId: MerkleTreeId, leafIndex: bigint): Promise<SiblingPath<N>>;
|
|
22
|
+
getStateReference(): Promise<StateReference>;
|
|
23
|
+
getInitialStateReference(): Promise<StateReference>;
|
|
24
|
+
getTreeInfo(treeId: MerkleTreeId): Promise<TreeInfo>;
|
|
25
|
+
}
|
|
26
|
+
export declare class MerkleTreesForkFacade extends MerkleTreesFacade implements MerkleTreeWriteOperations {
|
|
27
|
+
constructor(instance: NativeWorldStateInstance, initialHeader: Header, revision: WorldStateRevision);
|
|
28
|
+
updateArchive(header: Header): Promise<void>;
|
|
29
|
+
appendLeaves<ID extends MerkleTreeId>(treeId: ID, leaves: MerkleTreeLeafType<ID>[]): Promise<void>;
|
|
30
|
+
batchInsert<TreeHeight extends number, SubtreeSiblingPathHeight extends number, ID extends IndexedTreeId>(treeId: ID, rawLeaves: Buffer[], subtreeHeight: number): Promise<BatchInsertionResult<TreeHeight, SubtreeSiblingPathHeight>>;
|
|
31
|
+
close(): Promise<void>;
|
|
32
|
+
}
|
|
33
|
+
export declare function serializeLeaf(leaf: Fr | NullifierLeaf | PublicDataTreeLeaf): SerializedLeafValue;
|
|
34
|
+
//# sourceMappingURL=merkle_trees_facade.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merkle_trees_facade.d.ts","sourceRoot":"","sources":["../../src/native/merkle_trees_facade.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { MerkleTreeId, SiblingPath, } from '@aztec/circuit-types';
|
|
2
|
+
import { Fr, NullifierLeaf, NullifierLeafPreimage, PartialStateReference, PublicDataTreeLeaf, PublicDataTreeLeafPreimage, StateReference, } from '@aztec/circuits.js';
|
|
3
|
+
import { serializeToBuffer } from '@aztec/foundation/serialize';
|
|
4
|
+
import assert from 'assert';
|
|
5
|
+
import { WorldStateMessageType, blockStateReference, treeStateReferenceToSnapshot, } from './message.js';
|
|
6
|
+
export class MerkleTreesFacade {
|
|
7
|
+
constructor(instance, initialHeader, revision) {
|
|
8
|
+
this.instance = instance;
|
|
9
|
+
this.initialHeader = initialHeader;
|
|
10
|
+
this.revision = revision;
|
|
11
|
+
}
|
|
12
|
+
getInitialHeader() {
|
|
13
|
+
return this.initialHeader;
|
|
14
|
+
}
|
|
15
|
+
findLeafIndex(treeId, value) {
|
|
16
|
+
return this.findLeafIndexAfter(treeId, value, 0n);
|
|
17
|
+
}
|
|
18
|
+
async findLeafIndexAfter(treeId, leaf, startIndex) {
|
|
19
|
+
const index = await this.instance.call(WorldStateMessageType.FIND_LEAF_INDEX, {
|
|
20
|
+
leaf: serializeLeaf(hydrateLeaf(treeId, leaf)),
|
|
21
|
+
revision: this.revision,
|
|
22
|
+
treeId,
|
|
23
|
+
startIndex,
|
|
24
|
+
});
|
|
25
|
+
if (typeof index === 'number' || typeof index === 'bigint') {
|
|
26
|
+
return BigInt(index);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
async getLeafPreimage(treeId, leafIndex) {
|
|
33
|
+
const resp = await this.instance.call(WorldStateMessageType.GET_LEAF_PREIMAGE, {
|
|
34
|
+
leafIndex,
|
|
35
|
+
revision: this.revision,
|
|
36
|
+
treeId,
|
|
37
|
+
});
|
|
38
|
+
return resp ? deserializeIndexedLeaf(resp) : undefined;
|
|
39
|
+
}
|
|
40
|
+
async getLeafValue(treeId, leafIndex) {
|
|
41
|
+
const resp = await this.instance.call(WorldStateMessageType.GET_LEAF_VALUE, {
|
|
42
|
+
leafIndex,
|
|
43
|
+
revision: this.revision,
|
|
44
|
+
treeId,
|
|
45
|
+
});
|
|
46
|
+
if (!resp) {
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
const leaf = deserializeLeafValue(resp);
|
|
50
|
+
if (leaf instanceof Fr) {
|
|
51
|
+
return leaf;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
return leaf.toBuffer();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
async getPreviousValueIndex(treeId, value) {
|
|
58
|
+
const resp = await this.instance.call(WorldStateMessageType.FIND_LOW_LEAF, {
|
|
59
|
+
key: new Fr(value),
|
|
60
|
+
revision: this.revision,
|
|
61
|
+
treeId,
|
|
62
|
+
});
|
|
63
|
+
return {
|
|
64
|
+
alreadyPresent: resp.alreadyPresent,
|
|
65
|
+
index: BigInt(resp.index),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
async getSiblingPath(treeId, leafIndex) {
|
|
69
|
+
const siblingPath = await this.instance.call(WorldStateMessageType.GET_SIBLING_PATH, {
|
|
70
|
+
leafIndex,
|
|
71
|
+
revision: this.revision,
|
|
72
|
+
treeId,
|
|
73
|
+
});
|
|
74
|
+
return new SiblingPath(siblingPath.length, siblingPath);
|
|
75
|
+
}
|
|
76
|
+
async getStateReference() {
|
|
77
|
+
const resp = await this.instance.call(WorldStateMessageType.GET_STATE_REFERENCE, {
|
|
78
|
+
revision: this.revision,
|
|
79
|
+
});
|
|
80
|
+
return new StateReference(treeStateReferenceToSnapshot(resp.state[MerkleTreeId.L1_TO_L2_MESSAGE_TREE]), new PartialStateReference(treeStateReferenceToSnapshot(resp.state[MerkleTreeId.NOTE_HASH_TREE]), treeStateReferenceToSnapshot(resp.state[MerkleTreeId.NULLIFIER_TREE]), treeStateReferenceToSnapshot(resp.state[MerkleTreeId.PUBLIC_DATA_TREE])));
|
|
81
|
+
}
|
|
82
|
+
async getInitialStateReference() {
|
|
83
|
+
const resp = await this.instance.call(WorldStateMessageType.GET_INITIAL_STATE_REFERENCE, void 0);
|
|
84
|
+
return new StateReference(treeStateReferenceToSnapshot(resp.state[MerkleTreeId.L1_TO_L2_MESSAGE_TREE]), new PartialStateReference(treeStateReferenceToSnapshot(resp.state[MerkleTreeId.NOTE_HASH_TREE]), treeStateReferenceToSnapshot(resp.state[MerkleTreeId.NULLIFIER_TREE]), treeStateReferenceToSnapshot(resp.state[MerkleTreeId.PUBLIC_DATA_TREE])));
|
|
85
|
+
}
|
|
86
|
+
async getTreeInfo(treeId) {
|
|
87
|
+
const resp = await this.instance.call(WorldStateMessageType.GET_TREE_INFO, {
|
|
88
|
+
treeId: treeId,
|
|
89
|
+
revision: this.revision,
|
|
90
|
+
});
|
|
91
|
+
return {
|
|
92
|
+
depth: resp.depth,
|
|
93
|
+
root: resp.root,
|
|
94
|
+
size: BigInt(resp.size),
|
|
95
|
+
treeId,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
export class MerkleTreesForkFacade extends MerkleTreesFacade {
|
|
100
|
+
constructor(instance, initialHeader, revision) {
|
|
101
|
+
assert.notEqual(revision.forkId, 0, 'Fork ID must be set');
|
|
102
|
+
assert.equal(revision.includeUncommitted, true, 'Fork must include uncommitted data');
|
|
103
|
+
super(instance, initialHeader, revision);
|
|
104
|
+
}
|
|
105
|
+
async updateArchive(header) {
|
|
106
|
+
await this.instance.call(WorldStateMessageType.UPDATE_ARCHIVE, {
|
|
107
|
+
forkId: this.revision.forkId,
|
|
108
|
+
blockHeaderHash: header.hash().toBuffer(),
|
|
109
|
+
blockStateRef: blockStateReference(header.state),
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
async appendLeaves(treeId, leaves) {
|
|
113
|
+
await this.instance.call(WorldStateMessageType.APPEND_LEAVES, {
|
|
114
|
+
leaves: leaves.map(leaf => leaf),
|
|
115
|
+
forkId: this.revision.forkId,
|
|
116
|
+
treeId,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
async batchInsert(treeId, rawLeaves, subtreeHeight) {
|
|
120
|
+
const leaves = rawLeaves.map((leaf) => hydrateLeaf(treeId, leaf)).map(serializeLeaf);
|
|
121
|
+
const resp = await this.instance.call(WorldStateMessageType.BATCH_INSERT, {
|
|
122
|
+
leaves,
|
|
123
|
+
treeId,
|
|
124
|
+
forkId: this.revision.forkId,
|
|
125
|
+
subtreeDepth: subtreeHeight,
|
|
126
|
+
});
|
|
127
|
+
return {
|
|
128
|
+
newSubtreeSiblingPath: new SiblingPath(resp.subtree_path.length, resp.subtree_path),
|
|
129
|
+
sortedNewLeaves: resp.sorted_leaves
|
|
130
|
+
.map(([leaf]) => leaf)
|
|
131
|
+
.map(deserializeLeafValue)
|
|
132
|
+
.map(serializeToBuffer),
|
|
133
|
+
sortedNewLeavesIndexes: resp.sorted_leaves.map(([, index]) => index),
|
|
134
|
+
lowLeavesWitnessData: resp.low_leaf_witness_data.map(data => ({
|
|
135
|
+
index: BigInt(data.index),
|
|
136
|
+
leafPreimage: deserializeIndexedLeaf(data.leaf),
|
|
137
|
+
siblingPath: new SiblingPath(data.path.length, data.path),
|
|
138
|
+
})),
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
async close() {
|
|
142
|
+
assert.notEqual(this.revision.forkId, 0, 'Fork ID must be set');
|
|
143
|
+
await this.instance.call(WorldStateMessageType.DELETE_FORK, { forkId: this.revision.forkId });
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
function hydrateLeaf(treeId, leaf) {
|
|
147
|
+
if (leaf instanceof Fr) {
|
|
148
|
+
return leaf;
|
|
149
|
+
}
|
|
150
|
+
else if (treeId === MerkleTreeId.NULLIFIER_TREE) {
|
|
151
|
+
return NullifierLeaf.fromBuffer(leaf);
|
|
152
|
+
}
|
|
153
|
+
else if (treeId === MerkleTreeId.PUBLIC_DATA_TREE) {
|
|
154
|
+
return PublicDataTreeLeaf.fromBuffer(leaf);
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
return Fr.fromBuffer(leaf);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
export function serializeLeaf(leaf) {
|
|
161
|
+
if (leaf instanceof Fr) {
|
|
162
|
+
return leaf.toBuffer();
|
|
163
|
+
}
|
|
164
|
+
else if (leaf instanceof NullifierLeaf) {
|
|
165
|
+
return { value: leaf.nullifier.toBuffer() };
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
return { value: leaf.value.toBuffer(), slot: leaf.slot.toBuffer() };
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
function deserializeLeafValue(leaf) {
|
|
172
|
+
if (Buffer.isBuffer(leaf)) {
|
|
173
|
+
return Fr.fromBuffer(leaf);
|
|
174
|
+
}
|
|
175
|
+
else if ('slot' in leaf) {
|
|
176
|
+
return new PublicDataTreeLeaf(Fr.fromBuffer(leaf.slot), Fr.fromBuffer(leaf.value));
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
return new NullifierLeaf(Fr.fromBuffer(leaf.value));
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
function deserializeIndexedLeaf(leaf) {
|
|
183
|
+
if ('slot' in leaf.value) {
|
|
184
|
+
return new PublicDataTreeLeafPreimage(Fr.fromBuffer(leaf.value.slot), Fr.fromBuffer(leaf.value.value), Fr.fromBuffer(leaf.nextValue), BigInt(leaf.nextIndex));
|
|
185
|
+
}
|
|
186
|
+
else if ('value' in leaf.value) {
|
|
187
|
+
return new NullifierLeafPreimage(Fr.fromBuffer(leaf.value.value), Fr.fromBuffer(leaf.nextValue), BigInt(leaf.nextIndex));
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
throw new Error('Invalid leaf type');
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVya2xlX3RyZWVzX2ZhY2FkZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uYXRpdmUvbWVya2xlX3RyZWVzX2ZhY2FkZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0wsWUFBWSxFQUlaLFdBQVcsR0FFWixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFDTCxFQUFFLEVBRUYsYUFBYSxFQUNiLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLDBCQUEwQixFQUMxQixjQUFjLEdBQ2YsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUdoRSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUdMLHFCQUFxQixFQUVyQixtQkFBbUIsRUFDbkIsNEJBQTRCLEdBQzdCLE1BQU0sY0FBYyxDQUFDO0FBR3RCLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFDcUIsUUFBa0MsRUFDbEMsYUFBcUIsRUFDckIsUUFBNEI7UUFGNUIsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7UUFDbEMsa0JBQWEsR0FBYixhQUFhLENBQVE7UUFDckIsYUFBUSxHQUFSLFFBQVEsQ0FBb0I7SUFDOUMsQ0FBQztJQUVKLGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQW9CLEVBQUUsS0FBdUM7UUFDekUsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsS0FBSyxDQUFDLGtCQUFrQixDQUN0QixNQUFvQixFQUNwQixJQUFzQyxFQUN0QyxVQUFrQjtRQUVsQixNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGVB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
|
package/dest/native/message.d.ts
CHANGED
|
@@ -35,21 +35,40 @@ export declare class TypedMessage<T, B> {
|
|
|
35
35
|
export declare enum WorldStateMessageType {
|
|
36
36
|
GET_TREE_INFO = 100,
|
|
37
37
|
GET_STATE_REFERENCE = 101,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
GET_INITIAL_STATE_REFERENCE = 102,
|
|
39
|
+
GET_LEAF_VALUE = 103,
|
|
40
|
+
GET_LEAF_PREIMAGE = 104,
|
|
41
|
+
GET_SIBLING_PATH = 105,
|
|
42
|
+
FIND_LEAF_INDEX = 106,
|
|
43
|
+
FIND_LOW_LEAF = 107,
|
|
44
|
+
APPEND_LEAVES = 108,
|
|
45
|
+
BATCH_INSERT = 109,
|
|
46
|
+
UPDATE_ARCHIVE = 110,
|
|
47
|
+
COMMIT = 111,
|
|
48
|
+
ROLLBACK = 112,
|
|
49
|
+
SYNC_BLOCK = 113,
|
|
50
|
+
CREATE_FORK = 114,
|
|
51
|
+
DELETE_FORK = 115,
|
|
52
|
+
FINALISE_BLOCKS = 116,
|
|
53
|
+
UNWIND_BLOCKS = 117,
|
|
54
|
+
REMOVE_HISTORICAL_BLOCKS = 118,
|
|
55
|
+
GET_STATUS = 119,
|
|
56
|
+
CLOSE = 999
|
|
49
57
|
}
|
|
50
58
|
interface WithTreeId {
|
|
51
59
|
treeId: MerkleTreeId;
|
|
52
60
|
}
|
|
61
|
+
export interface WorldStateStatus {
|
|
62
|
+
/** Last block number that can still be unwound. */
|
|
63
|
+
unfinalisedBlockNumber: bigint;
|
|
64
|
+
/** Last block number that is finalised and cannot be unwound. */
|
|
65
|
+
finalisedBlockNumber: bigint;
|
|
66
|
+
/** Oldest block still available for historical queries and forks. */
|
|
67
|
+
oldestHistoricalBlock: bigint;
|
|
68
|
+
}
|
|
69
|
+
interface WithForkId {
|
|
70
|
+
forkId: number;
|
|
71
|
+
}
|
|
53
72
|
interface WithWorldStateRevision {
|
|
54
73
|
revision: WorldStateRevision;
|
|
55
74
|
}
|
|
@@ -70,6 +89,9 @@ export type SerializedIndexedLeaf = {
|
|
|
70
89
|
interface WithLeafValue {
|
|
71
90
|
leaf: SerializedLeafValue;
|
|
72
91
|
}
|
|
92
|
+
interface BlockShiftRequest {
|
|
93
|
+
toBlockNumber: bigint;
|
|
94
|
+
}
|
|
73
95
|
interface WithLeaves {
|
|
74
96
|
leaves: SerializedLeafValue[];
|
|
75
97
|
}
|
|
@@ -106,9 +128,9 @@ interface FindLowLeafResponse {
|
|
|
106
128
|
index: bigint | number;
|
|
107
129
|
alreadyPresent: boolean;
|
|
108
130
|
}
|
|
109
|
-
interface AppendLeavesRequest extends WithTreeId, WithLeaves {
|
|
131
|
+
interface AppendLeavesRequest extends WithTreeId, WithForkId, WithLeaves {
|
|
110
132
|
}
|
|
111
|
-
interface BatchInsertRequest extends WithTreeId, WithLeaves {
|
|
133
|
+
interface BatchInsertRequest extends WithTreeId, WithForkId, WithLeaves {
|
|
112
134
|
subtreeDepth: number;
|
|
113
135
|
}
|
|
114
136
|
interface BatchInsertResponse {
|
|
@@ -120,24 +142,42 @@ interface BatchInsertResponse {
|
|
|
120
142
|
sorted_leaves: ReadonlyArray<[SerializedLeafValue, UInt32]>;
|
|
121
143
|
subtree_path: Tuple<Buffer, number>;
|
|
122
144
|
}
|
|
123
|
-
interface UpdateArchiveRequest {
|
|
145
|
+
interface UpdateArchiveRequest extends WithForkId {
|
|
124
146
|
blockStateRef: BlockStateReference;
|
|
125
|
-
|
|
147
|
+
blockHeaderHash: Buffer;
|
|
126
148
|
}
|
|
127
149
|
interface SyncBlockRequest {
|
|
150
|
+
blockNumber: number;
|
|
128
151
|
blockStateRef: BlockStateReference;
|
|
129
|
-
|
|
152
|
+
blockHeaderHash: Fr;
|
|
130
153
|
paddedNoteHashes: readonly SerializedLeafValue[];
|
|
131
154
|
paddedL1ToL2Messages: readonly SerializedLeafValue[];
|
|
132
155
|
paddedNullifiers: readonly SerializedLeafValue[];
|
|
133
156
|
batchesOfPaddedPublicDataWrites: readonly SerializedLeafValue[][];
|
|
134
157
|
}
|
|
135
158
|
interface SyncBlockResponse {
|
|
136
|
-
|
|
159
|
+
status: WorldStateStatus;
|
|
160
|
+
}
|
|
161
|
+
interface CreateForkRequest {
|
|
162
|
+
latest: boolean;
|
|
163
|
+
blockNumber: number;
|
|
164
|
+
}
|
|
165
|
+
interface CreateForkResponse {
|
|
166
|
+
forkId: number;
|
|
167
|
+
}
|
|
168
|
+
interface DeleteForkRequest {
|
|
169
|
+
forkId: number;
|
|
170
|
+
}
|
|
171
|
+
interface CreateForkResponse {
|
|
172
|
+
forkId: number;
|
|
173
|
+
}
|
|
174
|
+
interface DeleteForkRequest {
|
|
175
|
+
forkId: number;
|
|
137
176
|
}
|
|
138
177
|
export type WorldStateRequest = {
|
|
139
178
|
[WorldStateMessageType.GET_TREE_INFO]: GetTreeInfoRequest;
|
|
140
179
|
[WorldStateMessageType.GET_STATE_REFERENCE]: GetStateReferenceRequest;
|
|
180
|
+
[WorldStateMessageType.GET_INITIAL_STATE_REFERENCE]: void;
|
|
141
181
|
[WorldStateMessageType.GET_LEAF_VALUE]: GetLeafRequest;
|
|
142
182
|
[WorldStateMessageType.GET_LEAF_PREIMAGE]: GetLeafPreImageRequest;
|
|
143
183
|
[WorldStateMessageType.GET_SIBLING_PATH]: GetSiblingPathRequest;
|
|
@@ -149,10 +189,18 @@ export type WorldStateRequest = {
|
|
|
149
189
|
[WorldStateMessageType.COMMIT]: void;
|
|
150
190
|
[WorldStateMessageType.ROLLBACK]: void;
|
|
151
191
|
[WorldStateMessageType.SYNC_BLOCK]: SyncBlockRequest;
|
|
192
|
+
[WorldStateMessageType.CREATE_FORK]: CreateForkRequest;
|
|
193
|
+
[WorldStateMessageType.DELETE_FORK]: DeleteForkRequest;
|
|
194
|
+
[WorldStateMessageType.REMOVE_HISTORICAL_BLOCKS]: BlockShiftRequest;
|
|
195
|
+
[WorldStateMessageType.UNWIND_BLOCKS]: BlockShiftRequest;
|
|
196
|
+
[WorldStateMessageType.FINALISE_BLOCKS]: BlockShiftRequest;
|
|
197
|
+
[WorldStateMessageType.GET_STATUS]: void;
|
|
198
|
+
[WorldStateMessageType.CLOSE]: void;
|
|
152
199
|
};
|
|
153
200
|
export type WorldStateResponse = {
|
|
154
201
|
[WorldStateMessageType.GET_TREE_INFO]: GetTreeInfoResponse;
|
|
155
202
|
[WorldStateMessageType.GET_STATE_REFERENCE]: GetStateReferenceResponse;
|
|
203
|
+
[WorldStateMessageType.GET_INITIAL_STATE_REFERENCE]: GetStateReferenceResponse;
|
|
156
204
|
[WorldStateMessageType.GET_LEAF_VALUE]: GetLeafResponse;
|
|
157
205
|
[WorldStateMessageType.GET_LEAF_PREIMAGE]: GetLeafPreImageResponse;
|
|
158
206
|
[WorldStateMessageType.GET_SIBLING_PATH]: GetSiblingPathResponse;
|
|
@@ -164,9 +212,20 @@ export type WorldStateResponse = {
|
|
|
164
212
|
[WorldStateMessageType.COMMIT]: void;
|
|
165
213
|
[WorldStateMessageType.ROLLBACK]: void;
|
|
166
214
|
[WorldStateMessageType.SYNC_BLOCK]: SyncBlockResponse;
|
|
215
|
+
[WorldStateMessageType.CREATE_FORK]: CreateForkResponse;
|
|
216
|
+
[WorldStateMessageType.DELETE_FORK]: void;
|
|
217
|
+
[WorldStateMessageType.REMOVE_HISTORICAL_BLOCKS]: WorldStateStatus;
|
|
218
|
+
[WorldStateMessageType.UNWIND_BLOCKS]: WorldStateStatus;
|
|
219
|
+
[WorldStateMessageType.FINALISE_BLOCKS]: WorldStateStatus;
|
|
220
|
+
[WorldStateMessageType.GET_STATUS]: WorldStateStatus;
|
|
221
|
+
[WorldStateMessageType.CLOSE]: void;
|
|
222
|
+
};
|
|
223
|
+
export type WorldStateRevision = {
|
|
224
|
+
forkId: number;
|
|
225
|
+
blockNumber: number;
|
|
226
|
+
includeUncommitted: boolean;
|
|
167
227
|
};
|
|
168
|
-
export
|
|
169
|
-
export declare function worldStateRevision(includeUncommittedOrBlock: false | true | number): WorldStateRevision;
|
|
228
|
+
export declare function worldStateRevision(includeUncommitted: boolean, forkId: number | undefined, blockNumber: number | undefined): WorldStateRevision;
|
|
170
229
|
type TreeStateReference = readonly [Buffer, number | bigint];
|
|
171
230
|
type BlockStateReference = Map<Exclude<MerkleTreeId, MerkleTreeId.ARCHIVE>, TreeStateReference>;
|
|
172
231
|
export declare function treeStateReferenceToSnapshot([root, size]: TreeStateReference): AppendOnlyTreeSnapshot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/native/message.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/native/message.ts"],"names":[],"mappings":"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"}
|
package/dest/native/message.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { MerkleTreeId } from '@aztec/circuit-types';
|
|
2
|
-
import { AppendOnlyTreeSnapshot, Fr
|
|
2
|
+
import { AppendOnlyTreeSnapshot, Fr } from '@aztec/circuits.js';
|
|
3
3
|
export class MessageHeader {
|
|
4
4
|
constructor({ messageId, requestId }) {
|
|
5
5
|
this.messageId = messageId ?? 0;
|
|
@@ -26,31 +26,32 @@ export var WorldStateMessageType;
|
|
|
26
26
|
(function (WorldStateMessageType) {
|
|
27
27
|
WorldStateMessageType[WorldStateMessageType["GET_TREE_INFO"] = 100] = "GET_TREE_INFO";
|
|
28
28
|
WorldStateMessageType[WorldStateMessageType["GET_STATE_REFERENCE"] = 101] = "GET_STATE_REFERENCE";
|
|
29
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
30
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
31
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
32
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
33
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
34
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
35
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
36
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
37
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
38
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
39
|
-
WorldStateMessageType[WorldStateMessageType["
|
|
29
|
+
WorldStateMessageType[WorldStateMessageType["GET_INITIAL_STATE_REFERENCE"] = 102] = "GET_INITIAL_STATE_REFERENCE";
|
|
30
|
+
WorldStateMessageType[WorldStateMessageType["GET_LEAF_VALUE"] = 103] = "GET_LEAF_VALUE";
|
|
31
|
+
WorldStateMessageType[WorldStateMessageType["GET_LEAF_PREIMAGE"] = 104] = "GET_LEAF_PREIMAGE";
|
|
32
|
+
WorldStateMessageType[WorldStateMessageType["GET_SIBLING_PATH"] = 105] = "GET_SIBLING_PATH";
|
|
33
|
+
WorldStateMessageType[WorldStateMessageType["FIND_LEAF_INDEX"] = 106] = "FIND_LEAF_INDEX";
|
|
34
|
+
WorldStateMessageType[WorldStateMessageType["FIND_LOW_LEAF"] = 107] = "FIND_LOW_LEAF";
|
|
35
|
+
WorldStateMessageType[WorldStateMessageType["APPEND_LEAVES"] = 108] = "APPEND_LEAVES";
|
|
36
|
+
WorldStateMessageType[WorldStateMessageType["BATCH_INSERT"] = 109] = "BATCH_INSERT";
|
|
37
|
+
WorldStateMessageType[WorldStateMessageType["UPDATE_ARCHIVE"] = 110] = "UPDATE_ARCHIVE";
|
|
38
|
+
WorldStateMessageType[WorldStateMessageType["COMMIT"] = 111] = "COMMIT";
|
|
39
|
+
WorldStateMessageType[WorldStateMessageType["ROLLBACK"] = 112] = "ROLLBACK";
|
|
40
|
+
WorldStateMessageType[WorldStateMessageType["SYNC_BLOCK"] = 113] = "SYNC_BLOCK";
|
|
41
|
+
WorldStateMessageType[WorldStateMessageType["CREATE_FORK"] = 114] = "CREATE_FORK";
|
|
42
|
+
WorldStateMessageType[WorldStateMessageType["DELETE_FORK"] = 115] = "DELETE_FORK";
|
|
43
|
+
WorldStateMessageType[WorldStateMessageType["FINALISE_BLOCKS"] = 116] = "FINALISE_BLOCKS";
|
|
44
|
+
WorldStateMessageType[WorldStateMessageType["UNWIND_BLOCKS"] = 117] = "UNWIND_BLOCKS";
|
|
45
|
+
WorldStateMessageType[WorldStateMessageType["REMOVE_HISTORICAL_BLOCKS"] = 118] = "REMOVE_HISTORICAL_BLOCKS";
|
|
46
|
+
WorldStateMessageType[WorldStateMessageType["GET_STATUS"] = 119] = "GET_STATUS";
|
|
47
|
+
WorldStateMessageType[WorldStateMessageType["CLOSE"] = 999] = "CLOSE";
|
|
40
48
|
})(WorldStateMessageType || (WorldStateMessageType = {}));
|
|
41
|
-
export function worldStateRevision(
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
else if (includeUncommittedOrBlock) {
|
|
49
|
-
return -1;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
return 0;
|
|
53
|
-
}
|
|
49
|
+
export function worldStateRevision(includeUncommitted, forkId, blockNumber) {
|
|
50
|
+
return {
|
|
51
|
+
forkId: forkId ?? 0,
|
|
52
|
+
blockNumber: blockNumber ?? 0,
|
|
53
|
+
includeUncommitted,
|
|
54
|
+
};
|
|
54
55
|
}
|
|
55
56
|
export function treeStateReferenceToSnapshot([root, size]) {
|
|
56
57
|
return new AppendOnlyTreeSnapshot(Fr.fromBuffer(root), Number(size));
|
|
@@ -66,4 +67,4 @@ export function blockStateReference(state) {
|
|
|
66
67
|
[MerkleTreeId.L1_TO_L2_MESSAGE_TREE, treeStateReference(state.l1ToL2MessageTree)],
|
|
67
68
|
]);
|
|
68
69
|
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uYXRpdmUvbWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLEVBQUUsRUFBb0MsTUFBTSxvQkFBb0IsQ0FBQztBQVVsRyxNQUFNLE9BQU8sYUFBYTtJQU14QixZQUFZLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBcUI7UUFDckQsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFZO1FBQ2pDLE9BQU8sSUFBSSxhQUFhLENBQUMsSUFBeUIsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQVdELE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFlBQW1DLE9BQVUsRUFBa0IsTUFBcUIsRUFBa0IsS0FBUTtRQUEzRSxZQUFPLEdBQVAsT0FBTyxDQUFHO1FBQWtCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFBa0IsVUFBSyxHQUFMLEtBQUssQ0FBRztJQUFHLENBQUM7SUFFbEgsTUFBTSxDQUFDLGVBQWUsQ0FBTyxJQUFzQjtRQUNqRCxPQUFPLElBQUksWUFBWSxDQUFPLElBQUksQ0FBQyxTQUFTLENBQU0sRUFBRSxhQUFhLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBUTtRQUNoQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLFNBQVMsSUFBSSxHQUFHLElBQUksUUFBUSxJQUFJLEdBQUcsSUFBSSxPQUFPLElBQUksR0FBRyxDQUFDO0lBQzFHLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBTixJQUFZLHFCQWdDWDtBQWhDRCxXQUFZLHFCQUFxQjtJQUMvQixxRkFBbUIsQ0FBQTtJQUNuQixpR0FBbUIsQ0FBQTtJQUNuQixpSEFBMkIsQ0FBQTtJQUUzQix1RkFBYyxDQUFBO0lBQ2QsNkZBQWlCLENBQUE7SUFDakIsMkZBQWdCLENBQUE7SUFFaEIseUZBQWUsQ0FBQTtJQUNmLHFGQUFhLENBQUE7SUFFYixxRkFBYSxDQUFBO0lBQ2IsbUZBQVksQ0FBQTtJQUVaLHVGQUFjLENBQUE7SUFFZCx1RUFBTSxDQUFBO0lBQ04sMkVBQVEsQ0FBQTtJQUVSLCtFQUFVLENBQUE7SUFFVixpRkFBVyxDQUFBO0lBQ1gsaUZBQVcsQ0FBQTtJQUVYLHlGQUFlLENBQUE7SUFDZixxRkFBYSxDQUFBO0lBQ2IsMkdBQXdCLENBQUE7SUFFeEIsK0VBQVUsQ0FBQTtJQUVWLHFFQUFXLENBQUE7QUFDYixDQUFDLEVBaENXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFnQ2hDO0FBcU5ELE1BQU0sVUFBVSxrQkFBa0IsQ0FDaEMsa0JBQTJCLEVBQzNCLE1BQTBCLEVBQzFCLFdBQStCO0lBRS9CLE9BQU87UUFDTCxNQUFNLEVBQUUsTUFBTSxJQUFJLENBQUM7UUFDbkIsV0FBVyxFQUFFLFdBQVcsSUFBSSxDQUFDO1FBQzdCLGtCQUFrQjtLQUNuQixDQUFDO0FBQ0osQ0FBQztBQUtELE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLENBQXFCO0lBQzNFLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsUUFBZ0M7SUFDakUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFVLENBQUM7QUFDdEYsQ0FBQztBQUVELE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxLQUFxQjtJQUN2RCxPQUFPLElBQUksR0FBRyxDQUFDO1FBQ2IsQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUUsQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0UsQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRixDQUFDLFlBQVksQ0FBQyxxQkFBcUIsRUFBRSxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztLQUNsRixDQUFDLENBQUM7QUFDTCxDQUFDIn0=
|