@aztec/simulator 0.43.0 → 0.45.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.
Files changed (155) hide show
  1. package/dest/acvm/oracle/oracle.d.ts +3 -1
  2. package/dest/acvm/oracle/oracle.d.ts.map +1 -1
  3. package/dest/acvm/oracle/oracle.js +12 -6
  4. package/dest/acvm/oracle/typed_oracle.d.ts +6 -4
  5. package/dest/acvm/oracle/typed_oracle.d.ts.map +1 -1
  6. package/dest/acvm/oracle/typed_oracle.js +8 -2
  7. package/dest/avm/avm_context.d.ts +1 -1
  8. package/dest/avm/avm_context.d.ts.map +1 -1
  9. package/dest/avm/avm_context.js +3 -3
  10. package/dest/avm/{avm_message_call_result.d.ts → avm_contract_call_result.d.ts} +2 -2
  11. package/dest/avm/avm_contract_call_result.d.ts.map +1 -0
  12. package/dest/avm/avm_contract_call_result.js +18 -0
  13. package/dest/avm/avm_execution_environment.d.ts +8 -10
  14. package/dest/avm/avm_execution_environment.d.ts.map +1 -1
  15. package/dest/avm/avm_execution_environment.js +15 -19
  16. package/dest/avm/avm_gas.js +2 -2
  17. package/dest/avm/avm_simulator.d.ts +4 -4
  18. package/dest/avm/avm_simulator.d.ts.map +1 -1
  19. package/dest/avm/avm_simulator.js +7 -8
  20. package/dest/avm/bytecode_utils.d.ts +5 -0
  21. package/dest/avm/bytecode_utils.d.ts.map +1 -0
  22. package/dest/avm/bytecode_utils.js +29 -0
  23. package/dest/avm/errors.js +2 -2
  24. package/dest/avm/fixtures/index.d.ts +10 -6
  25. package/dest/avm/fixtures/index.d.ts.map +1 -1
  26. package/dest/avm/fixtures/index.js +10 -17
  27. package/dest/avm/journal/journal.d.ts +56 -65
  28. package/dest/avm/journal/journal.d.ts.map +1 -1
  29. package/dest/avm/journal/journal.js +80 -117
  30. package/dest/avm/journal/nullifiers.d.ts +21 -8
  31. package/dest/avm/journal/nullifiers.d.ts.map +1 -1
  32. package/dest/avm/journal/nullifiers.js +26 -8
  33. package/dest/avm/journal/public_storage.d.ts +5 -1
  34. package/dest/avm/journal/public_storage.d.ts.map +1 -1
  35. package/dest/avm/journal/public_storage.js +11 -2
  36. package/dest/avm/opcodes/accrued_substate.d.ts +1 -2
  37. package/dest/avm/opcodes/accrued_substate.d.ts.map +1 -1
  38. package/dest/avm/opcodes/accrued_substate.js +8 -17
  39. package/dest/avm/opcodes/environment_getters.d.ts +13 -8
  40. package/dest/avm/opcodes/environment_getters.d.ts.map +1 -1
  41. package/dest/avm/opcodes/environment_getters.js +20 -13
  42. package/dest/avm/opcodes/external_calls.d.ts.map +1 -1
  43. package/dest/avm/opcodes/external_calls.js +11 -27
  44. package/dest/avm/serialization/bytecode_serialization.d.ts.map +1 -1
  45. package/dest/avm/serialization/bytecode_serialization.js +5 -5
  46. package/dest/avm/serialization/instruction_serialization.d.ts +9 -9
  47. package/dest/avm/serialization/instruction_serialization.d.ts.map +1 -1
  48. package/dest/avm/serialization/instruction_serialization.js +10 -10
  49. package/dest/avm/test_utils.d.ts +14 -0
  50. package/dest/avm/test_utils.d.ts.map +1 -0
  51. package/dest/avm/test_utils.js +36 -0
  52. package/dest/client/client_execution_context.d.ts +6 -4
  53. package/dest/client/client_execution_context.d.ts.map +1 -1
  54. package/dest/client/client_execution_context.js +8 -6
  55. package/dest/client/execution_note_cache.d.ts.map +1 -1
  56. package/dest/client/execution_note_cache.js +1 -1
  57. package/dest/client/execution_result.d.ts +2 -1
  58. package/dest/client/execution_result.d.ts.map +1 -1
  59. package/dest/client/execution_result.js +1 -1
  60. package/dest/client/index.d.ts +2 -0
  61. package/dest/client/index.d.ts.map +1 -1
  62. package/dest/client/index.js +3 -1
  63. package/dest/client/simulator.d.ts +3 -3
  64. package/dest/client/simulator.d.ts.map +1 -1
  65. package/dest/client/simulator.js +1 -1
  66. package/dest/client/view_data_oracle.d.ts +5 -1
  67. package/dest/client/view_data_oracle.d.ts.map +1 -1
  68. package/dest/client/view_data_oracle.js +12 -4
  69. package/dest/mocks/fixtures.d.ts +3 -3
  70. package/dest/mocks/fixtures.d.ts.map +1 -1
  71. package/dest/mocks/fixtures.js +6 -5
  72. package/dest/public/abstract_phase_manager.d.ts +1 -0
  73. package/dest/public/abstract_phase_manager.d.ts.map +1 -1
  74. package/dest/public/abstract_phase_manager.js +17 -14
  75. package/dest/public/app_logic_phase_manager.d.ts.map +1 -1
  76. package/dest/public/app_logic_phase_manager.js +2 -1
  77. package/dest/public/execution.d.ts +33 -30
  78. package/dest/public/execution.d.ts.map +1 -1
  79. package/dest/public/execution.js +2 -2
  80. package/dest/public/executor.d.ts +12 -7
  81. package/dest/public/executor.d.ts.map +1 -1
  82. package/dest/public/executor.js +42 -33
  83. package/dest/public/hints_builder.d.ts +1 -1
  84. package/dest/public/index.d.ts +1 -1
  85. package/dest/public/index.d.ts.map +1 -1
  86. package/dest/public/index.js +1 -1
  87. package/dest/public/public_kernel.d.ts +1 -1
  88. package/dest/public/public_kernel.d.ts.map +1 -1
  89. package/dest/public/public_kernel.js +2 -2
  90. package/dest/public/public_processor.d.ts +5 -2
  91. package/dest/public/public_processor.d.ts.map +1 -1
  92. package/dest/public/public_processor.js +142 -123
  93. package/dest/public/side_effect_trace.d.ts +87 -0
  94. package/dest/public/side_effect_trace.d.ts.map +1 -0
  95. package/dest/public/side_effect_trace.js +236 -0
  96. package/dest/public/side_effect_trace_interface.d.ts +36 -0
  97. package/dest/public/side_effect_trace_interface.d.ts.map +1 -0
  98. package/dest/public/side_effect_trace_interface.js +2 -0
  99. package/dest/public/teardown_phase_manager.d.ts.map +1 -1
  100. package/dest/public/teardown_phase_manager.js +2 -1
  101. package/dest/rollup/rollup.d.ts +1 -1
  102. package/dest/rollup/rollup.d.ts.map +1 -1
  103. package/dest/rollup/rollup.js +2 -2
  104. package/package.json +18 -9
  105. package/src/acvm/oracle/oracle.ts +23 -5
  106. package/src/acvm/oracle/typed_oracle.ts +23 -4
  107. package/src/avm/avm_context.ts +2 -2
  108. package/src/avm/{avm_message_call_result.ts → avm_contract_call_result.ts} +1 -1
  109. package/src/avm/avm_execution_environment.ts +16 -26
  110. package/src/avm/avm_gas.ts +1 -1
  111. package/src/avm/avm_simulator.ts +10 -13
  112. package/src/avm/bytecode_utils.ts +32 -0
  113. package/src/avm/errors.ts +1 -1
  114. package/src/avm/fixtures/index.ts +21 -23
  115. package/src/avm/journal/journal.ts +118 -224
  116. package/src/avm/journal/nullifiers.ts +30 -13
  117. package/src/avm/journal/public_storage.ts +12 -2
  118. package/src/avm/opcodes/accrued_substate.ts +12 -21
  119. package/src/avm/opcodes/environment_getters.ts +23 -14
  120. package/src/avm/opcodes/external_calls.ts +13 -36
  121. package/src/avm/serialization/bytecode_serialization.ts +4 -3
  122. package/src/avm/serialization/instruction_serialization.ts +3 -3
  123. package/src/avm/test_utils.ts +53 -0
  124. package/src/client/client_execution_context.ts +22 -7
  125. package/src/client/execution_note_cache.ts +0 -1
  126. package/src/client/execution_result.ts +2 -1
  127. package/src/client/index.ts +2 -0
  128. package/src/client/simulator.ts +8 -2
  129. package/src/client/view_data_oracle.ts +20 -3
  130. package/src/mocks/fixtures.ts +7 -6
  131. package/src/public/abstract_phase_manager.ts +32 -21
  132. package/src/public/app_logic_phase_manager.ts +1 -0
  133. package/src/public/execution.ts +45 -31
  134. package/src/public/executor.ts +71 -49
  135. package/src/public/index.ts +1 -1
  136. package/src/public/public_kernel.ts +2 -1
  137. package/src/public/public_processor.ts +11 -2
  138. package/src/public/side_effect_trace.ts +341 -0
  139. package/src/public/side_effect_trace_interface.ts +41 -0
  140. package/src/public/teardown_phase_manager.ts +1 -0
  141. package/src/rollup/rollup.ts +3 -1
  142. package/dest/avm/avm_message_call_result.d.ts.map +0 -1
  143. package/dest/avm/avm_message_call_result.js +0 -18
  144. package/dest/avm/journal/trace.d.ts +0 -33
  145. package/dest/avm/journal/trace.d.ts.map +0 -1
  146. package/dest/avm/journal/trace.js +0 -152
  147. package/dest/avm/journal/trace_types.d.ts +0 -55
  148. package/dest/avm/journal/trace_types.d.ts.map +0 -1
  149. package/dest/avm/journal/trace_types.js +0 -2
  150. package/dest/public/transitional_adaptors.d.ts +0 -21
  151. package/dest/public/transitional_adaptors.d.ts.map +0 -1
  152. package/dest/public/transitional_adaptors.js +0 -90
  153. package/src/avm/journal/trace.ts +0 -181
  154. package/src/avm/journal/trace_types.ts +0 -91
  155. package/src/public/transitional_adaptors.ts +0 -168
@@ -13,6 +13,8 @@ export declare class Oracle {
13
13
  unpackReturns([returnsHash]: ACVMField[]): Promise<ACVMField[]>;
14
14
  getBlockNumber(): Promise<ACVMField>;
15
15
  getContractAddress(): Promise<ACVMField>;
16
+ getVersion(): Promise<ACVMField>;
17
+ getChainId(): Promise<ACVMField>;
16
18
  getKeyValidationRequest([pkMHash]: ACVMField[]): Promise<ACVMField[]>;
17
19
  getContractInstance([address]: ACVMField[]): Promise<string[]>;
18
20
  getMembershipWitness([blockNumber]: ACVMField[], [treeId]: ACVMField[], [leafValue]: ACVMField[]): Promise<ACVMField[]>;
@@ -29,7 +31,7 @@ export declare class Oracle {
29
31
  notifyNullifiedNote([innerNullifier]: ACVMField[], [innerNoteHash]: ACVMField[], [counter]: ACVMField[]): Promise<ACVMField>;
30
32
  checkNullifierExists([innerNullifier]: ACVMField[]): Promise<ACVMField>;
31
33
  getL1ToL2MembershipWitness([contractAddress]: ACVMField[], [messageHash]: ACVMField[], [secret]: ACVMField[]): Promise<ACVMField[]>;
32
- storageRead([startStorageSlot]: ACVMField[], [numberOfElements]: ACVMField[]): Promise<ACVMField[]>;
34
+ storageRead([contractAddress]: ACVMField[], [startStorageSlot]: ACVMField[], [blockNumber]: ACVMField[], [numberOfElements]: ACVMField[]): Promise<ACVMField[]>;
33
35
  storageWrite([startStorageSlot]: ACVMField[], values: ACVMField[]): Promise<ACVMField[]>;
34
36
  emitEncryptedEventLog([contractAddress]: ACVMField[], [randomness]: ACVMField[], encryptedEvent: ACVMField[], [counter]: ACVMField[]): void;
35
37
  emitEncryptedNoteLog([noteHashCounter]: ACVMField[], encryptedNote: ACVMField[], [counter]: ACVMField[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/oracle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/oracle.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { MerkleTreeId, UnencryptedL2Log } from '@aztec/circuit-types';
2
2
  import { KeyValidationRequest } from '@aztec/circuits.js';
3
- import { EventSelector, FunctionSelector } from '@aztec/foundation/abi';
3
+ import { EventSelector, FunctionSelector, NoteSelector } from '@aztec/foundation/abi';
4
4
  import { AztecAddress } from '@aztec/foundation/aztec-address';
5
5
  import { Fr, Point } from '@aztec/foundation/fields';
6
6
  import { frToBoolean, frToNumber, fromACVMField } from '../deserialize.js';
@@ -39,6 +39,12 @@ export class Oracle {
39
39
  async getContractAddress() {
40
40
  return toACVMField(await this.typedOracle.getContractAddress());
41
41
  }
42
+ async getVersion() {
43
+ return toACVMField(await this.typedOracle.getVersion());
44
+ }
45
+ async getChainId() {
46
+ return toACVMField(await this.typedOracle.getChainId());
47
+ }
42
48
  async getKeyValidationRequest([pkMHash]) {
43
49
  const { pkM, skApp } = await this.typedOracle.getKeyValidationRequest(fromACVMField(pkMHash));
44
50
  return [toACVMField(pkM.x), toACVMField(pkM.y), toACVMField(skApp)];
@@ -151,7 +157,7 @@ export class Oracle {
151
157
  return returnData.concat(paddedZeros);
152
158
  }
153
159
  notifyCreatedNote([storageSlot], [noteTypeId], note, [innerNoteHash], [counter]) {
154
- this.typedOracle.notifyCreatedNote(fromACVMField(storageSlot), fromACVMField(noteTypeId), note.map(fromACVMField), fromACVMField(innerNoteHash), +counter);
160
+ this.typedOracle.notifyCreatedNote(fromACVMField(storageSlot), NoteSelector.fromField(fromACVMField(noteTypeId)), note.map(fromACVMField), fromACVMField(innerNoteHash), +counter);
155
161
  return toACVMField(0);
156
162
  }
157
163
  async notifyNullifiedNote([innerNullifier], [innerNoteHash], [counter]) {
@@ -166,8 +172,8 @@ export class Oracle {
166
172
  const message = await this.typedOracle.getL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress), fromACVMField(messageHash), fromACVMField(secret));
167
173
  return message.toFields().map(toACVMField);
168
174
  }
169
- async storageRead([startStorageSlot], [numberOfElements]) {
170
- const values = await this.typedOracle.storageRead(fromACVMField(startStorageSlot), +numberOfElements);
175
+ async storageRead([contractAddress], [startStorageSlot], [blockNumber], [numberOfElements]) {
176
+ const values = await this.typedOracle.storageRead(fromACVMField(contractAddress), fromACVMField(startStorageSlot), +blockNumber, +numberOfElements);
171
177
  return values.map(toACVMField);
172
178
  }
173
179
  async storageWrite([startStorageSlot], values) {
@@ -199,7 +205,7 @@ export class Oracle {
199
205
  const ovpkM = new Point(fromACVMField(ovpkMX), fromACVMField(ovpkMY));
200
206
  const ovKeys = new KeyValidationRequest(ovpkM, Fr.fromString(ovskApp));
201
207
  const ivpkM = new Point(fromACVMField(ivpkMX), fromACVMField(ivpkMY));
202
- const encLog = this.typedOracle.computeEncryptedNoteLog(AztecAddress.fromString(contractAddress), Fr.fromString(storageSlot), Fr.fromString(noteTypeId), ovKeys, ivpkM, preimage.map(fromACVMField));
208
+ const encLog = this.typedOracle.computeEncryptedNoteLog(AztecAddress.fromString(contractAddress), Fr.fromString(storageSlot), NoteSelector.fromField(Fr.fromString(noteTypeId)), ovKeys, ivpkM, preimage.map(fromACVMField));
203
209
  const bytes = [];
204
210
  encLog.forEach(v => {
205
211
  bytes.push(toACVMField(v));
@@ -250,4 +256,4 @@ export class Oracle {
250
256
  return Array.from(ciphertext).map(byte => toACVMField(byte));
251
257
  }
252
258
  }
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JhY2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fjdm0vb3JhY2xlL29yYWNsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdqRjs7R0FFRztBQUNILE1BQU0sT0FBTyxNQUFNO0lBQ2pCLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUcsQ0FBQztJQUVoRCxjQUFjO1FBQ1osTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM5QyxPQUFPLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQWlCO1FBQ3hDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDbEYsT0FBTyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhLENBQUMsT0FBb0IsRUFB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
259
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JhY2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fjdm0vb3JhY2xlL29yYWNsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHakY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sTUFBTTtJQUNqQixZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUFHLENBQUM7SUFFaEQsY0FBYztRQUNaLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDOUMsT0FBTyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFpQjtRQUN4QyxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQ2xGLE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxLQUFLLENBQUMsYUFBYSxDQUFD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
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  import { type CompleteAddress, type MerkleTreeId, type Note, type NoteStatus, type NullifierMembershipWitness, type PublicDataWitness, type PublicKey, type SiblingPath, type UnencryptedL2Log } from '@aztec/circuit-types';
3
3
  import { type Header, type KeyValidationRequest, type L1_TO_L2_MSG_TREE_HEIGHT, type PrivateCallStackItem, type PublicCallRequest } from '@aztec/circuits.js';
4
- import { type FunctionSelector } from '@aztec/foundation/abi';
4
+ import { type FunctionSelector, type NoteSelector } from '@aztec/foundation/abi';
5
5
  import { type AztecAddress } from '@aztec/foundation/aztec-address';
6
6
  import { Fr } from '@aztec/foundation/fields';
7
7
  import { type ContractInstance } from '@aztec/types/contracts';
@@ -48,6 +48,8 @@ export declare abstract class TypedOracle {
48
48
  unpackReturns(_returnsHash: Fr): Promise<Fr[]>;
49
49
  getBlockNumber(): Promise<number>;
50
50
  getContractAddress(): Promise<AztecAddress>;
51
+ getChainId(): Promise<Fr>;
52
+ getVersion(): Promise<Fr>;
51
53
  getKeyValidationRequest(_pkMHash: Fr): Promise<KeyValidationRequest>;
52
54
  getContractInstance(_address: AztecAddress): Promise<ContractInstance>;
53
55
  getMembershipWitness(_blockNumber: number, _treeId: MerkleTreeId, _leafValue: Fr): Promise<Fr[] | undefined>;
@@ -60,16 +62,16 @@ export declare abstract class TypedOracle {
60
62
  getAuthWitness(_messageHash: Fr): Promise<Fr[] | undefined>;
61
63
  popCapsule(): Promise<Fr[]>;
62
64
  getNotes(_storageSlot: Fr, _numSelects: number, _selectByIndexes: number[], _selectByOffsets: number[], _selectByLengths: number[], _selectValues: Fr[], _selectComparators: number[], _sortByIndexes: number[], _sortByOffsets: number[], _sortByLengths: number[], _sortOrder: number[], _limit: number, _offset: number, _status: NoteStatus): Promise<NoteData[]>;
63
- notifyCreatedNote(_storageSlot: Fr, _noteTypeId: Fr, _note: Fr[], _innerNoteHash: Fr, _counter: number): void;
65
+ notifyCreatedNote(_storageSlot: Fr, _noteTypeId: NoteSelector, _note: Fr[], _innerNoteHash: Fr, _counter: number): void;
64
66
  notifyNullifiedNote(_innerNullifier: Fr, _innerNoteHash: Fr, _counter: number): Promise<void>;
65
67
  checkNullifierExists(_innerNullifier: Fr): Promise<boolean>;
66
68
  getL1ToL2MembershipWitness(_contractAddress: AztecAddress, _messageHash: Fr, _secret: Fr): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
67
- storageRead(_startStorageSlot: Fr, _numberOfElements: number): Promise<Fr[]>;
69
+ storageRead(_contractAddress: Fr, _startStorageSlot: Fr, _blockNumber: number, _numberOfElements: number): Promise<Fr[]>;
68
70
  storageWrite(_startStorageSlot: Fr, _values: Fr[]): Promise<Fr[]>;
69
71
  emitEncryptedEventLog(_contractAddress: AztecAddress, _randomness: Fr, _encryptedEvent: Buffer, _counter: number): void;
70
72
  emitEncryptedNoteLog(_noteHashCounter: number, _encryptedNote: Buffer, _counter: number): void;
71
73
  computeEncryptedEventLog(_contractAddress: AztecAddress, _randomness: Fr, _eventTypeId: Fr, _ovKeys: KeyValidationRequest, _ivpkM: PublicKey, _preimage: Fr[]): Buffer;
72
- computeEncryptedNoteLog(_contractAddress: AztecAddress, _storageSlot: Fr, _noteTypeId: Fr, _ovKeys: KeyValidationRequest, _ivpkM: PublicKey, _preimage: Fr[]): Buffer;
74
+ computeEncryptedNoteLog(_contractAddress: AztecAddress, _storageSlot: Fr, _noteTypeId: NoteSelector, _ovKeys: KeyValidationRequest, _ivpkM: PublicKey, _preimage: Fr[]): Buffer;
73
75
  emitUnencryptedLog(_log: UnencryptedL2Log, _counter: number): void;
74
76
  emitContractClassUnencryptedLog(_log: UnencryptedL2Log, _counter: number): Fr;
75
77
  callPrivateFunction(_targetContractAddress: AztecAddress, _functionSelector: FunctionSelector, _argsHash: Fr, _sideEffectCounter: number, _isStaticCall: boolean, _isDelegateCall: boolean): Promise<PrivateCallStackItem>;
@@ -1 +1 @@
1
- {"version":3,"file":"typed_oracle.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/typed_oracle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed_oracle.d.ts","sourceRoot":"","sources":["../../../src/acvm/oracle/typed_oracle.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,12 @@ export class TypedOracle {
41
41
  getContractAddress() {
42
42
  throw new OracleMethodNotAvailableError('getContractAddress');
43
43
  }
44
+ getChainId() {
45
+ throw new OracleMethodNotAvailableError('getChainId');
46
+ }
47
+ getVersion() {
48
+ throw new OracleMethodNotAvailableError('getVersion');
49
+ }
44
50
  getKeyValidationRequest(_pkMHash) {
45
51
  throw new OracleMethodNotAvailableError('getKeyValidationRequest');
46
52
  }
@@ -89,7 +95,7 @@ export class TypedOracle {
89
95
  getL1ToL2MembershipWitness(_contractAddress, _messageHash, _secret) {
90
96
  throw new OracleMethodNotAvailableError('getL1ToL2MembershipWitness');
91
97
  }
92
- storageRead(_startStorageSlot, _numberOfElements) {
98
+ storageRead(_contractAddress, _startStorageSlot, _blockNumber, _numberOfElements) {
93
99
  throw new OracleMethodNotAvailableError('storageRead');
94
100
  }
95
101
  storageWrite(_startStorageSlot, _values) {
@@ -132,4 +138,4 @@ export class TypedOracle {
132
138
  throw new OracleMethodNotAvailableError('debugLog');
133
139
  }
134
140
  }
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWRfb3JhY2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fjdm0vb3JhY2xlL3R5cGVkX29yYWNsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQkEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBdUI5QyxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDO0lBQ0UsOERBQThEO0lBQ3ZELEtBQWE7SUFDcEIsa0RBQWtEO0lBQzNDLFdBQTJCO1FBRjNCLFVBQUssR0FBTCxLQUFLLENBQVE7UUFFYixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7SUFDakMsQ0FBQztJQUVKLFFBQVE7UUFDTixPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRjtBQUVELE1BQU0sNkJBQThCLFNBQVEsS0FBSztJQUMvQyxZQUFZLFVBQWtCO1FBQzVCLEtBQUssQ0FBQyxpQkFBaUIsVUFBVSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDRjtBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLFdBQVc7SUFDL0IsY0FBYztRQUNaLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFXO1FBQzVCLE1BQU0sSUFBSSw2QkFBNkIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBYztRQUN4QixNQUFNLElBQUksNkJBQTZCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELGFBQWEsQ0FBQyxZQUFnQjtRQUM1QixNQUFNLElBQUksNkJBQTZCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGNBQWM7UUFDWixNQUFNLElBQUksNkJBQTZCLENB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
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWRfb3JhY2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Fjdm0vb3JhY2xlL3R5cGVkX29yYWNsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQkEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBdUI5QyxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDO0lBQ0UsOERBQThEO0lBQ3ZELEtBQWE7SUFDcEIsa0RBQWtEO0lBQzNDLFdBQTJCO1FBRjNCLFVBQUssR0FBTCxLQUFLLENBQVE7UUFFYixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7SUFDakMsQ0FBQztJQUVKLFFBQVE7UUFDTixPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRjtBQUVELE1BQU0sNkJBQThCLFNBQVEsS0FBSztJQUMvQyxZQUFZLFVBQWtCO1FBQzVCLEtBQUssQ0FBQyxpQkFBaUIsVUFBVSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDRjtBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLFdBQVc7SUFDL0IsY0FBYztRQUNaLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFXO1FBQzVCLE1BQU0sSUFBSSw2QkFBNkIsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBYztRQUN4QixNQUFNLElBQUksNkJBQTZCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELGFBQWEsQ0FBQyxZQUFnQjtRQUM1QixNQUFNLElBQUksNkJBQTZCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGNBQWM7UUFDWixNQUFNLElBQUksNkJBQTZCLENB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
@@ -34,6 +34,6 @@ export declare class AvmContext {
34
34
  * @param callType - Type of call (CALL or STATICCALL)
35
35
  * @returns new AvmContext instance
36
36
  */
37
- createNestedContractCallContext(address: AztecAddress, calldata: Fr[], allocatedGas: Gas, callType: 'CALL' | 'STATICCALL', temporaryFunctionSelector?: FunctionSelector): AvmContext;
37
+ createNestedContractCallContext(address: AztecAddress, calldata: Fr[], allocatedGas: Gas, callType: 'CALL' | 'STATICCALL', functionSelector?: FunctionSelector): AvmContext;
38
38
  }
39
39
  //# sourceMappingURL=avm_context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"avm_context.d.ts","sourceRoot":"","sources":["../../src/avm/avm_context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,KAAK,GAAG,EAAgB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAEvE;;;GAGG;AACH,qBAAa,UAAU;IASZ,gBAAgB,EAAE,0BAA0B;IAC5C,WAAW,EAAE,uBAAuB;IACpC,YAAY,EAAE,eAAe;IAVtC;;;;;;OAMG;gBAEM,gBAAgB,EAAE,0BAA0B,EAC5C,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,eAAe;IAGtC;;;;;;;;;;;;;OAaG;IACI,+BAA+B,CACpC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,EAAE,EAAE,EACd,YAAY,EAAE,GAAG,EACjB,QAAQ,EAAE,MAAM,GAAG,YAAY,EAC/B,yBAAyB,GAAE,gBAA2C,GACrE,UAAU;CAUd"}
1
+ {"version":3,"file":"avm_context.d.ts","sourceRoot":"","sources":["../../src/avm/avm_context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,KAAK,GAAG,EAAgB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAEvE;;;GAGG;AACH,qBAAa,UAAU;IASZ,gBAAgB,EAAE,0BAA0B;IAC5C,WAAW,EAAE,uBAAuB;IACpC,YAAY,EAAE,eAAe;IAVtC;;;;;;OAMG;gBAEM,gBAAgB,EAAE,0BAA0B,EAC5C,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,eAAe;IAGtC;;;;;;;;;;;;;OAaG;IACI,+BAA+B,CACpC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,EAAE,EAAE,EACd,YAAY,EAAE,GAAG,EACjB,QAAQ,EAAE,MAAM,GAAG,YAAY,EAC/B,gBAAgB,GAAE,gBAA2C,GAC5D,UAAU;CAUd"}
@@ -32,14 +32,14 @@ export class AvmContext {
32
32
  * @param callType - Type of call (CALL or STATICCALL)
33
33
  * @returns new AvmContext instance
34
34
  */
35
- createNestedContractCallContext(address, calldata, allocatedGas, callType, temporaryFunctionSelector = FunctionSelector.empty()) {
35
+ createNestedContractCallContext(address, calldata, allocatedGas, callType, functionSelector = FunctionSelector.empty()) {
36
36
  const deriveFn = callType === 'CALL'
37
37
  ? this.environment.deriveEnvironmentForNestedCall
38
38
  : this.environment.deriveEnvironmentForNestedStaticCall;
39
- const newExecutionEnvironment = deriveFn.call(this.environment, address, calldata, temporaryFunctionSelector);
39
+ const newExecutionEnvironment = deriveFn.call(this.environment, address, calldata, functionSelector);
40
40
  const forkedWorldState = this.persistableState.fork();
41
41
  const machineState = AvmMachineState.fromState(gasToGasLeft(allocatedGas));
42
42
  return new AvmContext(forkedWorldState, newExecutionEnvironment, machineState);
43
43
  }
44
44
  }
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2NvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXZtL2F2bV9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUl6RSxPQUFPLEVBQVksWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd6RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQUNyQjs7Ozs7O09BTUc7SUFDSCxZQUNTLGdCQUE0QyxFQUM1QyxXQUFvQyxFQUNwQyxZQUE2QjtRQUY3QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTRCO1FBQzVDLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7SUFDbkMsQ0FBQztJQUVKOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSSwrQkFBK0IsQ0FDcEMsT0FBcUIsRUFDckIsUUFBYyxFQUNkLFlBQWlCLEVBQ2pCLFFBQStCLEVBQy9CLDRCQUE4QyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7UUFFdEUsTUFBTSxRQUFRLEdBQ1osUUFBUSxLQUFLLE1BQU07WUFDakIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsOEJBQThCO1lBQ2pELENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLG9DQUFvQyxDQUFDO1FBQzVELE1BQU0sdUJBQXVCLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUseUJBQXlCLENBQUMsQ0FBQztRQUM5RyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0RCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzNFLE9BQU8sSUFBSSxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakYsQ0FBQztDQUNGIn0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2NvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXZtL2F2bV9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUl6RSxPQUFPLEVBQVksWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd6RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQUNyQjs7Ozs7O09BTUc7SUFDSCxZQUNTLGdCQUE0QyxFQUM1QyxXQUFvQyxFQUNwQyxZQUE2QjtRQUY3QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTRCO1FBQzVDLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7SUFDbkMsQ0FBQztJQUVKOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSSwrQkFBK0IsQ0FDcEMsT0FBcUIsRUFDckIsUUFBYyxFQUNkLFlBQWlCLEVBQ2pCLFFBQStCLEVBQy9CLG1CQUFxQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7UUFFN0QsTUFBTSxRQUFRLEdBQ1osUUFBUSxLQUFLLE1BQU07WUFDakIsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsOEJBQThCO1lBQ2pELENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLG9DQUFvQyxDQUFDO1FBQzVELE1BQU0sdUJBQXVCLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNyRyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0RCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQzNFLE9BQU8sSUFBSSxVQUFVLENBQUMsZ0JBQWdCLEVBQUUsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDakYsQ0FBQztDQUNGIn0=
@@ -3,11 +3,11 @@ import { type AvmRevertReason } from './errors.js';
3
3
  /**
4
4
  * Results of an contract call's execution in the AVM.
5
5
  */
6
- export declare class AvmContractCallResults {
6
+ export declare class AvmContractCallResult {
7
7
  reverted: boolean;
8
8
  output: Fr[];
9
9
  revertReason?: AvmRevertReason | undefined;
10
10
  constructor(reverted: boolean, output: Fr[], revertReason?: AvmRevertReason | undefined);
11
11
  toString(): string;
12
12
  }
13
- //# sourceMappingURL=avm_message_call_result.d.ts.map
13
+ //# sourceMappingURL=avm_contract_call_result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"avm_contract_call_result.d.ts","sourceRoot":"","sources":["../../src/avm/avm_contract_call_result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD;;GAEG;AACH,qBAAa,qBAAqB;IACb,QAAQ,EAAE,OAAO;IAAS,MAAM,EAAE,EAAE,EAAE;IAAS,YAAY,CAAC;gBAA5D,QAAQ,EAAE,OAAO,EAAS,MAAM,EAAE,EAAE,EAAE,EAAS,YAAY,CAAC,6BAAiB;IAEhG,QAAQ,IAAI,MAAM;CAOnB"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Results of an contract call's execution in the AVM.
3
+ */
4
+ export class AvmContractCallResult {
5
+ constructor(reverted, output, revertReason) {
6
+ this.reverted = reverted;
7
+ this.output = output;
8
+ this.revertReason = revertReason;
9
+ }
10
+ toString() {
11
+ let resultsStr = `reverted: ${this.reverted}, output: ${this.output}`;
12
+ if (this.revertReason) {
13
+ resultsStr += `, revertReason: ${this.revertReason}`;
14
+ }
15
+ return resultsStr;
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2NvbnRyYWN0X2NhbGxfcmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F2bS9hdm1fY29udHJhY3RfY2FsbF9yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDLFlBQW1CLFFBQWlCLEVBQVMsTUFBWSxFQUFTLFlBQThCO1FBQTdFLGFBQVEsR0FBUixRQUFRLENBQVM7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFNO1FBQVMsaUJBQVksR0FBWixZQUFZLENBQWtCO0lBQUcsQ0FBQztJQUVwRyxRQUFRO1FBQ04sSUFBSSxVQUFVLEdBQUcsYUFBYSxJQUFJLENBQUMsUUFBUSxhQUFhLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN0RSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN0QixVQUFVLElBQUksbUJBQW1CLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztDQUNGIn0=
@@ -1,12 +1,11 @@
1
- import { FunctionSelector, type GasSettings, type GlobalVariables, type Header } from '@aztec/circuits.js';
1
+ import { FunctionSelector, type GlobalVariables, type Header } from '@aztec/circuits.js';
2
2
  import { type AztecAddress } from '@aztec/foundation/aztec-address';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  export declare class AvmContextInputs {
5
- private selector;
6
5
  private argsHash;
7
6
  private isStaticCall;
8
- static readonly SIZE = 3;
9
- constructor(selector: Fr, argsHash: Fr, isStaticCall: boolean);
7
+ static readonly SIZE = 2;
8
+ constructor(argsHash: Fr, isStaticCall: boolean);
10
9
  toFields(): Fr[];
11
10
  }
12
11
  /**
@@ -17,21 +16,20 @@ export declare class AvmExecutionEnvironment {
17
16
  readonly address: AztecAddress;
18
17
  readonly storageAddress: AztecAddress;
19
18
  readonly sender: AztecAddress;
20
- readonly feePerL2Gas: Fr;
21
- readonly feePerDaGas: Fr;
19
+ readonly functionSelector: FunctionSelector;
22
20
  readonly contractCallDepth: Fr;
21
+ readonly transactionFee: Fr;
23
22
  readonly header: Header;
24
23
  readonly globals: GlobalVariables;
25
24
  readonly isStaticCall: boolean;
26
25
  readonly isDelegateCall: boolean;
27
26
  readonly calldata: Fr[];
28
- readonly gasSettings: GasSettings;
29
- readonly transactionFee: Fr;
30
- readonly temporaryFunctionSelector: FunctionSelector;
31
- constructor(address: AztecAddress, storageAddress: AztecAddress, sender: AztecAddress, feePerL2Gas: Fr, feePerDaGas: Fr, contractCallDepth: Fr, header: Header, globals: GlobalVariables, isStaticCall: boolean, isDelegateCall: boolean, calldata: Fr[], gasSettings: GasSettings, transactionFee: Fr, temporaryFunctionSelector: FunctionSelector);
27
+ constructor(address: AztecAddress, storageAddress: AztecAddress, sender: AztecAddress, functionSelector: FunctionSelector, // may be temporary (#7224)
28
+ contractCallDepth: Fr, transactionFee: Fr, header: Header, globals: GlobalVariables, isStaticCall: boolean, isDelegateCall: boolean, calldata: Fr[]);
32
29
  private deriveEnvironmentForNestedCallInternal;
33
30
  deriveEnvironmentForNestedCall(targetAddress: AztecAddress, calldata: Fr[], functionSelector?: FunctionSelector): AvmExecutionEnvironment;
34
31
  deriveEnvironmentForNestedStaticCall(targetAddress: AztecAddress, calldata: Fr[], functionSelector: FunctionSelector): AvmExecutionEnvironment;
35
32
  newDelegateCall(_targetAddress: AztecAddress, _calldata: Fr[], _functionSelector: FunctionSelector): AvmExecutionEnvironment;
33
+ getCalldataWithoutPrefix(): Fr[];
36
34
  }
37
35
  //# sourceMappingURL=avm_execution_environment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"avm_execution_environment.d.ts","sourceRoot":"","sources":["../../src/avm/avm_execution_environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,WAAW,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE3G,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,qBAAa,gBAAgB;IAGf,OAAO,CAAC,QAAQ;IAAM,OAAO,CAAC,QAAQ;IAAM,OAAO,CAAC,YAAY;IAF5E,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK;gBAEL,QAAQ,EAAE,EAAE,EAAU,QAAQ,EAAE,EAAE,EAAU,YAAY,EAAE,OAAO;IAE9E,QAAQ,IAAI,EAAE,EAAE;CAGxB;AAED;;;GAGG;AAEH,qBAAa,uBAAuB;aAEhB,OAAO,EAAE,YAAY;aACrB,cAAc,EAAE,YAAY;aAC5B,MAAM,EAAE,YAAY;aACpB,WAAW,EAAE,EAAE;aACf,WAAW,EAAE,EAAE;aACf,iBAAiB,EAAE,EAAE;aACrB,MAAM,EAAE,MAAM;aACd,OAAO,EAAE,eAAe;aACxB,YAAY,EAAE,OAAO;aACrB,cAAc,EAAE,OAAO;aACvB,QAAQ,EAAE,EAAE,EAAE;aACd,WAAW,EAAE,WAAW;aACxB,cAAc,EAAE,EAAE;aAKlB,yBAAyB,EAAE,gBAAgB;gBAjB3C,OAAO,EAAE,YAAY,EACrB,cAAc,EAAE,YAAY,EAC5B,MAAM,EAAE,YAAY,EACpB,WAAW,EAAE,EAAE,EACf,WAAW,EAAE,EAAE,EACf,iBAAiB,EAAE,EAAE,EACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,OAAO,EACrB,cAAc,EAAE,OAAO,EACvB,QAAQ,EAAE,EAAE,EAAE,EACd,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,EAAE,EAKlB,yBAAyB,EAAE,gBAAgB;IAY7D,OAAO,CAAC,sCAAsC;IAyBvC,8BAA8B,CACnC,aAAa,EAAE,YAAY,EAC3B,QAAQ,EAAE,EAAE,EAAE,EACd,gBAAgB,GAAE,gBAA2C,GAC5D,uBAAuB;IAUnB,oCAAoC,CACzC,aAAa,EAAE,YAAY,EAC3B,QAAQ,EAAE,EAAE,EAAE,EACd,gBAAgB,EAAE,gBAAgB,GACjC,uBAAuB;IAUnB,eAAe,CACpB,cAAc,EAAE,YAAY,EAC5B,SAAS,EAAE,EAAE,EAAE,EACf,iBAAiB,EAAE,gBAAgB,GAClC,uBAAuB;CAG3B"}
1
+ {"version":3,"file":"avm_execution_environment.d.ts","sourceRoot":"","sources":["../../src/avm/avm_execution_environment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,qBAAa,gBAAgB;IAGf,OAAO,CAAC,QAAQ;IAAM,OAAO,CAAC,YAAY;IAFtD,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK;gBAEL,QAAQ,EAAE,EAAE,EAAU,YAAY,EAAE,OAAO;IAExD,QAAQ,IAAI,EAAE,EAAE;CAGxB;AAED;;;GAGG;AACH,qBAAa,uBAAuB;aAEhB,OAAO,EAAE,YAAY;aACrB,cAAc,EAAE,YAAY;aAC5B,MAAM,EAAE,YAAY;aACpB,gBAAgB,EAAE,gBAAgB;aAClC,iBAAiB,EAAE,EAAE;aACrB,cAAc,EAAE,EAAE;aAClB,MAAM,EAAE,MAAM;aACd,OAAO,EAAE,eAAe;aACxB,YAAY,EAAE,OAAO;aACrB,cAAc,EAAE,OAAO;aACvB,QAAQ,EAAE,EAAE,EAAE;gBAVd,OAAO,EAAE,YAAY,EACrB,cAAc,EAAE,YAAY,EAC5B,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,gBAAgB,EAAE,2BAA2B;IAC/D,iBAAiB,EAAE,EAAE,EACrB,cAAc,EAAE,EAAE,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,OAAO,EACrB,cAAc,EAAE,OAAO,EACvB,QAAQ,EAAE,EAAE,EAAE;IAQhC,OAAO,CAAC,sCAAsC;IAsBvC,8BAA8B,CACnC,aAAa,EAAE,YAAY,EAC3B,QAAQ,EAAE,EAAE,EAAE,EACd,gBAAgB,GAAE,gBAA2C,GAC5D,uBAAuB;IAUnB,oCAAoC,CACzC,aAAa,EAAE,YAAY,EAC3B,QAAQ,EAAE,EAAE,EAAE,EACd,gBAAgB,EAAE,gBAAgB,GACjC,uBAAuB;IAUnB,eAAe,CACpB,cAAc,EAAE,YAAY,EAC5B,SAAS,EAAE,EAAE,EAAE,EACf,iBAAiB,EAAE,gBAAgB,GAClC,uBAAuB;IAInB,wBAAwB,IAAI,EAAE,EAAE;CAIxC"}
@@ -2,51 +2,43 @@ import { FunctionSelector } from '@aztec/circuits.js';
2
2
  import { computeVarArgsHash } from '@aztec/circuits.js/hash';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  export class AvmContextInputs {
5
- constructor(selector, argsHash, isStaticCall) {
6
- this.selector = selector;
5
+ constructor(argsHash, isStaticCall) {
7
6
  this.argsHash = argsHash;
8
7
  this.isStaticCall = isStaticCall;
9
8
  }
10
9
  toFields() {
11
- return [this.selector, this.argsHash, new Fr(this.isStaticCall)];
10
+ return [this.argsHash, new Fr(this.isStaticCall)];
12
11
  }
13
12
  }
14
- AvmContextInputs.SIZE = 3;
13
+ AvmContextInputs.SIZE = 2;
15
14
  /**
16
15
  * Contains variables that remain constant during AVM execution
17
16
  * These variables are provided by the public kernel circuit
18
17
  */
19
- // TODO(https://github.com/AztecProtocol/aztec-packages/issues/3992): gas not implemented
20
18
  export class AvmExecutionEnvironment {
21
- constructor(address, storageAddress, sender, feePerL2Gas, feePerDaGas, contractCallDepth, header, globals, isStaticCall, isDelegateCall, calldata, gasSettings, transactionFee,
22
- // Function selector is temporary since eventually public contract bytecode will be one blob
23
- // containing all functions, and function selector will become an application-level mechanism
24
- // (e.g. first few bytes of calldata + compiler-generated jump table)
25
- temporaryFunctionSelector) {
19
+ constructor(address, storageAddress, sender, functionSelector, // may be temporary (#7224)
20
+ contractCallDepth, transactionFee, header, globals, isStaticCall, isDelegateCall, calldata) {
26
21
  this.address = address;
27
22
  this.storageAddress = storageAddress;
28
23
  this.sender = sender;
29
- this.feePerL2Gas = feePerL2Gas;
30
- this.feePerDaGas = feePerDaGas;
24
+ this.functionSelector = functionSelector;
31
25
  this.contractCallDepth = contractCallDepth;
26
+ this.transactionFee = transactionFee;
32
27
  this.header = header;
33
28
  this.globals = globals;
34
29
  this.isStaticCall = isStaticCall;
35
30
  this.isDelegateCall = isDelegateCall;
36
31
  this.calldata = calldata;
37
- this.gasSettings = gasSettings;
38
- this.transactionFee = transactionFee;
39
- this.temporaryFunctionSelector = temporaryFunctionSelector;
40
32
  // We encode some extra inputs (AvmContextInputs) in calldata.
41
33
  // This will have to go once we move away from one proof per call.
42
- const inputs = new AvmContextInputs(temporaryFunctionSelector.toField(), computeVarArgsHash(calldata), isStaticCall);
43
- this.calldata = [...inputs.toFields(), ...calldata];
34
+ const inputs = new AvmContextInputs(computeVarArgsHash(calldata), isStaticCall).toFields();
35
+ this.calldata = [...inputs, ...calldata];
44
36
  }
45
37
  deriveEnvironmentForNestedCallInternal(targetAddress, calldata, functionSelector, isStaticCall, isDelegateCall) {
46
38
  return new AvmExecutionEnvironment(
47
39
  /*address=*/ targetAddress,
48
40
  /*storageAddress=*/ targetAddress,
49
- /*sender=*/ this.address, this.feePerL2Gas, this.feePerDaGas, this.contractCallDepth, this.header, this.globals, isStaticCall, isDelegateCall, calldata, this.gasSettings, this.transactionFee, functionSelector);
41
+ /*sender=*/ this.address, functionSelector, this.contractCallDepth.add(Fr.ONE), this.transactionFee, this.header, this.globals, isStaticCall, isDelegateCall, calldata);
50
42
  }
51
43
  deriveEnvironmentForNestedCall(targetAddress, calldata, functionSelector = FunctionSelector.empty()) {
52
44
  return this.deriveEnvironmentForNestedCallInternal(targetAddress, calldata, functionSelector,
@@ -61,5 +53,9 @@ export class AvmExecutionEnvironment {
61
53
  newDelegateCall(_targetAddress, _calldata, _functionSelector) {
62
54
  throw new Error('Delegate calls not supported!');
63
55
  }
56
+ getCalldataWithoutPrefix() {
57
+ // clip off the first few entries
58
+ return this.calldata.slice(AvmContextInputs.SIZE);
59
+ }
64
60
  }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2V4ZWN1dGlvbl9lbnZpcm9ubWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX2V4ZWN1dGlvbl9lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQXVELE1BQU0sb0JBQW9CLENBQUM7QUFDM0csT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlDLE1BQU0sT0FBTyxnQkFBZ0I7SUFHM0IsWUFBb0IsUUFBWSxFQUFVLFFBQVksRUFBVSxZQUFxQjtRQUFqRSxhQUFRLEdBQVIsUUFBUSxDQUFJO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBSTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFTO0lBQUcsQ0FBQztJQUVsRixRQUFRO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDOztBQU5lLHFCQUFJLEdBQUcsQ0FBQyxDQUFDO0FBUzNCOzs7R0FHRztBQUNILHlGQUF5RjtBQUN6RixNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFlBQ2tCLE9BQXFCLEVBQ3JCLGNBQTRCLEVBQzVCLE1BQW9CLEVBQ3BCLFdBQWUsRUFDZixXQUFlLEVBQ2YsaUJBQXFCLEVBQ3JCLE1BQWMsRUFDZCxPQUF3QixFQUN4QixZQUFxQixFQUNyQixjQUF1QixFQUN2QixRQUFjLEVBQ2QsV0FBd0IsRUFDeEIsY0FBa0I7SUFFbEMsNEZBQTRGO0lBQzVGLDZGQUE2RjtJQUM3RixxRUFBcUU7SUFDckQseUJBQTJDO1FBakIzQyxZQUFPLEdBQVAsT0FBTyxDQUFjO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFjO1FBQzVCLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDcEIsZ0JBQVcsR0FBWCxXQUFXLENBQUk7UUFDZixnQkFBVyxHQUFYLFdBQVcsQ0FBSTtRQUNmLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBSTtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQVM7UUFDckIsbUJBQWMsR0FBZCxjQUFjLENBQVM7UUFDdkIsYUFBUSxHQUFSLFFBQVEsQ0FBTTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFJO1FBS2xCLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBa0I7UUFFM0QsOERBQThEO1FBQzlELGtFQUFrRTtRQUNsRSxNQUFNLE1BQU0sR0FBRyxJQUFJLGdCQUFnQixDQUNqQyx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsRUFDbkMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLEVBQzVCLFlBQVksQ0FDYixDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLHNDQUFzQyxDQUM1QyxhQUEyQixFQUMzQixRQUFjLEVBQ2QsZ0JBQWtDLEVBQ2xDLFlBQXFCLEVBQ3JCLGNBQXVCO1FBRXZCLE9BQU8sSUFBSSx1QkFBdUI7UUFDaEMsWUFBWSxDQUFDLGFBQWE7UUFDMUIsbUJBQW1CLENBQUMsYUFBYTtRQUNqQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLGlCQUFpQixFQUN0QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxPQUFPLEVBQ1osWUFBWSxFQUNaLGNBQWMsRUFDZCxRQUFRLEVBQ1IsSUFBSSxDQUFDLFdBQVcsRUFDaEIsSUFBSSxDQUFDLGNBQWMsRUFDbkIsZ0JBQWdCLENBQ2pCLENBQUM7SUFDSixDQUFDO0lBRU0sOEJBQThCLENBQ25DLGFBQTJCLEVBQzNCLFFBQWMsRUFDZCxtQkFBcUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFO1FBRTdELE9BQU8sSUFBSSxDQUFDLHNDQUFzQyxDQUNoRCxhQUFhLEVBQ2IsUUFBUSxFQUNSLGdCQUFnQjtRQUNoQixpQkFBaUIsQ0FBQyxLQUFLO1FBQ3ZCLG1CQUFtQixDQUFDLEtBQUssQ0FDMUIsQ0FBQztJQUNKLENBQUM7SUFFTSxvQ0FBb0MsQ0FDekMsYUFBMkIsRUFDM0IsUUFBYyxFQUNkLGdCQUFrQztRQUVsQyxPQUFPLElBQUksQ0FBQyxzQ0FBc0MsQ0FDaEQsYUFBYSxFQUNiLFFBQVEsRUFDUixnQkFBZ0I7UUFDaEIsaUJBQWlCLENBQUMsSUFBSTtRQUN0QixtQkFBbUIsQ0FBQyxLQUFLLENBQzFCLENBQUM7SUFDSixDQUFDO0lBRU0sZUFBZSxDQUNwQixjQUE0QixFQUM1QixTQUFlLEVBQ2YsaUJBQW1DO1FBRW5DLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0NBQ0YifQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2V4ZWN1dGlvbl9lbnZpcm9ubWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX2V4ZWN1dGlvbl9lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQXFDLE1BQU0sb0JBQW9CLENBQUM7QUFDekYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFN0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlDLE1BQU0sT0FBTyxnQkFBZ0I7SUFHM0IsWUFBb0IsUUFBWSxFQUFVLFlBQXFCO1FBQTNDLGFBQVEsR0FBUixRQUFRLENBQUk7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBUztJQUFHLENBQUM7SUFFNUQsUUFBUTtRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7O0FBTmUscUJBQUksR0FBRyxDQUFDLENBQUM7QUFTM0I7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxZQUNrQixPQUFxQixFQUNyQixjQUE0QixFQUM1QixNQUFvQixFQUNwQixnQkFBa0MsRUFBRSwyQkFBMkI7SUFDL0QsaUJBQXFCLEVBQ3JCLGNBQWtCLEVBQ2xCLE1BQWMsRUFDZCxPQUF3QixFQUN4QixZQUFxQixFQUNyQixjQUF1QixFQUN2QixRQUFjO1FBVmQsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBYztRQUM1QixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQ3BCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFJO1FBQ3JCLG1CQUFjLEdBQWQsY0FBYyxDQUFJO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxZQUFPLEdBQVAsT0FBTyxDQUFpQjtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBUztRQUN2QixhQUFRLEdBQVIsUUFBUSxDQUFNO1FBRTlCLDhEQUE4RDtRQUM5RCxrRUFBa0U7UUFDbEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzRixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU8sc0NBQXNDLENBQzVDLGFBQTJCLEVBQzNCLFFBQWMsRUFDZCxnQkFBa0MsRUFDbEMsWUFBcUIsRUFDckIsY0FBdUI7UUFFdkIsT0FBTyxJQUFJLHVCQUF1QjtRQUNoQyxZQUFZLENBQUMsYUFBYTtRQUMxQixtQkFBbUIsQ0FBQyxhQUFhO1FBQ2pDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUN4QixnQkFBZ0IsRUFDaEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQ2xDLElBQUksQ0FBQyxjQUFjLEVBQ25CLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBSSxDQUFDLE9BQU8sRUFDWixZQUFZLEVBQ1osY0FBYyxFQUNkLFFBQVEsQ0FDVCxDQUFDO0lBQ0osQ0FBQztJQUVNLDhCQUE4QixDQUNuQyxhQUEyQixFQUMzQixRQUFjLEVBQ2QsbUJBQXFDLGdCQUFnQixDQUFDLEtBQUssRUFBRTtRQUU3RCxPQUFPLElBQUksQ0FBQyxzQ0FBc0MsQ0FDaEQsYUFBYSxFQUNiLFFBQVEsRUFDUixnQkFBZ0I7UUFDaEIsaUJBQWlCLENBQUMsS0FBSztRQUN2QixtQkFBbUIsQ0FBQyxLQUFLLENBQzFCLENBQUM7SUFDSixDQUFDO0lBRU0sb0NBQW9DLENBQ3pDLGFBQTJCLEVBQzNCLFFBQWMsRUFDZCxnQkFBa0M7UUFFbEMsT0FBTyxJQUFJLENBQUMsc0NBQXNDLENBQ2hELGFBQWEsRUFDYixRQUFRLEVBQ1IsZ0JBQWdCO1FBQ2hCLGlCQUFpQixDQUFDLElBQUk7UUFDdEIsbUJBQW1CLENBQUMsS0FBSyxDQUMxQixDQUFDO0lBQ0osQ0FBQztJQUVNLGVBQWUsQ0FDcEIsY0FBNEIsRUFDNUIsU0FBZSxFQUNmLGlCQUFtQztRQUVuQyxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVNLHdCQUF3QjtRQUM3QixpQ0FBaUM7UUFDakMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwRCxDQUFDO0NBQ0YifQ==
@@ -58,7 +58,7 @@ const BaseGasCosts = {
58
58
  [Opcode.FEEPERL2GAS]: DefaultBaseGasCost,
59
59
  [Opcode.FEEPERDAGAS]: DefaultBaseGasCost,
60
60
  [Opcode.TRANSACTIONFEE]: DefaultBaseGasCost,
61
- [Opcode.CONTRACTCALLDEPTH]: DefaultBaseGasCost,
61
+ [Opcode.FUNCTIONSELECTOR]: DefaultBaseGasCost,
62
62
  [Opcode.CHAINID]: DefaultBaseGasCost,
63
63
  [Opcode.VERSION]: DefaultBaseGasCost,
64
64
  [Opcode.BLOCKNUMBER]: DefaultBaseGasCost,
@@ -152,4 +152,4 @@ function getGasCostMultiplierFromTypeTag(tag) {
152
152
  throw new InstructionExecutionError(`Invalid tag type for gas cost multiplier: ${TypeTag[tag]}`);
153
153
  }
154
154
  }
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2dhcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX2dhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBUXRFLCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQVE7SUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDeEQsQ0FBQztBQUVELCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQWlEO0lBQzVFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ2hFLENBQUM7QUFFRCw4RUFBOEU7QUFDOUUsTUFBTSxVQUFVLE9BQU8sQ0FBQyxPQUFxQjtJQUMzQyxPQUFPLEVBQUUsR0FBRyxRQUFRLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztBQUNyQyxDQUFDO0FBRUQsK0NBQStDO0FBQy9DLE1BQU0sVUFBVSxNQUFNLENBQUMsR0FBRyxLQUFxQjtJQUM3QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQ2pCLENBQUMsR0FBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ25DLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxHQUFHLENB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
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZtX2dhcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hdm0vYXZtX2dhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBUXRFLCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQVE7SUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDeEQsQ0FBQztBQUVELCtDQUErQztBQUMvQyxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQWlEO0lBQzVFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO0FBQ2hFLENBQUM7QUFFRCw4RUFBOEU7QUFDOUUsTUFBTSxVQUFVLE9BQU8sQ0FBQyxPQUFxQjtJQUMzQyxPQUFPLEVBQUUsR0FBRyxRQUFRLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztBQUNyQyxDQUFDO0FBRUQsK0NBQStDO0FBQy9DLE1BQU0sVUFBVSxNQUFNLENBQUMsR0FBRyxLQUFxQjtJQUM3QyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQ2pCLENBQUMsR0FBUSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsQixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ25DLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxHQUFHLENB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