sol-dbg 0.4.0 → 0.4.2
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/dist/debug/abi.d.ts.map +1 -1
- package/dist/debug/abi.js +11 -2
- package/dist/debug/abi.js.map +1 -1
- package/dist/debug/foundry_cheatcodes.d.ts +10 -10
- package/dist/debug/foundry_cheatcodes.d.ts.map +1 -1
- package/dist/debug/foundry_cheatcodes.js +32 -49
- package/dist/debug/foundry_cheatcodes.js.map +1 -1
- package/dist/debug/opcode_interposing.d.ts.map +1 -1
- package/dist/debug/opcode_interposing.js +11 -15
- package/dist/debug/opcode_interposing.js.map +1 -1
- package/dist/debug/sol_debugger.d.ts +9 -15
- package/dist/debug/sol_debugger.d.ts.map +1 -1
- package/dist/debug/sol_debugger.js +45 -77
- package/dist/debug/sol_debugger.js.map +1 -1
- package/dist/debug/types.d.ts +6 -8
- package/dist/debug/types.d.ts.map +1 -1
- package/dist/debug/types.js.map +1 -1
- package/dist/utils/ethereumjs_internal/exceptions.d.ts +44 -0
- package/dist/utils/ethereumjs_internal/exceptions.d.ts.map +1 -0
- package/dist/utils/ethereumjs_internal/exceptions.js +59 -0
- package/dist/utils/ethereumjs_internal/exceptions.js.map +1 -0
- package/dist/utils/ethereumjs_internal/index.d.ts +3 -0
- package/dist/utils/ethereumjs_internal/index.d.ts.map +1 -0
- package/dist/utils/ethereumjs_internal/index.js +19 -0
- package/dist/utils/ethereumjs_internal/index.js.map +1 -0
- package/dist/utils/ethereumjs_internal/opcodes.d.ts +33 -0
- package/dist/utils/ethereumjs_internal/opcodes.d.ts.map +1 -0
- package/dist/utils/ethereumjs_internal/opcodes.js +79 -0
- package/dist/utils/ethereumjs_internal/opcodes.js.map +1 -0
- package/dist/utils/pp.d.ts.map +1 -1
- package/dist/utils/pp.js +6 -3
- package/dist/utils/pp.js.map +1 -1
- package/dist/utils/test_runner.d.ts.map +1 -1
- package/dist/utils/test_runner.js +1 -2
- package/dist/utils/test_runner.js.map +1 -1
- package/package.json +1 -1
package/dist/debug/abi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/debug/abi.ts"],"names":[],"mappings":"AACA,OAAO,EAKH,kBAAkB,EAGlB,kBAAkB,EAClB,SAAS,EAIT,YAAY,IAAI,eAAe,EAK/B,QAAQ,EACR,QAAQ,EAIR,mBAAmB,EAItB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAkB,MAAM,GAAG,CAAC;AAG/D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,GAAG,QAAQ,CAqCjF;AA6CD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,MAAM,EAAE,kBAAkB,GAAG,mBAAmB,EAChD,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EACzD,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,iBAAiB,GAClC,KAAK,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAsBtB;AAGD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAQtE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,kBAAkB,GAAG,mBAAmB,EAChD,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EACzD,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,iBAAiB,GAClC,KAAK,CAAC,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,CA2CvC;AA6CD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,iBAAiB,GAClC,QAAQ,CAyDV;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAkC5D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,UAAU,GAAG,MAAM,EAC7B,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,SAAS,GACjB,kBAAkB,GAAG,mBAAmB,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/debug/abi.ts"],"names":[],"mappings":"AACA,OAAO,EAKH,kBAAkB,EAGlB,kBAAkB,EAClB,SAAS,EAIT,YAAY,IAAI,eAAe,EAK/B,QAAQ,EACR,QAAQ,EAIR,mBAAmB,EAItB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAkB,MAAM,GAAG,CAAC;AAG/D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,GAAG,QAAQ,CAqCjF;AA6CD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,MAAM,EAAE,kBAAkB,GAAG,mBAAmB,EAChD,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EACzD,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,iBAAiB,GAClC,KAAK,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAsBtB;AAGD,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAQtE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,kBAAkB,GAAG,mBAAmB,EAChD,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAC,QAAQ,EACzD,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,iBAAiB,GAClC,KAAK,CAAC,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,CA2CvC;AA6CD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,EAChB,cAAc,EAAE,iBAAiB,GAClC,QAAQ,CAyDV;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAkC5D;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,UAAU,GAAG,MAAM,EAC7B,QAAQ,EAAE,kBAAkB,EAC5B,KAAK,EAAE,SAAS,GACjB,kBAAkB,GAAG,mBAAmB,GAAG,SAAS,CAkCtD"}
|
package/dist/debug/abi.js
CHANGED
|
@@ -264,8 +264,17 @@ function findMethodBySelector(selector, contract, infer) {
|
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
266
|
for (const v of base.vStateVariables) {
|
|
267
|
-
if (v.visibility
|
|
268
|
-
|
|
267
|
+
if (v.visibility !== solc_typed_ast_1.StateVariableVisibility.Public) {
|
|
268
|
+
continue;
|
|
269
|
+
}
|
|
270
|
+
let hash;
|
|
271
|
+
try {
|
|
272
|
+
hash = infer.signatureHash(v);
|
|
273
|
+
}
|
|
274
|
+
catch (e) {
|
|
275
|
+
continue;
|
|
276
|
+
}
|
|
277
|
+
if (hash == strSelector) {
|
|
269
278
|
return v;
|
|
270
279
|
}
|
|
271
280
|
}
|
package/dist/debug/abi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../../src/debug/abi.ts"],"names":[],"mappings":";;AAiCA,4CAqCC;AAoDD,4CA4BC;AAGD,sDAQC;AAOD,8CAiDC;AA0DD,4CA6DC;AAED,oDAkCC;AAQD,
|
|
1
|
+
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../../src/debug/abi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import { EVM,
|
|
1
|
+
import { EVM, Message } from "@ethereumjs/evm";
|
|
2
2
|
import { Address } from "@ethereumjs/util";
|
|
3
|
-
import EventEmitter from "events";
|
|
4
|
-
type Env = any;
|
|
5
|
-
declare const Interpreter: any;
|
|
6
3
|
type PrecompileFunc = any;
|
|
7
4
|
type RunState = any;
|
|
8
5
|
/**
|
|
@@ -11,7 +8,7 @@ type RunState = any;
|
|
|
11
8
|
* that after we are done working with some VM, we don't unnecessarily invoke
|
|
12
9
|
* its callbacks.
|
|
13
10
|
*/
|
|
14
|
-
export declare const
|
|
11
|
+
export declare const foundryCtxMap: Map<EVM, FoundryContext>;
|
|
15
12
|
export declare const FoundryCheatcodesAddress: Address;
|
|
16
13
|
export declare const WARP_SELECTOR: Uint8Array;
|
|
17
14
|
export declare const ROLL_SELECTOR: Uint8Array;
|
|
@@ -30,6 +27,11 @@ export declare const EXPECT_REVERT_SELECTOR02: Uint8Array;
|
|
|
30
27
|
export declare const EXPECT_REVERT_SELECTOR03: Uint8Array;
|
|
31
28
|
export declare const FAIL_LOC: string;
|
|
32
29
|
export declare const FAIL_MSG_DATA: string;
|
|
30
|
+
interface PrankCallFrame extends Message {
|
|
31
|
+
expectedRevertDesc: RevertMatch | undefined;
|
|
32
|
+
pendingPrank: FoundryPrank | undefined;
|
|
33
|
+
pranks: FoundryPrank[] | undefined;
|
|
34
|
+
}
|
|
33
35
|
export interface FoundryPrank {
|
|
34
36
|
sender: Address;
|
|
35
37
|
origin: Address | undefined;
|
|
@@ -65,7 +67,7 @@ export declare class FoundryContext {
|
|
|
65
67
|
* trace, and pranks are scoped to external calls.
|
|
66
68
|
*/
|
|
67
69
|
private envStack;
|
|
68
|
-
getEnv():
|
|
70
|
+
getEnv(): PrankCallFrame;
|
|
69
71
|
getPendingPrank(): FoundryPrank | undefined;
|
|
70
72
|
setPendingPrank(prank: FoundryPrank | undefined): void;
|
|
71
73
|
/**
|
|
@@ -77,7 +79,7 @@ export declare class FoundryContext {
|
|
|
77
79
|
/**
|
|
78
80
|
* Add a prank to a call frame identified by `eei`.
|
|
79
81
|
*/
|
|
80
|
-
addPrank(
|
|
82
|
+
addPrank(frame: PrankCallFrame, prank: FoundryPrank): void;
|
|
81
83
|
/**
|
|
82
84
|
* Clear all active and pending pranks.
|
|
83
85
|
*/
|
|
@@ -92,15 +94,13 @@ export declare class FoundryContext {
|
|
|
92
94
|
* Callback from the hooks in the interpreter to keep track of the
|
|
93
95
|
* eei stack
|
|
94
96
|
*/
|
|
95
|
-
beforeInterpRunCB(
|
|
97
|
+
beforeInterpRunCB(msg: Message): void;
|
|
96
98
|
/**
|
|
97
99
|
* Callback from the hooks in the interpreter to keep track of the
|
|
98
100
|
* eei stack
|
|
99
101
|
*/
|
|
100
102
|
afterInterpRunCB(): void;
|
|
101
103
|
}
|
|
102
|
-
export declare function getFoundryCtx(evm: EVMInterface): FoundryContext;
|
|
103
|
-
export declare function setFoundryCtx(evm: EVMInterface, ctx: FoundryContext): void;
|
|
104
104
|
export declare function makeFoundryCheatcodePrecompile(): [PrecompileFunc, FoundryContext];
|
|
105
105
|
export {};
|
|
106
106
|
//# sourceMappingURL=foundry_cheatcodes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundry_cheatcodes.d.ts","sourceRoot":"","sources":["../../src/debug/foundry_cheatcodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"foundry_cheatcodes.d.ts","sourceRoot":"","sources":["../../src/debug/foundry_cheatcodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAwB,OAAO,EAAmB,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAEH,OAAO,EAIV,MAAM,kBAAkB,CAAC;AAO1B,KAAK,cAAc,GAAG,GAAG,CAAC;AAE1B,KAAK,QAAQ,GAAG,GAAG,CAAC;AACpB;;;;;GAKG;AACH,eAAO,MAAM,aAAa,0BAAiC,CAAC;AA6B5D,eAAO,MAAM,wBAAwB,SAEpC,CAAC;AAMF,eAAO,MAAM,aAAa,YAA+B,CAAC;AAC1D,eAAO,MAAM,aAAa,YAA+B,CAAC;AAC1D,eAAO,MAAM,aAAa,YAAuC,CAAC;AAClE,eAAO,MAAM,cAAc,YAAgD,CAAC;AAC5E,eAAO,MAAM,aAAa,YAAuC,CAAC;AAClE,eAAO,MAAM,aAAa,YAA+B,CAAC;AAC1D,eAAO,MAAM,aAAa,YAAuC,CAAC;AAClE,eAAO,MAAM,gBAAgB,YAAgC,CAAC;AAC9D,eAAO,MAAM,gBAAgB,YAAwC,CAAC;AACtE,eAAO,MAAM,sBAAsB,YAAqC,CAAC;AACzE,eAAO,MAAM,sBAAsB,YAA6C,CAAC;AACjF,eAAO,MAAM,mBAAmB,YAA6B,CAAC;AAC9D,eAAO,MAAM,wBAAwB,YAAgC,CAAC;AACtE,eAAO,MAAM,wBAAwB,YAAsC,CAAC;AAC5E,eAAO,MAAM,wBAAwB,YAAqC,CAAC;AAE3E,eAAO,MAAM,QAAQ,QAAwD,CAAC;AAE9E,eAAO,MAAM,aAAa,QAOzB,CAAC;AAEF,UAAU,cAAe,SAAQ,OAAO;IACpC,kBAAkB,EAAE,WAAW,GAAG,SAAS,CAAC;IAC5C,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IACvC,MAAM,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,IAAI,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAIpE;;;GAGG;AACH,wBAAgB,wBAAwB,CACpC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,WAAW,GACtB,OAAO,CA0CT;AAED;;GAEG;AACH,qBAAa,cAAc;IAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAa;IACzC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAa;IAC5C,UAAU,UAAS;IAEnB,iBAAiB,IAAI,IAAI;IAIzB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAQtC,iBAAiB,IAAI,WAAW;IAQvC;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAwB;IAGjC,MAAM,IAAI,cAAc;IAKxB,eAAe,IAAI,YAAY,GAAG,SAAS;IAS3C,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAQ7D;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAUjB;;OAEG;IACI,QAAQ,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI;IAOjE;;OAEG;IACI,WAAW,IAAI,IAAI;IAO1B;;;;OAIG;IACI,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,OAAO,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IA6B/E;;;OAGG;IACH,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAcrC;;;OAGG;IACH,gBAAgB,IAAI,IAAI;CAG3B;AAED,wBAAgB,8BAA8B,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAoRjF"}
|
|
@@ -1,45 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FoundryContext = exports.FAIL_MSG_DATA = exports.FAIL_LOC = exports.EXPECT_REVERT_SELECTOR03 = exports.EXPECT_REVERT_SELECTOR02 = exports.EXPECT_REVERT_SELECTOR01 = exports.STOP_PRANK_SELECTOR = exports.START_PRANK_SELECTOR02 = exports.START_PRANK_SELECTOR01 = exports.PRANK_SELECTOR02 = exports.PRANK_SELECTOR01 = exports.DEAL_SELECTOR = exports.ADDR_SELECTOR = exports.SIGN_SELECTOR = exports.STORE_SELECTOR = exports.LOAD_SELECTOR = exports.ROLL_SELECTOR = exports.WARP_SELECTOR = exports.FoundryCheatcodesAddress = exports.
|
|
3
|
+
exports.FoundryContext = exports.FAIL_MSG_DATA = exports.FAIL_LOC = exports.EXPECT_REVERT_SELECTOR03 = exports.EXPECT_REVERT_SELECTOR02 = exports.EXPECT_REVERT_SELECTOR01 = exports.STOP_PRANK_SELECTOR = exports.START_PRANK_SELECTOR02 = exports.START_PRANK_SELECTOR01 = exports.PRANK_SELECTOR02 = exports.PRANK_SELECTOR01 = exports.DEAL_SELECTOR = exports.ADDR_SELECTOR = exports.SIGN_SELECTOR = exports.STORE_SELECTOR = exports.LOAD_SELECTOR = exports.ROLL_SELECTOR = exports.WARP_SELECTOR = exports.FoundryCheatcodesAddress = exports.foundryCtxMap = void 0;
|
|
4
4
|
exports.returnStateMatchesRevert = returnStateMatchesRevert;
|
|
5
|
-
exports.getFoundryCtx = getFoundryCtx;
|
|
6
|
-
exports.setFoundryCtx = setFoundryCtx;
|
|
7
5
|
exports.makeFoundryCheatcodePrecompile = makeFoundryCheatcodePrecompile;
|
|
6
|
+
const evm_1 = require("@ethereumjs/evm");
|
|
8
7
|
const util_1 = require("@ethereumjs/util");
|
|
9
8
|
const keccak_js_1 = require("ethereum-cryptography/keccak.js");
|
|
10
9
|
const utils_1 = require("ethereum-cryptography/utils");
|
|
11
10
|
const utils_2 = require("../utils");
|
|
12
|
-
const
|
|
13
|
-
const EvmErrorResult = EVM_MOD.EvmErrorResult;
|
|
14
|
-
const EXCEPTION_MOD = require("@ethereumjs/evm/dist/cjs/exceptions");
|
|
15
|
-
const ERROR = EXCEPTION_MOD.ERROR;
|
|
16
|
-
const EvmError = EXCEPTION_MOD.EvmError;
|
|
17
|
-
const INTERPRETER_MOD = require("@ethereumjs/evm/dist/cjs/interpreter");
|
|
18
|
-
const Interpreter = INTERPRETER_MOD.Interpreter;
|
|
19
|
-
/*
|
|
20
|
-
* Hotpatch Interpreter.run so we can keep track of the runtime relationships between EEIs.
|
|
21
|
-
* We use this to track when one call context is a child of another, which helps us scope pranks
|
|
22
|
-
*/
|
|
23
|
-
const oldRun = Interpreter.prototype.run;
|
|
11
|
+
const exceptions_1 = require("../utils/ethereumjs_internal/exceptions");
|
|
24
12
|
/**
|
|
25
13
|
* Each test/cases/debug session is associated with a unique VM. And there are
|
|
26
14
|
* multiple interpreter instances per VM. We keep 1 event emitter per VM, so
|
|
27
15
|
* that after we are done working with some VM, we don't unnecessarily invoke
|
|
28
16
|
* its callbacks.
|
|
29
17
|
*/
|
|
30
|
-
exports.
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
if (
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
18
|
+
exports.foundryCtxMap = new Map();
|
|
19
|
+
const oldRunMsgFun = evm_1.EVM.prototype.runInterpreter;
|
|
20
|
+
evm_1.EVM.prototype.runInterpreter = async function hookedRunInterpreter(message, opts) {
|
|
21
|
+
const ctx = exports.foundryCtxMap.get(this);
|
|
22
|
+
if (ctx) {
|
|
23
|
+
ctx.beforeInterpRunCB(message);
|
|
24
|
+
}
|
|
25
|
+
const res = oldRunMsgFun.bind(this)(message, opts);
|
|
26
|
+
const wrappedRes = res.then((res) => {
|
|
27
|
+
if (ctx) {
|
|
28
|
+
ctx.afterInterpRunCB();
|
|
29
|
+
}
|
|
30
|
+
return res;
|
|
41
31
|
});
|
|
42
|
-
return
|
|
32
|
+
return wrappedRes;
|
|
43
33
|
};
|
|
44
34
|
const { secp256k1 } = require("ethereum-cryptography/secp256k1");
|
|
45
35
|
const ethABI = require("web3-eth-abi");
|
|
@@ -161,8 +151,8 @@ class FoundryContext {
|
|
|
161
151
|
* Note that for flexibility we allow more than 1 prank, but in practice
|
|
162
152
|
* foundry restricts this to only 1 prank at a time.
|
|
163
153
|
*/
|
|
164
|
-
getPranks(
|
|
165
|
-
const pranks =
|
|
154
|
+
getPranks(frame) {
|
|
155
|
+
const pranks = frame.pranks;
|
|
166
156
|
if (pranks === undefined) {
|
|
167
157
|
return [];
|
|
168
158
|
}
|
|
@@ -171,10 +161,10 @@ class FoundryContext {
|
|
|
171
161
|
/**
|
|
172
162
|
* Add a prank to a call frame identified by `eei`.
|
|
173
163
|
*/
|
|
174
|
-
addPrank(
|
|
175
|
-
const pranks = this.getPranks(
|
|
164
|
+
addPrank(frame, prank) {
|
|
165
|
+
const pranks = this.getPranks(frame);
|
|
176
166
|
pranks.push(prank);
|
|
177
|
-
|
|
167
|
+
frame.pranks = pranks;
|
|
178
168
|
}
|
|
179
169
|
/**
|
|
180
170
|
* Clear all active and pending pranks.
|
|
@@ -215,16 +205,15 @@ class FoundryContext {
|
|
|
215
205
|
* Callback from the hooks in the interpreter to keep track of the
|
|
216
206
|
* eei stack
|
|
217
207
|
*/
|
|
218
|
-
beforeInterpRunCB(
|
|
219
|
-
const env = interp._env;
|
|
208
|
+
beforeInterpRunCB(msg) {
|
|
220
209
|
const pendingPrank = this.getPendingPrank();
|
|
221
210
|
if (pendingPrank) {
|
|
222
|
-
this.addPrank(
|
|
211
|
+
this.addPrank(msg, pendingPrank);
|
|
223
212
|
if (pendingPrank.once) {
|
|
224
213
|
this.setPendingPrank(undefined);
|
|
225
214
|
}
|
|
226
215
|
}
|
|
227
|
-
this.envStack.push(
|
|
216
|
+
this.envStack.push(msg);
|
|
228
217
|
}
|
|
229
218
|
/**
|
|
230
219
|
* Callback from the hooks in the interpreter to keep track of the
|
|
@@ -235,12 +224,6 @@ class FoundryContext {
|
|
|
235
224
|
}
|
|
236
225
|
}
|
|
237
226
|
exports.FoundryContext = FoundryContext;
|
|
238
|
-
function getFoundryCtx(evm) {
|
|
239
|
-
return evm._foundryCtx;
|
|
240
|
-
}
|
|
241
|
-
function setFoundryCtx(evm, ctx) {
|
|
242
|
-
evm._foundryCtx = ctx;
|
|
243
|
-
}
|
|
244
227
|
function makeFoundryCheatcodePrecompile() {
|
|
245
228
|
const ctx = new FoundryContext();
|
|
246
229
|
const precompile = async function FoundryCheatcodePrecompile(input) {
|
|
@@ -334,7 +317,7 @@ function makeFoundryCheatcodePrecompile() {
|
|
|
334
317
|
if ((0, utils_1.equalsBytes)(selector, exports.PRANK_SELECTOR01)) {
|
|
335
318
|
// Foundry doesn't allow multiple concurrent pranks
|
|
336
319
|
if (ctx.getPendingPrank() !== undefined) {
|
|
337
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
320
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
338
321
|
}
|
|
339
322
|
ctx.setPendingPrank({
|
|
340
323
|
sender: new util_1.Address(input.data.slice(16, 36)),
|
|
@@ -350,7 +333,7 @@ function makeFoundryCheatcodePrecompile() {
|
|
|
350
333
|
if ((0, utils_1.equalsBytes)(selector, exports.PRANK_SELECTOR02)) {
|
|
351
334
|
// Foundry doesn't allow multiple concurrent pranks
|
|
352
335
|
if (ctx.getPendingPrank() !== undefined) {
|
|
353
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
336
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
354
337
|
}
|
|
355
338
|
ctx.setPendingPrank({
|
|
356
339
|
sender: new util_1.Address(input.data.slice(16, 36)),
|
|
@@ -371,7 +354,7 @@ function makeFoundryCheatcodePrecompile() {
|
|
|
371
354
|
if ((0, utils_1.equalsBytes)(selector, exports.START_PRANK_SELECTOR01)) {
|
|
372
355
|
// Foundry doesn't allow multiple concurrent pranks
|
|
373
356
|
if (ctx.getPendingPrank() !== undefined) {
|
|
374
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
357
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
375
358
|
}
|
|
376
359
|
ctx.setPendingPrank({
|
|
377
360
|
sender: new util_1.Address(input.data.slice(16, 36)),
|
|
@@ -387,7 +370,7 @@ function makeFoundryCheatcodePrecompile() {
|
|
|
387
370
|
if ((0, utils_1.equalsBytes)(selector, exports.START_PRANK_SELECTOR02)) {
|
|
388
371
|
// Foundry doesn't allow multiple concurrent pranks
|
|
389
372
|
if (ctx.getPendingPrank() !== undefined) {
|
|
390
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
373
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
391
374
|
}
|
|
392
375
|
ctx.setPendingPrank({
|
|
393
376
|
sender: new util_1.Address(input.data.slice(16, 36)),
|
|
@@ -425,7 +408,7 @@ function makeFoundryCheatcodePrecompile() {
|
|
|
425
408
|
if ((0, utils_1.equalsBytes)(selector, exports.EXPECT_REVERT_SELECTOR02)) {
|
|
426
409
|
//console.error(`vm.expectRevert(bytes4);`);
|
|
427
410
|
if (input.data.length < 8) {
|
|
428
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
411
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
429
412
|
}
|
|
430
413
|
const selector = input.data.slice(4, 8);
|
|
431
414
|
ctx.expectRevert((0, utils_2.bigEndianBufToBigint)(selector));
|
|
@@ -436,11 +419,11 @@ function makeFoundryCheatcodePrecompile() {
|
|
|
436
419
|
}
|
|
437
420
|
if ((0, utils_1.equalsBytes)(selector, exports.EXPECT_REVERT_SELECTOR03)) {
|
|
438
421
|
if (input.data.length < 68) {
|
|
439
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
422
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
440
423
|
}
|
|
441
424
|
const len = Number((0, utils_2.bigEndianBufToBigint)(input.data.slice(36, 68)));
|
|
442
425
|
if (input.data.length < 68 + len) {
|
|
443
|
-
return EvmErrorResult(new EvmError(ERROR.REVERT), 0n);
|
|
426
|
+
return (0, exceptions_1.EvmErrorResult)(new evm_1.EvmError(exceptions_1.ERROR.REVERT), 0n);
|
|
444
427
|
}
|
|
445
428
|
const bytes = input.data.slice(68, 68 + len);
|
|
446
429
|
ctx.expectRevert(bytes);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundry_cheatcodes.js","sourceRoot":"","sources":["../../src/debug/foundry_cheatcodes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"foundry_cheatcodes.js","sourceRoot":"","sources":["../../src/debug/foundry_cheatcodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opcode_interposing.d.ts","sourceRoot":"","sources":["../../src/debug/opcode_interposing.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"opcode_interposing.d.ts","sourceRoot":"","sources":["../../src/debug/opcode_interposing.ts"],"names":[],"mappings":"AAKA,OAAO,EAEH,cAAc,EAGjB,MAAM,sBAAsB,CAAC;AAG9B,KAAK,SAAS,GAAG,GAAG,CAAC;AA2BrB,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,cAAc,GAAG,SAAS,EAAE,CA0P1F"}
|
|
@@ -3,13 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.foundryInterposedOps = foundryInterposedOps;
|
|
4
4
|
const util_1 = require("@ethereumjs/util");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
|
+
const ethereumjs_internal_1 = require("../utils/ethereumjs_internal");
|
|
7
|
+
const exceptions_1 = require("../utils/ethereumjs_internal/exceptions");
|
|
6
8
|
const foundry_cheatcodes_1 = require("./foundry_cheatcodes");
|
|
7
|
-
const EXCEPTION_MOD = require("@ethereumjs/evm/dist/cjs/exceptions");
|
|
8
|
-
const ERROR = EXCEPTION_MOD.ERROR;
|
|
9
|
-
const OPCODES_MOD = require("@ethereumjs/evm/dist/cjs/opcodes");
|
|
10
|
-
const addresstoBytes = OPCODES_MOD.addresstoBytes;
|
|
11
|
-
const trap = OPCODES_MOD.trap;
|
|
12
|
-
const writeCallOutput = OPCODES_MOD.writeCallOutput;
|
|
13
9
|
function interopseOnOp(code, opcodes, handler) {
|
|
14
10
|
const originalOp = opcodes.opcodes.get(code);
|
|
15
11
|
const gasFunction = originalOp.dynamicGas ? opcodes.dynamicGasHandlers.get(code) : undefined;
|
|
@@ -72,7 +68,7 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
72
68
|
if (common.isActivatedEIP(3860) &&
|
|
73
69
|
length > Number(common.param("vm", "maxInitCodeSize")) &&
|
|
74
70
|
!runState.interpreter._evm.allowUnlimitedInitCodeSize) {
|
|
75
|
-
trap(ERROR.INITCODE_SIZE_VIOLATION);
|
|
71
|
+
(0, ethereumjs_internal_1.trap)(exceptions_1.ERROR.INITCODE_SIZE_VIOLATION);
|
|
76
72
|
}
|
|
77
73
|
const gasLimit = runState.messageGasLimit;
|
|
78
74
|
runState.messageGasLimit = undefined;
|
|
@@ -90,13 +86,13 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
90
86
|
async function (runState, common) {
|
|
91
87
|
const expectedRevert = foundryCtx.getExpectedRevert();
|
|
92
88
|
if (runState.interpreter.isStatic()) {
|
|
93
|
-
trap(ERROR.STATIC_STATE_CHANGE);
|
|
89
|
+
(0, ethereumjs_internal_1.trap)(exceptions_1.ERROR.STATIC_STATE_CHANGE);
|
|
94
90
|
}
|
|
95
91
|
const [value, offset, length, salt] = runState.stack.popN(4);
|
|
96
92
|
if (common.isActivatedEIP(3860) &&
|
|
97
93
|
length > Number(common.param("vm", "maxInitCodeSize")) &&
|
|
98
94
|
!runState.interpreter._evm.allowUnlimitedInitCodeSize) {
|
|
99
|
-
trap(ERROR.INITCODE_SIZE_VIOLATION);
|
|
95
|
+
(0, ethereumjs_internal_1.trap)(exceptions_1.ERROR.INITCODE_SIZE_VIOLATION);
|
|
100
96
|
}
|
|
101
97
|
const gasLimit = runState.messageGasLimit;
|
|
102
98
|
runState.messageGasLimit = undefined;
|
|
@@ -113,7 +109,7 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
113
109
|
0xf1,
|
|
114
110
|
async function (runState) {
|
|
115
111
|
const [, toAddr, value, inOffset, inLength, outOffset, outLength] = runState.stack.popN(7);
|
|
116
|
-
const toAddress =
|
|
112
|
+
const toAddress = (0, ethereumjs_internal_1.createAddressFromStackBigInt)(toAddr);
|
|
117
113
|
const expectedRevert = getExpectedRevert(foundryCtx, toAddress);
|
|
118
114
|
let data = new Uint8Array(0);
|
|
119
115
|
if (inLength !== BigInt(0)) {
|
|
@@ -131,7 +127,7 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
131
127
|
function (runState) {
|
|
132
128
|
const expectedRevert = getExpectedRevert(foundryCtx);
|
|
133
129
|
if (expectedRevert === undefined) {
|
|
134
|
-
trap(ERROR.STOP);
|
|
130
|
+
(0, ethereumjs_internal_1.trap)(exceptions_1.ERROR.STOP);
|
|
135
131
|
}
|
|
136
132
|
else {
|
|
137
133
|
runState.interpreter.revert(new Uint8Array(0));
|
|
@@ -143,7 +139,7 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
143
139
|
0xf2,
|
|
144
140
|
async function (runState) {
|
|
145
141
|
const [, toAddr, value, inOffset, inLength, outOffset, outLength] = runState.stack.popN(7);
|
|
146
|
-
const toAddress =
|
|
142
|
+
const toAddress = (0, ethereumjs_internal_1.createAddressFromStackBigInt)(toAddr);
|
|
147
143
|
const expectedRevert = getExpectedRevert(foundryCtx, toAddress);
|
|
148
144
|
const gasLimit = runState.messageGasLimit;
|
|
149
145
|
runState.messageGasLimit = undefined;
|
|
@@ -161,7 +157,7 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
161
157
|
async function (runState) {
|
|
162
158
|
const value = runState.interpreter.getCallValue();
|
|
163
159
|
const [, toAddr, inOffset, inLength, outOffset, outLength] = runState.stack.popN(6);
|
|
164
|
-
const toAddress =
|
|
160
|
+
const toAddress = (0, ethereumjs_internal_1.createAddressFromStackBigInt)(toAddr);
|
|
165
161
|
const expectedRevert = getExpectedRevert(foundryCtx, toAddress);
|
|
166
162
|
let data = new Uint8Array(0);
|
|
167
163
|
if (inLength !== BigInt(0)) {
|
|
@@ -179,7 +175,7 @@ function foundryInterposedOps(opcodes, foundryCtx) {
|
|
|
179
175
|
async function (runState) {
|
|
180
176
|
const value = BigInt(0);
|
|
181
177
|
const [, toAddr, inOffset, inLength, outOffset, outLength] = runState.stack.popN(6);
|
|
182
|
-
const toAddress =
|
|
178
|
+
const toAddress = (0, ethereumjs_internal_1.createAddressFromStackBigInt)(toAddr);
|
|
183
179
|
const expectedRevert = getExpectedRevert(foundryCtx, toAddress);
|
|
184
180
|
const gasLimit = runState.messageGasLimit;
|
|
185
181
|
runState.messageGasLimit = undefined;
|
|
@@ -239,7 +235,7 @@ function handleReturn(runState, ret, outOffset, outLength, expectedRevert) {
|
|
|
239
235
|
runState.returnBytes = new Uint8Array(outLength !== 0n ? Number(outLength) : 32 * 128);
|
|
240
236
|
ret = 1n;
|
|
241
237
|
}
|
|
242
|
-
writeCallOutput(runState, outOffset, outLength);
|
|
238
|
+
(0, ethereumjs_internal_1.writeCallOutput)(runState, outOffset, outLength);
|
|
243
239
|
runState.stack.push(ret);
|
|
244
240
|
}
|
|
245
241
|
function handleCreateReturn(runState, ret, expectedRevert) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opcode_interposing.js","sourceRoot":"","sources":["../../src/debug/opcode_interposing.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"opcode_interposing.js","sourceRoot":"","sources":["../../src/debug/opcode_interposing.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,14 @@ export declare class SolTxDebugger {
|
|
|
41
41
|
private readonly strict;
|
|
42
42
|
private readonly foundryCheatcodes;
|
|
43
43
|
constructor(artifactManager: IArtifactManager, opts?: SolTxDebuggerOpts);
|
|
44
|
+
/**
|
|
45
|
+
* Decode a *CALL* instruction. Computes:
|
|
46
|
+
* 1. The receiver address
|
|
47
|
+
* 2. The code address
|
|
48
|
+
* 3. The msg.data
|
|
49
|
+
* @param step
|
|
50
|
+
*/
|
|
51
|
+
private decodeCall;
|
|
44
52
|
/**
|
|
45
53
|
* Given the VM state of a trace step adjust the stack trace accordingly. This handles the following cases:
|
|
46
54
|
*
|
|
@@ -48,23 +56,9 @@ export declare class SolTxDebugger {
|
|
|
48
56
|
* - op is CALL/CALLCODE/DELEGATECALL/STATICCALL - push a new external frame for the callee context
|
|
49
57
|
* - stack depth decreased and previous instruction was RETURN, REVERT or was in an error state - pop external frames from the stack
|
|
50
58
|
* - internal call - previous op is JUMPDEST and the source map of the current op is the begining of a new function - push a new internal call frame
|
|
51
|
-
* - return from internal call -
|
|
59
|
+
* - return from internal call - pop the last frame
|
|
52
60
|
*/
|
|
53
61
|
private adjustStackFrame;
|
|
54
|
-
/**
|
|
55
|
-
* Get the executing code for the current step. There are 3 cases:
|
|
56
|
-
*
|
|
57
|
-
* 1. We just entered the creation of a new code (last step was
|
|
58
|
-
* CREATE/CREATE2 and depth changed). The code is whatever the memory blob
|
|
59
|
-
* passed to the last op was
|
|
60
|
-
* 2. This is the first step or the `codeAddress` changed between this and the last
|
|
61
|
-
* steps - obtain the code from the `vm.stateManager` using `codeAddress`.
|
|
62
|
-
* 3. Otherwise code is the same in the last step
|
|
63
|
-
* @param vm - current VM
|
|
64
|
-
* @param vmState - current (partial) state in the trace (for which we are computing code)
|
|
65
|
-
* @param trace - trace up to the current state
|
|
66
|
-
*/
|
|
67
|
-
private getCodeAndMdHash;
|
|
68
62
|
processRawTraceStep(vm: VM, stateManager: EVMStateManagerInterface, step: InterpreterStep, trace: StepState[], stack: Frame[]): Promise<StepState>;
|
|
69
63
|
private static getEVM;
|
|
70
64
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sol_debugger.d.ts","sourceRoot":"","sources":["../../src/debug/sol_debugger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAiB,wBAAwB,EAAY,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAO,eAAe,EAAmB,MAAM,iBAAiB,CAAC;AAGxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAA6D,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"sol_debugger.d.ts","sourceRoot":"","sources":["../../src/debug/sol_debugger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAiB,wBAAwB,EAAY,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAO,eAAe,EAAmB,MAAM,iBAAiB,CAAC;AAGxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAA6D,MAAM,gBAAgB,CAAC;AACpG,OAAO,EACH,6BAA6B,EAQhC,MAAM,IAAI,CAAC;AAIZ,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAgB,MAAM,oBAAoB,CAAC;AASlF,OAAO,EAKH,QAAQ,EAGR,aAAa,EACb,KAAK,EAKL,SAAS,EAGZ,MAAM,SAAS,CAAC;AAIjB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,KAAK,GAAG,QAAQ,GAAG,aAAa,CAItE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,KAAK,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,CAI/E;AAiBD,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAQD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,aAAa;IAEtB,SAAgB,eAAe,EAAE,gBAAgB,CAAC;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;gBAEhC,eAAe,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,iBAAiB;IAgBvE;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IA0BlB;;;;;;;;OAQG;YACW,gBAAgB;IA8JxB,mBAAmB,CACrB,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,wBAAwB,EACtC,IAAI,EAAE,eAAe,EACrB,KAAK,EAAE,SAAS,EAAE,EAClB,KAAK,EAAE,KAAK,EAAE,GACf,OAAO,CAAC,SAAS,CAAC;mBAgFA,MAAM;IA8B3B;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI;WAUjB,QAAQ,CACjB,YAAY,EAAE,wBAAwB,GAAG,SAAS,EAClD,iBAAiB,EAAE,OAAO,GAC3B,OAAO,CAAC,EAAE,CAAC;IA0BR,OAAO,CACT,EAAE,EAAE,gBAAgB,EACpB,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,YAAY,EAAE,wBAAwB,GACvC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,WAAW,CAAC,CAAC;IA2DtC;;OAEG;YACW,iBAAiB;IA2B/B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IActB;;OAEG;YACW,aAAa;IAwD3B;;;;;;;;;OASG;IACH,eAAe,CACX,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,aAAa,GACnB,CAAC,6BAA6B,GAAG,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAiBnE;;;;OAIG;IACH,OAAO,CAAC,aAAa;CAoDxB"}
|