@aztec/simulator 0.63.1 → 0.65.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/dest/avm/avm_contract_call_result.d.ts +18 -1
- package/dest/avm/avm_contract_call_result.d.ts.map +1 -1
- package/dest/avm/avm_contract_call_result.js +30 -3
- package/dest/avm/avm_memory_types.d.ts.map +1 -1
- package/dest/avm/avm_memory_types.js +7 -11
- package/dest/avm/avm_simulator.d.ts +6 -1
- package/dest/avm/avm_simulator.d.ts.map +1 -1
- package/dest/avm/avm_simulator.js +29 -8
- package/dest/avm/avm_tree.d.ts +4 -18
- package/dest/avm/avm_tree.d.ts.map +1 -1
- package/dest/avm/avm_tree.js +72 -53
- package/dest/avm/errors.d.ts +7 -0
- package/dest/avm/errors.d.ts.map +1 -1
- package/dest/avm/errors.js +11 -1
- package/dest/avm/fixtures/index.d.ts +2 -2
- package/dest/avm/fixtures/index.d.ts.map +1 -1
- package/dest/avm/fixtures/index.js +1 -1
- package/dest/avm/index.d.ts +1 -0
- package/dest/avm/index.d.ts.map +1 -1
- package/dest/avm/index.js +2 -1
- package/dest/avm/journal/journal.d.ts +14 -13
- package/dest/avm/journal/journal.d.ts.map +1 -1
- package/dest/avm/journal/journal.js +81 -68
- package/dest/avm/journal/public_storage.d.ts +0 -1
- package/dest/avm/journal/public_storage.d.ts.map +1 -1
- package/dest/avm/journal/public_storage.js +6 -6
- package/dest/avm/opcodes/accrued_substate.js +2 -2
- package/dest/avm/opcodes/addressing_mode.d.ts.map +1 -1
- package/dest/avm/opcodes/addressing_mode.js +8 -2
- package/dest/avm/opcodes/contract.d.ts +2 -2
- package/dest/avm/opcodes/contract.d.ts.map +1 -1
- package/dest/avm/opcodes/contract.js +4 -4
- package/dest/avm/opcodes/control_flow.d.ts +2 -2
- package/dest/avm/opcodes/control_flow.d.ts.map +1 -1
- package/dest/avm/opcodes/control_flow.js +4 -4
- package/dest/avm/opcodes/environment_getters.d.ts +2 -2
- package/dest/avm/opcodes/environment_getters.d.ts.map +1 -1
- package/dest/avm/opcodes/environment_getters.js +4 -4
- package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
- package/dest/avm/opcodes/external_calls.js +2 -4
- package/dest/avm/opcodes/memory.d.ts +4 -4
- package/dest/avm/opcodes/memory.d.ts.map +1 -1
- package/dest/avm/opcodes/memory.js +12 -12
- package/dest/avm/opcodes/misc.d.ts +2 -2
- package/dest/avm/opcodes/misc.d.ts.map +1 -1
- package/dest/avm/opcodes/misc.js +4 -4
- package/dest/index.d.ts +0 -1
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +1 -2
- package/dest/public/dual_side_effect_trace.d.ts +3 -9
- package/dest/public/dual_side_effect_trace.d.ts.map +1 -1
- package/dest/public/dual_side_effect_trace.js +5 -11
- package/dest/public/enqueued_call_side_effect_trace.d.ts +4 -10
- package/dest/public/enqueued_call_side_effect_trace.d.ts.map +1 -1
- package/dest/public/enqueued_call_side_effect_trace.js +6 -15
- package/dest/public/executor_metrics.d.ts +1 -2
- package/dest/public/executor_metrics.d.ts.map +1 -1
- package/dest/public/executor_metrics.js +2 -8
- package/dest/public/fixtures/index.d.ts +14 -0
- package/dest/public/fixtures/index.d.ts.map +1 -0
- package/dest/public/fixtures/index.js +101 -0
- package/dest/public/index.d.ts +1 -2
- package/dest/public/index.d.ts.map +1 -1
- package/dest/public/index.js +1 -2
- package/dest/public/public_processor.d.ts +0 -2
- package/dest/public/public_processor.d.ts.map +1 -1
- package/dest/public/public_processor.js +5 -12
- package/dest/public/public_tx_context.d.ts +6 -4
- package/dest/public/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_context.js +11 -7
- package/dest/public/public_tx_simulator.d.ts +56 -5
- package/dest/public/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator.js +106 -26
- package/dest/public/side_effect_trace.d.ts +4 -10
- package/dest/public/side_effect_trace.d.ts.map +1 -1
- package/dest/public/side_effect_trace.js +6 -15
- package/dest/public/side_effect_trace_interface.d.ts +3 -9
- package/dest/public/side_effect_trace_interface.d.ts.map +1 -1
- package/dest/public/transitional_adapters.d.ts +1 -2
- package/dest/public/transitional_adapters.d.ts.map +1 -1
- package/dest/public/transitional_adapters.js +8 -10
- package/package.json +10 -10
- package/src/avm/avm_contract_call_result.ts +39 -2
- package/src/avm/avm_memory_types.ts +6 -10
- package/src/avm/avm_simulator.ts +58 -8
- package/src/avm/avm_tree.ts +89 -64
- package/src/avm/errors.ts +11 -0
- package/src/avm/fixtures/index.ts +4 -3
- package/src/avm/index.ts +1 -0
- package/src/avm/journal/journal.ts +118 -126
- package/src/avm/journal/public_storage.ts +5 -6
- package/src/avm/opcodes/accrued_substate.ts +1 -1
- package/src/avm/opcodes/addressing_mode.ts +7 -2
- package/src/avm/opcodes/contract.ts +2 -2
- package/src/avm/opcodes/control_flow.ts +2 -2
- package/src/avm/opcodes/environment_getters.ts +2 -2
- package/src/avm/opcodes/external_calls.ts +1 -3
- package/src/avm/opcodes/memory.ts +9 -9
- package/src/avm/opcodes/misc.ts +2 -2
- package/src/index.ts +0 -1
- package/src/public/dual_side_effect_trace.ts +4 -13
- package/src/public/enqueued_call_side_effect_trace.ts +14 -17
- package/src/public/executor_metrics.ts +1 -9
- package/src/public/fixtures/index.ts +159 -0
- package/src/public/index.ts +1 -5
- package/src/public/public_processor.ts +5 -27
- package/src/public/public_tx_context.ts +13 -8
- package/src/public/public_tx_simulator.ts +182 -50
- package/src/public/side_effect_trace.ts +9 -19
- package/src/public/side_effect_trace_interface.ts +3 -9
- package/src/public/transitional_adapters.ts +12 -12
- package/dest/mocks/fixtures.d.ts +0 -28
- package/dest/mocks/fixtures.d.ts.map +0 -1
- package/dest/mocks/fixtures.js +0 -48
- package/dest/mocks/index.d.ts +0 -2
- package/dest/mocks/index.d.ts.map +0 -1
- package/dest/mocks/index.js +0 -2
- package/dest/public/executor.d.ts +0 -47
- package/dest/public/executor.d.ts.map +0 -1
- package/dest/public/executor.js +0 -90
- package/src/mocks/fixtures.ts +0 -72
- package/src/mocks/index.ts +0 -1
- package/src/public/executor.ts +0 -154
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { UnencryptedL2Log } from '@aztec/circuit-types';
|
|
4
4
|
import { type AztecAddress, type ContractClassIdPreimage, type ContractInstanceWithAddress, Gas, NullifierLeafPreimage, type PublicCallRequest, PublicDataTreeLeafPreimage, SerializableContractInstance } from '@aztec/circuits.js';
|
|
5
5
|
import { Fr } from '@aztec/foundation/fields';
|
|
6
|
-
import { type AvmContractCallResult } from '../avm/avm_contract_call_result.js';
|
|
6
|
+
import { type AvmContractCallResult, type AvmFinalizedCallResult } from '../avm/avm_contract_call_result.js';
|
|
7
7
|
import { type AvmExecutionEnvironment } from '../avm/avm_execution_environment.js';
|
|
8
8
|
import { type EnqueuedPublicCallExecutionResultWithSideEffects, type PublicFunctionCallResult } from './execution.js';
|
|
9
9
|
import { type PublicSideEffectTraceInterface } from './side_effect_trace_interface.js';
|
|
@@ -40,7 +40,7 @@ export declare class PublicSideEffectTrace implements PublicSideEffectTraceInter
|
|
|
40
40
|
tracePublicStorageRead(contractAddress: AztecAddress, slot: Fr, value: Fr, leafPreimage?: PublicDataTreeLeafPreimage, leafIndex?: Fr, path?: Fr[]): void;
|
|
41
41
|
tracePublicStorageWrite(contractAddress: AztecAddress, slot: Fr, value: Fr, lowLeafPreimage?: PublicDataTreeLeafPreimage, lowLeafIndex?: Fr, lowLeafPath?: Fr[], newLeafPreimage?: PublicDataTreeLeafPreimage, insertionPath?: Fr[]): void;
|
|
42
42
|
traceNoteHashCheck(_contractAddress: AztecAddress, noteHash: Fr, leafIndex: Fr, exists: boolean, path?: Fr[]): void;
|
|
43
|
-
traceNewNoteHash(_contractAddress: AztecAddress, noteHash: Fr, leafIndex
|
|
43
|
+
traceNewNoteHash(_contractAddress: AztecAddress, noteHash: Fr, leafIndex?: Fr, path?: Fr[]): void;
|
|
44
44
|
traceNullifierCheck(_contractAddress: AztecAddress, nullifier: Fr, exists: boolean, lowLeafPreimage?: NullifierLeafPreimage, lowLeafIndex?: Fr, lowLeafPath?: Fr[]): void;
|
|
45
45
|
traceNewNullifier(_contractAddress: AztecAddress, nullifier: Fr, lowLeafPreimage?: NullifierLeafPreimage, lowLeafIndex?: Fr, lowLeafPath?: Fr[], insertionPath?: Fr[]): void;
|
|
46
46
|
traceL1ToL2MessageCheck(_contractAddress: AztecAddress, msgHash: Fr, msgLeafIndex: Fr, exists: boolean, path?: Fr[]): void;
|
|
@@ -59,8 +59,6 @@ export declare class PublicSideEffectTrace implements PublicSideEffectTraceInter
|
|
|
59
59
|
nestedEnvironment: AvmExecutionEnvironment,
|
|
60
60
|
/** How much gas was available for this public execution. */
|
|
61
61
|
startGasLeft: Gas,
|
|
62
|
-
/** How much gas was left after this public execution. */
|
|
63
|
-
endGasLeft: Gas,
|
|
64
62
|
/** Bytecode used for this execution. */
|
|
65
63
|
bytecode: Buffer,
|
|
66
64
|
/** The call's results */
|
|
@@ -83,19 +81,15 @@ export declare class PublicSideEffectTrace implements PublicSideEffectTraceInter
|
|
|
83
81
|
avmEnvironment: AvmExecutionEnvironment,
|
|
84
82
|
/** How much gas was available for this public execution. */
|
|
85
83
|
startGasLeft: Gas,
|
|
86
|
-
/** How much gas was left after this public execution. */
|
|
87
|
-
endGasLeft: Gas,
|
|
88
84
|
/** Bytecode used for this execution. */
|
|
89
85
|
bytecode: Buffer,
|
|
90
86
|
/** The call's results */
|
|
91
|
-
avmCallResults:
|
|
87
|
+
avmCallResults: AvmFinalizedCallResult,
|
|
92
88
|
/** Function name for logging */
|
|
93
89
|
functionName?: string): PublicFunctionCallResult;
|
|
94
90
|
toPublicEnqueuedCallExecutionResult(
|
|
95
|
-
/** How much gas was left after this public execution. */
|
|
96
|
-
_endGasLeft: Gas,
|
|
97
91
|
/** The call's results */
|
|
98
|
-
_avmCallResults:
|
|
92
|
+
_avmCallResults: AvmFinalizedCallResult): EnqueuedPublicCallExecutionResultWithSideEffects;
|
|
99
93
|
private enforceLimitOnNullifierChecks;
|
|
100
94
|
getUnencryptedLogs(): UnencryptedL2Log[];
|
|
101
95
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"side_effect_trace.d.ts","sourceRoot":"","sources":["../../src/public/side_effect_trace.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAqD,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC3G,OAAO,EAWL,KAAK,YAAY,EAEjB,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAIhC,GAAG,EAkBH,qBAAqB,EAErB,KAAK,iBAAiB,EACtB,0BAA0B,EAG1B,4BAA4B,EAE7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAK9C,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"side_effect_trace.d.ts","sourceRoot":"","sources":["../../src/public/side_effect_trace.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import { AvmAppendTreeHint, AvmContractBytecodeHints, AvmContractInstanceHint, A
|
|
|
3
3
|
import { Fr } from '@aztec/foundation/fields';
|
|
4
4
|
import { createDebugLogger } from '@aztec/foundation/log';
|
|
5
5
|
import { assert } from 'console';
|
|
6
|
-
import { createSimulationError } from '../common/errors.js';
|
|
7
6
|
import { resultToPublicCallRequest, } from './execution.js';
|
|
8
7
|
import { SideEffectLimitReachedError } from './side_effect_errors.js';
|
|
9
8
|
const emptyPublicDataPath = () => new Array(PUBLIC_DATA_TREE_HEIGHT).fill(Fr.zero());
|
|
@@ -85,7 +84,7 @@ export class PublicSideEffectTrace {
|
|
|
85
84
|
this.avmCircuitHints.noteHashReadRequest.items.push(new AvmAppendTreeHint(leafIndex, noteHash, path));
|
|
86
85
|
// NOTE: counter does not increment for note hash checks (because it doesn't rely on pending note hashes)
|
|
87
86
|
}
|
|
88
|
-
traceNewNoteHash(_contractAddress, noteHash, leafIndex, path = emptyNoteHashPath()) {
|
|
87
|
+
traceNewNoteHash(_contractAddress, noteHash, leafIndex = Fr.zero(), path = emptyNoteHashPath()) {
|
|
89
88
|
if (this.noteHashes.length >= MAX_NOTE_HASHES_PER_TX) {
|
|
90
89
|
throw new SideEffectLimitReachedError('note hash', MAX_NOTE_HASHES_PER_TX);
|
|
91
90
|
}
|
|
@@ -190,8 +189,6 @@ export class PublicSideEffectTrace {
|
|
|
190
189
|
nestedEnvironment,
|
|
191
190
|
/** How much gas was available for this public execution. */
|
|
192
191
|
startGasLeft,
|
|
193
|
-
/** How much gas was left after this public execution. */
|
|
194
|
-
endGasLeft,
|
|
195
192
|
/** Bytecode used for this execution. */
|
|
196
193
|
bytecode,
|
|
197
194
|
/** The call's results */
|
|
@@ -203,14 +200,14 @@ export class PublicSideEffectTrace {
|
|
|
203
200
|
// one for max unique contract calls, and another based on max nullifier reads.
|
|
204
201
|
// Since this trace function happens _after_ a nested call, such threshold limits must take
|
|
205
202
|
// place in another trace function that occurs _before_ a nested call.
|
|
206
|
-
const result = nestedCallTrace.toPublicFunctionCallResult(nestedEnvironment, startGasLeft,
|
|
203
|
+
const result = nestedCallTrace.toPublicFunctionCallResult(nestedEnvironment, startGasLeft, bytecode, avmCallResults.finalize(), functionName);
|
|
207
204
|
this.sideEffectCounter = result.endSideEffectCounter.toNumber();
|
|
208
205
|
// when a nested call returns, caller accepts its updated counter
|
|
209
206
|
this.allUnencryptedLogs.push(...result.allUnencryptedLogs.logs);
|
|
210
207
|
// NOTE: eventually if the AVM circuit processes an entire enqueued call,
|
|
211
208
|
// this function will accept all of the nested's side effects into this instance
|
|
212
209
|
this.nestedExecutions.push(result);
|
|
213
|
-
const gasUsed = new Gas(result.startGasLeft.daGas -
|
|
210
|
+
const gasUsed = new Gas(result.startGasLeft.daGas - avmCallResults.gasLeft.daGas, result.startGasLeft.l2Gas - avmCallResults.gasLeft.l2Gas);
|
|
214
211
|
this.publicCallRequests.push(resultToPublicCallRequest(result));
|
|
215
212
|
this.avmCircuitHints.externalCalls.items.push(new AvmExternalCallHint(
|
|
216
213
|
/*success=*/ new Fr(result.reverted ? 0 : 1), result.returnValues, gasUsed, result.endSideEffectCounter, nestedEnvironment.address));
|
|
@@ -235,8 +232,6 @@ export class PublicSideEffectTrace {
|
|
|
235
232
|
avmEnvironment,
|
|
236
233
|
/** How much gas was available for this public execution. */
|
|
237
234
|
startGasLeft,
|
|
238
|
-
/** How much gas was left after this public execution. */
|
|
239
|
-
endGasLeft,
|
|
240
235
|
/** Bytecode used for this execution. */
|
|
241
236
|
bytecode,
|
|
242
237
|
/** The call's results */
|
|
@@ -248,15 +243,13 @@ export class PublicSideEffectTrace {
|
|
|
248
243
|
startSideEffectCounter: new Fr(this.startSideEffectCounter),
|
|
249
244
|
endSideEffectCounter: new Fr(this.sideEffectCounter),
|
|
250
245
|
startGasLeft,
|
|
251
|
-
endGasLeft,
|
|
246
|
+
endGasLeft: avmCallResults.gasLeft,
|
|
252
247
|
transactionFee: avmEnvironment.transactionFee,
|
|
253
248
|
bytecode,
|
|
254
249
|
calldata: avmEnvironment.calldata,
|
|
255
250
|
returnValues: avmCallResults.output,
|
|
256
251
|
reverted: avmCallResults.reverted,
|
|
257
|
-
revertReason: avmCallResults.revertReason
|
|
258
|
-
? createSimulationError(avmCallResults.revertReason, avmCallResults.output)
|
|
259
|
-
: undefined,
|
|
252
|
+
revertReason: avmCallResults.revertReason,
|
|
260
253
|
contractStorageReads: this.contractStorageReads,
|
|
261
254
|
contractStorageUpdateRequests: this.contractStorageUpdateRequests,
|
|
262
255
|
noteHashReadRequests: this.noteHashReadRequests,
|
|
@@ -277,8 +270,6 @@ export class PublicSideEffectTrace {
|
|
|
277
270
|
};
|
|
278
271
|
}
|
|
279
272
|
toPublicEnqueuedCallExecutionResult(
|
|
280
|
-
/** How much gas was left after this public execution. */
|
|
281
|
-
_endGasLeft,
|
|
282
273
|
/** The call's results */
|
|
283
274
|
_avmCallResults) {
|
|
284
275
|
throw new Error('Not implemented');
|
|
@@ -313,4 +304,4 @@ function createPublicExecutionRequest(avmEnvironment) {
|
|
|
313
304
|
});
|
|
314
305
|
return new PublicExecutionRequest(callContext, avmEnvironment.calldata);
|
|
315
306
|
}
|
|
316
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZV9lZmZlY3RfdHJhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL3NpZGVfZWZmZWN0X3RyYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSx5QkFBeUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNHLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZix3QkFBd0IsRUFDeEIseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6QiwwQkFBMEIsRUFFMUIsV0FBVyxFQUdYLG1CQUFtQixFQUNuQiw0QkFBNEIsRUFDNUIsVUFBVSxFQUNWLEdBQUcsRUFDSCx3QkFBd0IsRUFDeEIsYUFBYSxFQUNiLE9BQU8sRUFDUCxxQ0FBcUMsRUFDckMsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixrQ0FBa0MsRUFDbEMscUJBQXFCLEVBQ3JCLCtDQUErQyxFQUMvQyxrQ0FBa0MsRUFDbEMsNEJBQTRCLEVBQzVCLHNDQUFzQyxFQUN0QywyQkFBMkIsRUFDM0IscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixRQUFRLEVBQ1IsU0FBUyxFQUNULHFCQUFxQixFQUNyQix1QkFBdUIsRUFFdkIsMEJBQTBCLEVBRTFCLFdBQVcsRUFDWCw0QkFBNEIsRUFDNUIsbUJBQW1CLEdBQ3BCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFJakMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUdMLHlCQUF5QixH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
|
|
307
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZV9lZmZlY3RfdHJhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGljL3NpZGVfZWZmZWN0X3RyYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSx5QkFBeUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNHLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLGVBQWUsRUFDZix3QkFBd0IsRUFDeEIseUJBQXlCLEVBQ3pCLHlCQUF5QixFQUN6QiwwQkFBMEIsRUFFMUIsV0FBVyxFQUdYLG1CQUFtQixFQUNuQiw0QkFBNEIsRUFDNUIsVUFBVSxFQUNWLEdBQUcsRUFDSCx3QkFBd0IsRUFDeEIsYUFBYSxFQUNiLE9BQU8sRUFDUCxxQ0FBcUMsRUFDckMsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixrQ0FBa0MsRUFDbEMscUJBQXFCLEVBQ3JCLCtDQUErQyxFQUMvQyxrQ0FBa0MsRUFDbEMsNEJBQTRCLEVBQzVCLHNDQUFzQyxFQUN0QywyQkFBMkIsRUFDM0IscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixRQUFRLEVBQ1IsU0FBUyxFQUNULHFCQUFxQixFQUNyQix1QkFBdUIsRUFFdkIsMEJBQTBCLEVBRTFCLFdBQVcsRUFDWCw0QkFBNEIsRUFDNUIsbUJBQW1CLEdBQ3BCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFJakMsT0FBTyxFQUdMLHlCQUF5QixHQUMxQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBS3RFLE1BQU0sbUJBQW1CLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7QUFDckYsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUNqRixNQUFNLGtCQUFrQixHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQ2xGLE1BQU0sc0JBQXNCLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7QUFFekYsTUFBTSxPQUFPLHFCQUFxQjtJQTZCaEM7SUFDRSxxREFBcUQ7SUFDckMseUJBQWlDLENBQUM7UUFBbEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUFZO1FBOUI3QyxRQUFHLEdBQUcsaUJBQWlCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUt6RCx5QkFBb0IsR0FBMEIsRUFBRSxDQUFDO1FBQ2pELGtDQUE2QixHQUFtQyxFQUFFLENBQUM7UUFFbkUseUJBQW9CLEdBQTBCLEVBQUUsQ0FBQztRQUNqRCxlQUFVLEdBQWUsRUFBRSxDQUFDO1FBRTVCLDBCQUFxQixHQUFrQixFQUFFLENBQUM7UUFDMUMscUNBQWdDLEdBQWtCLEVBQUUsQ0FBQztRQUNyRCxlQUFVLEdBQWdCLEVBQUUsQ0FBQztRQUU3QiwwQkFBcUIsR0FBMEIsRUFBRSxDQUFDO1FBQ2xELHNCQUFpQixHQUFvQixFQUFFLENBQUM7UUFFeEMsb0JBQWUsR0FBdUIsRUFBRSxDQUFDO1FBQ3pDLHVCQUFrQixHQUF1QixFQUFFLENBQUM7UUFDNUMsMEJBQXFCLEdBQWMsRUFBRSxDQUFDO1FBRXRDLHVCQUFrQixHQUE2QixFQUFFLENBQUM7UUFFbEQscUJBQWdCLEdBQStCLEVBQUUsQ0FBQztRQVF4RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsc0JBQXNCLENBQUM7UUFDaEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRU0sSUFBSTtRQUNULE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVNLHNCQUFzQixDQUMzQixlQUE2QixFQUM3QixJQUFRLEVBQ1IsS0FBUyxFQUNULGVBQTJDLDBCQUEwQixDQUFDLEtBQUssRUFBRSxFQUM3RSxZQUFnQixFQUFFLENBQUMsSUFBSSxFQUFFLEVBQ3pCLE9BQWEsbUJBQW1CLEVBQUU7UUFFbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNqQyw2RkFBNkY7WUFDN0YsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLGtEQUFrRCxDQUFDLENBQUM7UUFDL0YsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO1lBQ3JFLE1BQU0sSUFBSSwyQkFBMkIsQ0FBQyx1QkFBdUIsRUFBRSw0QkFBNEIsQ0FBQyxDQUFDO1FBQy9GLENBQUM7UUFFRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksbUJBQW1CLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUM5RyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUMzQyxJQUFJLGVBQWUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUMvRSxDQUFDO1FBRUYsY0FBYztRQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLHlCQUF5QixDQUFDLFlBQVksRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUVqSCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLElBQUksQ0FBQyxpQkFBaUIsU0FBUyxLQUFLLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sdUJBQXVCLENBQzVCLGVBQTZCLEVBQzdCLElBQVEsRUFDUixLQUFTLEVBQ1Qsa0JBQThDLDBCQUEwQixDQUFDLEtBQUssRUFBRSxFQUNoRixlQUFtQixFQUFFLENBQUMsSUFBSSxFQUFFLEVBQzVCLGNBQW9CLG1CQUFtQixFQUFFLEVBQ3pDLGtCQUE4QywwQkFBMEIsQ0FBQyxLQUFLLEVBQUUsRUFDaEYsZ0JBQXNCLG1CQUFtQixFQUFFO1FBRTNDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDcEMsNkZBQTZGO1lBQzdGLE1BQU0sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxpREFBaUQsQ0FBQyxDQUFDO1FBQ2pHLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxNQUFNLElBQUksc0NBQXNDLEVBQUUsQ0FBQztZQUN4RixNQUFNLElBQUksMkJBQTJCLENBQUMsd0JBQXdCLEVBQUUsc0NBQXNDLENBQUMsQ0FBQztRQUMxRyxDQUFDO1FBRUQsSUFBSSxDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FDckMsSUFBSSw0QkFBNEIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsQ0FDdkYsQ0FBQztRQUVGLGNBQWM7UUFDZCxNQUFNLFFBQVEsR0FBRyxJQUFJLHlCQUF5QixDQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDM0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNsRCxJQUFJLDBCQUEwQixDQUFDLFFBQVEsRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQ3pFLENBQUM7UUFDRixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksQ0FBQyxpQkFBaUIsU0FBUyxLQUFLLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsOEZBQThGO0lBQ3ZGLGtCQUFrQixDQUN2QixnQkFBOEIsRUFDOUIsUUFBWSxFQUNaLFNBQWEsRUFDYixNQUFlLEVBQ2YsT0FBYSxpQkFBaUIsRUFBRTtRQUVoQyw4R0FBOEc7UUFDOUcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxJQUFJLGtDQUFrQyxFQUFFLENBQUM7WUFDM0UsTUFBTSxJQUFJLDJCQUEyQixDQUFDLHdCQUF3QixFQUFFLGtDQUFrQyxDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUNELGtDQUFrQztRQUNsQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksbUJBQW1CLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDN0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDNUMsSUFBSSxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDdEYsQ0FBQztRQUNGLGNBQWM7UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdEcseUdBQXlHO0lBQzNHLENBQUM7SUFFTSxnQkFBZ0IsQ0FDckIsZ0JBQThCLEVBQzlCLFFBQVksRUFDWixZQUFnQixFQUFFLENBQUMsSUFBSSxFQUFFLEVBQ3pCLE9BQWEsaUJBQWlCLEVBQUU7UUFFaEMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sSUFBSSxzQkFBc0IsRUFBRSxDQUFDO1lBQ3JELE1BQU0sSUFBSSwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztRQUM3RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsc0JBQXNCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFFL0QsY0FBYztRQUNkLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN2RyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sbUJBQW1CLENBQ3hCLGdCQUE4QixFQUM5QixTQUFhLEVBQ2IsTUFBZSxFQUNmLGtCQUF5QyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsRUFDdEUsZUFBbUIsRUFBRSxDQUFDLElBQUksRUFBRSxFQUM1QixjQUFvQixrQkFBa0IsRUFBRTtRQUV4Qyw4R0FBOEc7UUFDOUcsMkdBQTJHO1FBRTNHLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBRXJDLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUN2RSxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMvQyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUNELElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQzdDLElBQUksZUFBZSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2hHLENBQUM7UUFFRixZQUFZO1FBQ1osSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNsRCxJQUFJLHdCQUF3QixDQUFDLGVBQWUsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQ3pFLENBQUM7UUFDRixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0saUJBQWlCLENBQ3RCLGdCQUE4QixFQUM5QixTQUFhLEVBQ2Isa0JBQXlDLHFCQUFxQixDQUFDLEtBQUssRUFBRSxFQUN0RSxlQUFtQixFQUFFLENBQUMsSUFBSSxFQUFFLEVBQzVCLGNBQW9CLGtCQUFrQixFQUFFLEVBQ3hDLGdCQUFzQixrQkFBa0IsRUFBRTtRQUUxQyw4R0FBOEc7UUFDOUcsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1lBQ3BELE1BQU0sSUFBSSwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUscUJBQXFCLENBQUMsQ0FBQztRQUM1RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxhQUFhLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDOUYsY0FBYztRQUNkLE1BQU0sZUFBZSxHQUFHLElBQUksd0JBQXdCLENBQUMsZUFBZSxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNqRyxJQUFJLENBQUMsZUFBZSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSx5QkFBeUIsQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztRQUNuSCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsOEZBQThGO0lBQ3ZGLHVCQUF1QixDQUM1QixnQkFBOEIsRUFDOUIsT0FBVyxFQUNYLFlBQWdCLEVBQ2hCLE1BQWUsRUFDZixPQUFhLHNCQUFzQixFQUFFO1FBRXJDLDhHQUE4RztRQUM5RyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLElBQUkscUNBQXFDLEVBQUUsQ0FBQztZQUMvRSxNQUFNLElBQUksMkJBQTJCLENBQUMsK0JBQStCLEVBQUUscUNBQXFDLENBQUMsQ0FBQztRQUNoSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDakQsSUFBSSxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDekYsQ0FBQztRQUVGLGNBQWM7UUFDZCxJQUFJLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0csMkdBQTJHO0lBQzdHLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxnQkFBOEIsRUFBRSxTQUFhLEVBQUUsT0FBVztRQUNyRixJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLElBQUksd0JBQXdCLEVBQUUsQ0FBQztZQUM5RCxNQUFNLElBQUksMkJBQTJCLENBQUMsa0JBQWtCLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztRQUN0RixDQUFDO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUM7UUFDbEcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMseUJBQXlCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLG1CQUFtQixDQUFDLGVBQTZCLEVBQUUsR0FBUztRQUNqRSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxJQUFJLDJCQUEyQixFQUFFLENBQUM7WUFDL0QsTUFBTSxJQUFJLDJCQUEyQixDQUFDLGlCQUFpQixFQUFFLDJCQUEyQixDQUFDLENBQUM7UUFDeEYsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksZ0JBQWdCLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RixNQUFNLFlBQVksR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsdUdBQXVHO1FBQ3ZHLHVEQUF1RDtRQUN2RCxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsNEJBQTRCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLHdCQUF3QixDQUM3QixlQUE2QixFQUM3QixNQUFlLEVBQ2YsV0FBeUMsNEJBQTRCLENBQUMsT0FBTyxFQUFFO1FBRS9FLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyx1REFBdUQsQ0FBQyxDQUFDO1FBRTVGLElBQUksQ0FBQyxlQUFlLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDL0MsSUFBSSx1QkFBdUIsQ0FDekIsZUFBZSxFQUNmLE1BQU0sRUFDTixRQUFRLENBQUMsSUFBSSxFQUNiLFFBQVEsQ0FBQyxRQUFRLEVBQ2pCLFFBQVEsQ0FBQyxlQUFlLEVBQ3hCLFFBQVEsQ0FBQyxrQkFBa0IsRUFDM0IsUUFBUSxDQUFDLFVBQVUsQ0FDcEIsQ0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsMEJBQTBCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELDZFQUE2RTtJQUM3RSw0RkFBNEY7SUFDNUYsc0RBQXNEO0lBQ3RELGdEQUFnRDtJQUN6QyxnQkFBZ0IsQ0FDckIsZUFBNkIsRUFDN0IsTUFBZSxFQUNmLFdBQW1CLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ2xDLG1CQUFpRCw0QkFBNEIsQ0FBQyxPQUFPLEVBQUUsRUFDdkYsZ0JBQXlDO1FBQ3ZDLFlBQVksRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFO1FBQ3ZCLG9CQUFvQixFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUU7UUFDL0Isd0JBQXdCLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRTtLQUNwQztRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksdUJBQXVCLENBQzFDLGVBQWUsRUFDZixNQUFNLEVBQ04sZ0JBQWdCLENBQUMsSUFBSSxFQUNyQixnQkFBZ0IsQ0FBQyxRQUFRLEVBQ3pCLGdCQUFnQixDQUFDLGVBQWUsRUFDaEMsZ0JBQWdCLENBQUMsa0JBQWtCLEVBQ25DLGdCQUFnQixDQUFDLFVBQVUsQ0FDNUIsQ0FBQztRQUNGLG1FQUFtRTtRQUNuRSxJQUFJLENBQUMsZUFBZSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ25ELElBQUksd0JBQXdCLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FDaEUsQ0FBQztRQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUNaLDREQUE0RCxNQUFNLGNBQWMsSUFBSSxDQUFDLFNBQVMsQ0FDNUYsZ0JBQWdCLENBQ2pCLEVBQUUsQ0FDSixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNJLGVBQWU7SUFDcEIsb0NBQW9DO0lBQ3BDLGVBQXNDO0lBQ3RDLG9EQUFvRDtJQUNwRCxpQkFBMEM7SUFDMUMsNERBQTREO0lBQzVELFlBQWlCO0lBQ2pCLHdDQUF3QztJQUN4QyxRQUFnQjtJQUNoQix5QkFBeUI7SUFDekIsY0FBcUM7SUFDckMsZ0NBQWdDO0lBQ2hDLGVBQXVCLFNBQVM7UUFFaEMsNkZBQTZGO1FBQzdGLHdGQUF3RjtRQUN4RiwrRUFBK0U7UUFDL0UsMkZBQTJGO1FBQzNGLHNFQUFzRTtRQUN0RSxNQUFNLE1BQU0sR0FBRyxlQUFlLENBQUMsMEJBQTBCLENBQ3ZELGlCQUFpQixFQUNqQixZQUFZLEVBQ1osUUFBUSxFQUNSLGNBQWMsQ0FBQyxRQUFRLEVBQUUsRUFDekIsWUFBWSxDQUNiLENBQUM7UUFDRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hFLGlFQUFpRTtRQUNqRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hFLHlFQUF5RTtRQUN6RSxnRkFBZ0Y7UUFDaEYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVuQyxNQUFNLE9BQU8sR0FBRyxJQUFJLEdBQUcsQ0FDckIsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLEdBQUcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQ3hELE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUN6RCxDQUFDO1FBRUYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRWhFLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQzNDLElBQUksbUJBQW1CO1FBQ3JCLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM1QyxNQUFNLENBQUMsWUFBWSxFQUNuQixPQUFPLEVBQ1AsTUFBTSxDQUFDLG9CQUFvQixFQUMzQixpQkFBaUIsQ0FBQyxPQUFPLENBQzFCLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTSxpQkFBaUI7SUFDdEIsNkRBQTZEO0lBQzdELGtCQUFxQztJQUNyQywwQkFBMEI7SUFDMUIsU0FBZTtJQUNmLDJCQUEyQjtJQUMzQixTQUFrQjtRQUVsQixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLEtBQUssQ0FBQyxZQUFrQixFQUFFLFlBQXFCLEtBQUs7UUFDekQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLDBCQUEwQjtJQUMvQixvREFBb0Q7SUFDcEQsY0FBdUM7SUFDdkMsNERBQTREO0lBQzVELFlBQWlCO0lBQ2pCLHdDQUF3QztJQUN4QyxRQUFnQjtJQUNoQix5QkFBeUI7SUFDekIsY0FBc0M7SUFDdEMsZ0NBQWdDO0lBQ2hDLGVBQXVCLFNBQVM7UUFFaEMsT0FBTztZQUNMLGdCQUFnQixFQUFFLDRCQUE0QixDQUFDLGNBQWMsQ0FBQztZQUU5RCxzQkFBc0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUM7WUFDM0Qsb0JBQW9CLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQ3BELFlBQVk7WUFDWixVQUFVLEVBQUUsY0FBYyxDQUFDLE9BQU87WUFDbEMsY0FBYyxFQUFFLGNBQWMsQ0FBQyxjQUFjO1lBRTdDLFFBQVE7WUFDUixRQUFRLEVBQUUsY0FBYyxDQUFDLFFBQVE7WUFDakMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxNQUFNO1lBQ25DLFFBQVEsRUFBRSxjQUFjLENBQUMsUUFBUTtZQUNqQyxZQUFZLEVBQUUsY0FBYyxDQUFDLFlBQVk7WUFFekMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtZQUMvQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsNkJBQTZCO1lBQ2pFLG9CQUFvQixFQUFFLElBQUksQ0FBQyxvQkFBb0I7WUFDL0MsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLHFCQUFxQixFQUFFLElBQUksQ0FBQyxxQkFBcUI7WUFDakQsZ0NBQWdDLEVBQUUsSUFBSSxDQUFDLGdDQUFnQztZQUN2RSxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IscUJBQXFCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjtZQUNqRCxjQUFjLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN0QywyRUFBMkU7WUFDM0UsZUFBZSxFQUFFLElBQUkseUJBQXlCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUNwRSxrQkFBa0IsRUFBRSxJQUFJLHlCQUF5QixDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztZQUMxRSxxQkFBcUIsRUFBRSxJQUFJLENBQUMscUJBQXFCO1lBRWpELGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7WUFDM0MsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtZQUV2QyxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFFckMsWUFBWTtTQUNiLENBQUM7SUFDSixDQUFDO0lBRU0sbUNBQW1DO0lBQ3hDLHlCQUF5QjtJQUN6QixlQUF1QztRQUV2QyxNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVPLDZCQUE2QixDQUFDLGlCQUF5QixFQUFFO1FBQy9ELHVHQUF1RztRQUN2Ryx1R0FBdUc7UUFDdkcsd0dBQXdHO1FBQ3hHLHlHQUF5RztRQUN6RyxvR0FBb0c7UUFDcEcsdUdBQXVHO1FBQ3ZHLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sSUFBSSxrQ0FBa0MsRUFBRSxDQUFDO1lBQzVFLE1BQU0sSUFBSSwyQkFBMkIsQ0FDbkMsMEJBQTBCLGNBQWMsRUFBRSxFQUMxQyxrQ0FBa0MsQ0FDbkMsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxNQUFNLElBQUksK0NBQStDLEVBQUUsQ0FBQztZQUNwRyxNQUFNLElBQUksMkJBQTJCLENBQ25DLHVDQUF1QyxjQUFjLEVBQUUsRUFDdkQsK0NBQStDLENBQ2hELENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDckMsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLDRCQUE0QixDQUFDLGNBQXVDO0lBQzNFLE1BQU0sV0FBVyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDbkMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxNQUFNO1FBQ2hDLGVBQWUsRUFBRSxjQUFjLENBQUMsT0FBTztRQUN2QyxnQkFBZ0IsRUFBRSxjQUFjLENBQUMsZ0JBQWdCO1FBQ2pELFlBQVksRUFBRSxjQUFjLENBQUMsWUFBWTtLQUMxQyxDQUFDLENBQUM7SUFDSCxPQUFPLElBQUksc0JBQXNCLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUMxRSxDQUFDIn0=
|
|
@@ -4,7 +4,7 @@ import { type UnencryptedL2Log } from '@aztec/circuit-types';
|
|
|
4
4
|
import { type ContractClassIdPreimage, type Gas, type NullifierLeafPreimage, type PublicCallRequest, type PublicDataTreeLeafPreimage, type SerializableContractInstance } from '@aztec/circuits.js';
|
|
5
5
|
import { type AztecAddress } from '@aztec/foundation/aztec-address';
|
|
6
6
|
import { type Fr } from '@aztec/foundation/fields';
|
|
7
|
-
import { type AvmContractCallResult } from '../avm/avm_contract_call_result.js';
|
|
7
|
+
import { type AvmContractCallResult, type AvmFinalizedCallResult } from '../avm/avm_contract_call_result.js';
|
|
8
8
|
import { type AvmExecutionEnvironment } from '../avm/avm_execution_environment.js';
|
|
9
9
|
import { type EnqueuedPublicCallExecutionResultWithSideEffects, type PublicFunctionCallResult } from './execution.js';
|
|
10
10
|
export interface PublicSideEffectTraceInterface {
|
|
@@ -30,8 +30,6 @@ export interface PublicSideEffectTraceInterface {
|
|
|
30
30
|
nestedEnvironment: AvmExecutionEnvironment,
|
|
31
31
|
/** How much gas was available for this public execution. */
|
|
32
32
|
startGasLeft: Gas,
|
|
33
|
-
/** How much gas was left after this public execution. */
|
|
34
|
-
endGasLeft: Gas,
|
|
35
33
|
/** Bytecode used for this execution. */
|
|
36
34
|
bytecode: Buffer,
|
|
37
35
|
/** The call's results */
|
|
@@ -46,21 +44,17 @@ export interface PublicSideEffectTraceInterface {
|
|
|
46
44
|
/** Did the call revert? */
|
|
47
45
|
reverted: boolean): void;
|
|
48
46
|
toPublicEnqueuedCallExecutionResult(
|
|
49
|
-
/** How much gas was left after this public execution. */
|
|
50
|
-
endGasLeft: Gas,
|
|
51
47
|
/** The call's results */
|
|
52
|
-
avmCallResults:
|
|
48
|
+
avmCallResults: AvmFinalizedCallResult): EnqueuedPublicCallExecutionResultWithSideEffects;
|
|
53
49
|
toPublicFunctionCallResult(
|
|
54
50
|
/** The execution environment of the nested call. */
|
|
55
51
|
avmEnvironment: AvmExecutionEnvironment,
|
|
56
52
|
/** How much gas was available for this public execution. */
|
|
57
53
|
startGasLeft: Gas,
|
|
58
|
-
/** How much gas was left after this public execution. */
|
|
59
|
-
endGasLeft: Gas,
|
|
60
54
|
/** Bytecode used for this execution. */
|
|
61
55
|
bytecode: Buffer,
|
|
62
56
|
/** The call's results */
|
|
63
|
-
avmCallResults:
|
|
57
|
+
avmCallResults: AvmFinalizedCallResult,
|
|
64
58
|
/** Function name for logging */
|
|
65
59
|
functionName: string): PublicFunctionCallResult;
|
|
66
60
|
getUnencryptedLogs(): UnencryptedL2Log[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"side_effect_trace_interface.d.ts","sourceRoot":"","sources":["../../src/public/side_effect_trace_interface.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,GAAG,EACR,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EAClC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"side_effect_trace_interface.d.ts","sourceRoot":"","sources":["../../src/public/side_effect_trace_interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,6 @@ import { AvmCircuitPublicInputs, Fr, Gas, type GasSettings, type GlobalVariables
|
|
|
3
3
|
import { type AvmPersistableStateManager } from '../avm/journal/journal.js';
|
|
4
4
|
import { type PublicEnqueuedCallSideEffectTrace } from './enqueued_call_side_effect_trace.js';
|
|
5
5
|
import { type EnqueuedPublicCallExecutionResult } from './execution.js';
|
|
6
|
-
import { type WorldStateDB } from './public_db_sources.js';
|
|
7
6
|
export declare function generateAvmCircuitPublicInputs(trace: PublicEnqueuedCallSideEffectTrace, globalVariables: GlobalVariables, startStateReference: StateReference, startGasUsed: Gas, gasSettings: GasSettings, setupCallRequests: PublicCallRequest[], appLogicCallRequests: PublicCallRequest[], teardownCallRequests: PublicCallRequest[], nonRevertibleAccumulatedDataFromPrivate: PrivateToPublicAccumulatedData, revertibleAccumulatedDataFromPrivate: PrivateToPublicAccumulatedData, endStateReference: StateReference, endGasUsed: Gas, transactionFee: Fr, revertCode: RevertCode): AvmCircuitPublicInputs;
|
|
8
|
-
export declare function generateAvmProvingRequest(real: boolean,
|
|
7
|
+
export declare function generateAvmProvingRequest(real: boolean, fnName: string, stateManager: AvmPersistableStateManager, historicalHeader: Header, globalVariables: GlobalVariables, executionRequest: PublicExecutionRequest, result: EnqueuedPublicCallExecutionResult, allocatedGas: Gas, transactionFee: Fr): AvmProvingRequest;
|
|
9
8
|
//# sourceMappingURL=transitional_adapters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transitional_adapters.d.ts","sourceRoot":"","sources":["../../src/public/transitional_adapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsB,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAEL,sBAAsB,EAItB,EAAE,EACF,GAAG,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,MAAM,EAsBX,KAAK,8BAA8B,EACnC,iBAAiB,EAKjB,UAAU,EACV,KAAK,cAAc,EAKpB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"transitional_adapters.d.ts","sourceRoot":"","sources":["../../src/public/transitional_adapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsB,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC/G,OAAO,EAEL,sBAAsB,EAItB,EAAE,EACF,GAAG,EACH,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,MAAM,EAsBX,KAAK,8BAA8B,EACnC,iBAAiB,EAKjB,UAAU,EACV,KAAK,cAAc,EAKpB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAE,KAAK,iCAAiC,EAAiC,MAAM,gBAAgB,CAAC;AAEvG,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,iCAAiC,EACxC,eAAe,EAAE,eAAe,EAChC,mBAAmB,EAAE,cAAc,EACnC,YAAY,EAAE,GAAG,EACjB,WAAW,EAAE,WAAW,EACxB,iBAAiB,EAAE,iBAAiB,EAAE,EACtC,oBAAoB,EAAE,iBAAiB,EAAE,EACzC,oBAAoB,EAAE,iBAAiB,EAAE,EACzC,uCAAuC,EAAE,8BAA8B,EACvE,oCAAoC,EAAE,8BAA8B,EACpE,iBAAiB,EAAE,cAAc,EACjC,UAAU,EAAE,GAAG,EACf,cAAc,EAAE,EAAE,EAClB,UAAU,EAAE,UAAU,GACrB,sBAAsB,CA2HxB;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,0BAA0B,EACxC,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,eAAe,EAChC,gBAAgB,EAAE,sBAAsB,EACxC,MAAM,EAAE,iCAAiC,EACzC,YAAY,EAAE,GAAG,EACjB,cAAc,EAAE,EAAE,GACjB,iBAAiB,CA8BnB"}
|
|
@@ -3,9 +3,8 @@ import { AvmCircuitInputs, AvmCircuitPublicInputs, AztecAddress, ContractStorage
|
|
|
3
3
|
import { computeNoteHashNonce, computeUniqueNoteHash, computeVarArgsHash, siloNoteHash } from '@aztec/circuits.js/hash';
|
|
4
4
|
import { padArrayEnd } from '@aztec/foundation/collection';
|
|
5
5
|
import { assertLength } from '@aztec/foundation/serialize';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { createAvmExecutionEnvironment } from './executor.js';
|
|
6
|
+
import { AvmFinalizedCallResult } from '../avm/avm_contract_call_result.js';
|
|
7
|
+
import { AvmExecutionEnvironment } from '../avm/avm_execution_environment.js';
|
|
9
8
|
export function generateAvmCircuitPublicInputs(trace, globalVariables, startStateReference, startGasUsed, gasSettings, setupCallRequests, appLogicCallRequests, teardownCallRequests, nonRevertibleAccumulatedDataFromPrivate, revertibleAccumulatedDataFromPrivate, endStateReference, endGasUsed, transactionFee, revertCode) {
|
|
10
9
|
const startTreeSnapshots = new TreeSnapshots(startStateReference.l1ToL2MessageTree, startStateReference.partial.noteHashTree, startStateReference.partial.nullifierTree, startStateReference.partial.publicDataTree);
|
|
11
10
|
const endTreeSnapshots = new TreeSnapshots(endStateReference.l1ToL2MessageTree, endStateReference.partial.noteHashTree, endStateReference.partial.nullifierTree, endStateReference.partial.publicDataTree);
|
|
@@ -64,16 +63,15 @@ export function generateAvmCircuitPublicInputs(trace, globalVariables, startStat
|
|
|
64
63
|
//console.log(`AvmCircuitPublicInputs:\n${inspect(avmCircuitPublicInputs)}`);
|
|
65
64
|
return avmCircuitPublicInputs;
|
|
66
65
|
}
|
|
67
|
-
export
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
const avmCallResult = new
|
|
66
|
+
export function generateAvmProvingRequest(real, fnName, stateManager, historicalHeader, globalVariables, executionRequest, result, allocatedGas, transactionFee) {
|
|
67
|
+
const avmExecutionEnv = new AvmExecutionEnvironment(executionRequest.callContext.contractAddress, executionRequest.callContext.msgSender, executionRequest.callContext.functionSelector,
|
|
68
|
+
/*contractCallDepth=*/ Fr.zero(), transactionFee, globalVariables, executionRequest.callContext.isStaticCall, executionRequest.args);
|
|
69
|
+
const avmCallResult = new AvmFinalizedCallResult(result.reverted, result.returnValues, result.endGasLeft);
|
|
71
70
|
// Generate an AVM proving request
|
|
72
71
|
let avmProvingRequest;
|
|
73
72
|
if (real) {
|
|
74
73
|
const deprecatedFunctionCallResult = stateManager.trace.toPublicFunctionCallResult(avmExecutionEnv,
|
|
75
|
-
/*startGasLeft=*/ allocatedGas,
|
|
76
|
-
/*endGasLeft=*/ Gas.from(result.endGasLeft), Buffer.alloc(0), avmCallResult, fnName);
|
|
74
|
+
/*startGasLeft=*/ allocatedGas, Buffer.alloc(0), avmCallResult, fnName);
|
|
77
75
|
const publicInputs = getPublicCircuitPublicInputs(historicalHeader, globalVariables, deprecatedFunctionCallResult);
|
|
78
76
|
avmProvingRequest = makeAvmProvingRequest(publicInputs, deprecatedFunctionCallResult);
|
|
79
77
|
}
|
|
@@ -124,4 +122,4 @@ function getPublicCircuitPublicInputs(historicalHeader, globalVariables, result)
|
|
|
124
122
|
revertCode: result.reverted ? RevertCode.APP_LOGIC_REVERTED : RevertCode.OK,
|
|
125
123
|
});
|
|
126
124
|
}
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNpdGlvbmFsX2FkYXB0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy90cmFuc2l0aW9uYWxfYWRhcHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQixrQkFBa0IsRUFBK0IsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLHNCQUFzQixFQUN0QixZQUFZLEVBQ1osbUJBQW1CLEVBQ25CLDRCQUE0QixFQUM1QixFQUFFLEVBQ0YsR0FBRyxFQUlILGFBQWEsRUFDYixPQUFPLEVBQ1AsMkJBQTJCLEVBQzNCLHVDQUF1QyxFQUN2QywwQkFBMEIsRUFDMUIsd0JBQXdCLEVBQ3hCLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsb0NBQW9DLEVBQ3BDLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsaURBQWlELEVBQ2pELG9DQUFvQyxFQUNwQyw4QkFBOEIsRUFDOUIsd0NBQXdDLEVBQ3hDLHNDQUFzQyxFQUN0Qyw2QkFBNkIsRUFDN0IsUUFBUSxFQUNSLFNBQVMsRUFDVCwyQkFBMkIsRUFDM0IsdUNBQXVDLEVBRXZDLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsZUFBZSxFQUNmLHNCQUFzQixFQUN0QixXQUFXLEVBQ1gsVUFBVSxFQUVWLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IscUJBQXFCLEVBQ3JCLG9CQUFvQixHQUNyQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4SCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTNFLE9B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
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNpdGlvbmFsX2FkYXB0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B1YmxpYy90cmFuc2l0aW9uYWxfYWRhcHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUEwQixrQkFBa0IsRUFBK0IsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLHNCQUFzQixFQUN0QixZQUFZLEVBQ1osbUJBQW1CLEVBQ25CLDRCQUE0QixFQUM1QixFQUFFLEVBQ0YsR0FBRyxFQUlILGFBQWEsRUFDYixPQUFPLEVBQ1AsMkJBQTJCLEVBQzNCLHVDQUF1QyxFQUN2QywwQkFBMEIsRUFDMUIsd0JBQXdCLEVBQ3hCLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIsb0NBQW9DLEVBQ3BDLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsaURBQWlELEVBQ2pELG9DQUFvQyxFQUNwQyw4QkFBOEIsRUFDOUIsd0NBQXdDLEVBQ3hDLHNDQUFzQyxFQUN0Qyw2QkFBNkIsRUFDN0IsUUFBUSxFQUNSLFNBQVMsRUFDVCwyQkFBMkIsRUFDM0IsdUNBQXVDLEVBRXZDLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsZUFBZSxFQUNmLHNCQUFzQixFQUN0QixXQUFXLEVBQ1gsVUFBVSxFQUVWLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IscUJBQXFCLEVBQ3JCLG9CQUFvQixHQUNyQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4SCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9B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
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/simulator",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.65.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./dest/index.js",
|
|
7
|
-
"./
|
|
7
|
+
"./public/fixtures": "./dest/public/fixtures/index.js"
|
|
8
8
|
},
|
|
9
9
|
"typedocOptions": {
|
|
10
10
|
"entryPoints": [
|
|
@@ -59,14 +59,14 @@
|
|
|
59
59
|
]
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@aztec/circuit-types": "0.
|
|
63
|
-
"@aztec/circuits.js": "0.
|
|
64
|
-
"@aztec/foundation": "0.
|
|
65
|
-
"@aztec/noir-protocol-circuits-types": "0.
|
|
66
|
-
"@aztec/protocol-contracts": "0.
|
|
67
|
-
"@aztec/telemetry-client": "0.
|
|
68
|
-
"@aztec/types": "0.
|
|
69
|
-
"@aztec/world-state": "0.
|
|
62
|
+
"@aztec/circuit-types": "0.65.0",
|
|
63
|
+
"@aztec/circuits.js": "0.65.0",
|
|
64
|
+
"@aztec/foundation": "0.65.0",
|
|
65
|
+
"@aztec/noir-protocol-circuits-types": "0.65.0",
|
|
66
|
+
"@aztec/protocol-contracts": "0.65.0",
|
|
67
|
+
"@aztec/telemetry-client": "0.65.0",
|
|
68
|
+
"@aztec/types": "0.65.0",
|
|
69
|
+
"@aztec/world-state": "0.65.0",
|
|
70
70
|
"@noir-lang/acvm_js": "portal:../../noir/packages/acvm_js",
|
|
71
71
|
"@noir-lang/noirc_abi": "portal:../../noir/packages/noirc_abi",
|
|
72
72
|
"@noir-lang/types": "portal:../../noir/packages/types",
|
|
@@ -1,15 +1,52 @@
|
|
|
1
|
+
import { type SimulationError } from '@aztec/circuit-types';
|
|
2
|
+
import { Gas } from '@aztec/circuits.js';
|
|
1
3
|
import { type Fr } from '@aztec/foundation/fields';
|
|
2
4
|
|
|
5
|
+
import { inspect } from 'util';
|
|
6
|
+
|
|
7
|
+
import { createSimulationError } from '../common/errors.js';
|
|
8
|
+
import { type Gas as AvmGas } from './avm_gas.js';
|
|
3
9
|
import { type AvmRevertReason } from './errors.js';
|
|
4
10
|
|
|
5
11
|
/**
|
|
6
12
|
* Results of an contract call's execution in the AVM.
|
|
7
13
|
*/
|
|
8
14
|
export class AvmContractCallResult {
|
|
9
|
-
constructor(
|
|
15
|
+
constructor(
|
|
16
|
+
public reverted: boolean,
|
|
17
|
+
public output: Fr[],
|
|
18
|
+
public gasLeft: AvmGas,
|
|
19
|
+
public revertReason?: AvmRevertReason,
|
|
20
|
+
) {}
|
|
21
|
+
|
|
22
|
+
toString(): string {
|
|
23
|
+
let resultsStr = `reverted: ${this.reverted}, output: ${this.output}, gasLeft: ${inspect(this.gasLeft)}`;
|
|
24
|
+
if (this.revertReason) {
|
|
25
|
+
resultsStr += `, revertReason: ${this.revertReason}`;
|
|
26
|
+
}
|
|
27
|
+
return resultsStr;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
finalize(): AvmFinalizedCallResult {
|
|
31
|
+
const revertReason = this.revertReason ? createSimulationError(this.revertReason, this.output) : undefined;
|
|
32
|
+
return new AvmFinalizedCallResult(this.reverted, this.output, Gas.from(this.gasLeft), revertReason);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Similar to AvmContractCallResult, but with a SimulationError and standard Gas
|
|
38
|
+
* which are useful for consumption external to core AVM simulation.
|
|
39
|
+
*/
|
|
40
|
+
export class AvmFinalizedCallResult {
|
|
41
|
+
constructor(
|
|
42
|
+
public reverted: boolean,
|
|
43
|
+
public output: Fr[],
|
|
44
|
+
public gasLeft: Gas,
|
|
45
|
+
public revertReason?: SimulationError,
|
|
46
|
+
) {}
|
|
10
47
|
|
|
11
48
|
toString(): string {
|
|
12
|
-
let resultsStr = `reverted: ${this.reverted}, output: ${this.output}`;
|
|
49
|
+
let resultsStr = `reverted: ${this.reverted}, output: ${this.output}, gasLeft: ${inspect(this.gasLeft)}`;
|
|
13
50
|
if (this.revertReason) {
|
|
14
51
|
resultsStr += `, revertReason: ${this.revertReason}`;
|
|
15
52
|
}
|
|
@@ -232,8 +232,8 @@ export class TaggedMemory implements TaggedMemoryInterface {
|
|
|
232
232
|
// Whether to track and validate memory accesses for each instruction.
|
|
233
233
|
static readonly TRACK_MEMORY_ACCESSES = process.env.NODE_ENV === 'test';
|
|
234
234
|
|
|
235
|
-
// FIXME: memory should be 2^32, but TS
|
|
236
|
-
static readonly MAX_MEMORY_SIZE = Number((1n << 32n) -
|
|
235
|
+
// FIXME: memory should be 2^32, but TS max array size is: 2^32 - 1
|
|
236
|
+
static readonly MAX_MEMORY_SIZE = Number((1n << 32n) - 1n);
|
|
237
237
|
private _mem: MemoryValue[];
|
|
238
238
|
|
|
239
239
|
constructor() {
|
|
@@ -264,8 +264,7 @@ export class TaggedMemory implements TaggedMemoryInterface {
|
|
|
264
264
|
}
|
|
265
265
|
|
|
266
266
|
public getSlice(offset: number, size: number): MemoryValue[] {
|
|
267
|
-
assert(offset
|
|
268
|
-
assert(offset + size < TaggedMemory.MAX_MEMORY_SIZE);
|
|
267
|
+
assert(offset + size <= TaggedMemory.MAX_MEMORY_SIZE);
|
|
269
268
|
const value = this._mem.slice(offset, offset + size);
|
|
270
269
|
TaggedMemory.log.debug(`getSlice(${offset}, ${size}) = ${value}`);
|
|
271
270
|
for (let i = 0; i < value.length; i++) {
|
|
@@ -278,14 +277,12 @@ export class TaggedMemory implements TaggedMemoryInterface {
|
|
|
278
277
|
}
|
|
279
278
|
|
|
280
279
|
public getSliceAs<T>(offset: number, size: number): T[] {
|
|
281
|
-
assert(offset
|
|
282
|
-
assert(offset + size < TaggedMemory.MAX_MEMORY_SIZE);
|
|
280
|
+
assert(offset + size <= TaggedMemory.MAX_MEMORY_SIZE);
|
|
283
281
|
return this.getSlice(offset, size) as T[];
|
|
284
282
|
}
|
|
285
283
|
|
|
286
284
|
public getSliceTags(offset: number, size: number): TypeTag[] {
|
|
287
|
-
assert(offset
|
|
288
|
-
assert(offset + size < TaggedMemory.MAX_MEMORY_SIZE);
|
|
285
|
+
assert(offset + size <= TaggedMemory.MAX_MEMORY_SIZE);
|
|
289
286
|
return this._mem.slice(offset, offset + size).map(TaggedMemory.getTag);
|
|
290
287
|
}
|
|
291
288
|
|
|
@@ -296,8 +293,7 @@ export class TaggedMemory implements TaggedMemoryInterface {
|
|
|
296
293
|
}
|
|
297
294
|
|
|
298
295
|
public setSlice(offset: number, vs: MemoryValue[]) {
|
|
299
|
-
assert(offset
|
|
300
|
-
assert(offset + vs.length < TaggedMemory.MAX_MEMORY_SIZE);
|
|
296
|
+
assert(offset + vs.length <= TaggedMemory.MAX_MEMORY_SIZE);
|
|
301
297
|
// We may need to extend the memory size, otherwise splice doesn't insert.
|
|
302
298
|
if (offset + vs.length > this._mem.length) {
|
|
303
299
|
this._mem.length = offset + vs.length;
|