Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../build-info/27822028aefba6db9743fbac66c2677f7feca3ad.json"
"buildInfo": "../build-info/5419ac1d4fbe5c1ffdf9d46f68d706f64646388a.json"
}

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../build-info/27822028aefba6db9743fbac66c2677f7feca3ad.json"
"buildInfo": "../build-info/5419ac1d4fbe5c1ffdf9d46f68d706f64646388a.json"
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,5 @@
"deployedLinkReferences": {},
"immutableReferences": {},
"inputSourceName": "project/contracts/interfaces/ICreateX.sol",
"buildInfoId": "27822028aefba6db9743fbac66c2677f7feca3ad"
"buildInfoId": "5419ac1d4fbe5c1ffdf9d46f68d706f64646388a"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../build-info/5419ac1d4fbe5c1ffdf9d46f68d706f64646388a.json"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
{
"_format": "hh3-artifact-1",
"contractName": "DynamicCallEncoder",
"sourceName": "contracts/dynamic-calls/DynamicCallEncoder.sol",
"abi": [
{
"inputs": [],
"name": "BytesLibSliceOutOfBounds",
"type": "error"
},
{
"inputs": [],
"name": "DynamicCallEncoderBadLength",
"type": "error"
},
{
"inputs": [],
"name": "DynamicCallEncoderEmptyDynamic",
"type": "error"
},
{
"inputs": [],
"name": "DynamicCallEncoderInvalidArgKind",
"type": "error"
},
{
"inputs": [],
"name": "DynamicCallEncoderVariableOutOfBounds",
"type": "error"
},
{
"inputs": [],
"name": "DynamicCallEncoderVariableRefBadLength",
"type": "error"
},
{
"inputs": [],
"name": "DynamicCallEncoderVariablesLengthOutOfBounds",
"type": "error"
},
{
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "target",
"type": "address"
},
{
"internalType": "uint256",
"name": "value",
"type": "uint256"
},
{
"internalType": "bytes4",
"name": "selector",
"type": "bytes4"
},
{
"components": [
{
"internalType": "enum DynamicArgKind",
"name": "kind",
"type": "uint8"
},
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
},
{
"internalType": "bool",
"name": "isDynamic",
"type": "bool"
}
],
"internalType": "struct DynamicArg[]",
"name": "arguments",
"type": "tuple[]"
}
],
"internalType": "struct DynamicCall",
"name": "dynamicCall",
"type": "tuple"
},
{
"internalType": "bytes[][]",
"name": "variables",
"type": "bytes[][]"
},
{
"internalType": "uint256",
"name": "variablesLength",
"type": "uint256"
}
],
"name": "encode",
"outputs": [
{
"internalType": "bytes",
"name": "data",
"type": "bytes"
}
],
"stateMutability": "pure",
"type": "function"
}
],
"bytecode": "0x60808060405234601557610a06908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c63f964081d14610024575f80fd5b346101245760603660031901126101245760043567ffffffffffffffff8111610124576080600319823603011261012457610060610100604052565b806004013573ffffffffffffffffffffffffffffffffffffffff8116810361012457608052602481013560a05260448101357fffffffff00000000000000000000000000000000000000000000000000000000811681036101245760c05260648101359067ffffffffffffffff82116101245760046100e292369201016101f9565b60e05260243567ffffffffffffffff81116101245761011461010b6101209236906004016102d7565b604435906103f5565b604051918291826103cb565b0390f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b6060810190811067ffffffffffffffff82111761015857604052565b610128565b90601f8019910116810190811067ffffffffffffffff82111761015857604052565b67ffffffffffffffff81116101585760051b60200190565b67ffffffffffffffff811161015857601f01601f191660200190565b81601f82011215610124578035906101ca82610197565b926101d8604051948561015d565b8284526020838301011161012457815f926020809301838601378301015290565b9080601f83011215610124578135916102118361017f565b9261021f604051948561015d565b80845260208085019160051b830101918383116101245760208101915b83831061024b57505050505090565b823567ffffffffffffffff8111610124578201906060828703601f190112610124576040519161027a8361013c565b6020810135600281101561012457835260408101359067ffffffffffffffff8211610124576102b08860206060948401016101b3565b6020850152013590811515820361012457826020939260408594015281520192019161023c565b81601f82011215610124578035906102ee8261017f565b926102fc604051948561015d565b82845260208085019360051b830101918183116101245760208101935b83851061032857505050505090565b843567ffffffffffffffff811161012457820183603f820112156101245760208101356103548161017f565b91610362604051938461015d565b8183526020808085019360051b83010101918683116101245760408201905b83821061039b575050509082525060209485019401610319565b813567ffffffffffffffff8111610124576020916103c08a84808095890101016101b3565b815201910190610381565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b9190918051831161056f57917fffffffff0000000000000000000000000000000000000000000000000000000060c051169260e0519384519161043783610597565b90610441846105e0565b965f955f925b898785106104f05750505050506060928394915f905b82821061047657505050506104739394506106cc565b90565b909192959461048e610488848b610612565b51151590565b156104d6576104ca6104b76104a5896001946106a4565b976104b08686610612565b5190610672565b976104c28585610612565b51519061064e565b925b019092919261045d565b6104ea6001916104b085859a96999a610612565b956104cc565b8498866105548761048861056295610534839c9e9c6105218b8b8e9f60019d9e9f9061051b91610612565b51610757565b96875161052e8383610612565b52610612565b5061054d60208601936105478551151590565b92610612565b9015159052565b156104c2575060209061064e565b9701929190959395610447565b7f66e32eb4000000000000000000000000000000000000000000000000000000005f5260045ffd5b906105a18261017f565b6105ae604051918261015d565b82815280926105bf601f199161017f565b01905f5b8281106105cf57505050565b8060606020809385010152016105c3565b906105ea8261017f565b6105f7604051918261015d565b8281528092610608601f199161017f565b0190602036910137565b80518210156106265760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b9190820180921161065b57565b61063a565b805191908290602001825e015f815290565b6106a29061069461068e94936040519586936020850190610660565b90610660565b03601f19810184528361015d565b565b60206106a2916106be949360405195869284840190610660565b90815203808552018361015d565b6106947fffffffff00000000000000000000000000000000000000000000000000000000949361068e6106a2946040519788951660208601526024850190610660565b604051906040820182811067ffffffffffffffff821117610158576040525f602083606081520152565b6002111561074357565b634e487b7160e01b5f52602160045260245ffd5b909161076161070f565b50815160028110156107435761077681610739565b15610883576001825161078881610739565b61079181610739565b146107be577f51c907b2000000000000000000000000000000000000000000000000000000005f5260045ffd5b6107c661070f565b506020820160408151510361085b5751926107ed6107e5856020015190565b946040015190565b91841015610833576107ff8482610612565b51518210156108335761082461082d9261081e61047396604094610612565b51610612565b51920151151590565b906108a0565b7f0c412584000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f893ed1c1000000000000000000000000000000000000000000000000000000005f5260045ffd5b50610473915061089161070f565b50604060208201519101511515905b9190916108ab61070f565b9281518015908115610946575b506108ec571561093c57604081511061091457602081810151036108ec5780516108e191610953565b825260016020830152565b7fdd42b1e5000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3202a09c000000000000000000000000000000000000000000000000000000005f5260045ffd5b82525f6020830152565b601f16905015155f6108b8565b9190602081106109a857825181116109a857601f19810190811161065b5761097a81610197565b610987604051918261015d565b818152604061099583610197565b602083019290601f19013684379401905e565b7f326b3d3a000000000000000000000000000000000000000000000000000000005f5260045ffdfea264697066735822122032fe629b918005398497db4d49a65446f6554c13dde6a07068bf9a13aeadaf7864736f6c634300081c0033",
"deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c63f964081d14610024575f80fd5b346101245760603660031901126101245760043567ffffffffffffffff8111610124576080600319823603011261012457610060610100604052565b806004013573ffffffffffffffffffffffffffffffffffffffff8116810361012457608052602481013560a05260448101357fffffffff00000000000000000000000000000000000000000000000000000000811681036101245760c05260648101359067ffffffffffffffff82116101245760046100e292369201016101f9565b60e05260243567ffffffffffffffff81116101245761011461010b6101209236906004016102d7565b604435906103f5565b604051918291826103cb565b0390f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b6060810190811067ffffffffffffffff82111761015857604052565b610128565b90601f8019910116810190811067ffffffffffffffff82111761015857604052565b67ffffffffffffffff81116101585760051b60200190565b67ffffffffffffffff811161015857601f01601f191660200190565b81601f82011215610124578035906101ca82610197565b926101d8604051948561015d565b8284526020838301011161012457815f926020809301838601378301015290565b9080601f83011215610124578135916102118361017f565b9261021f604051948561015d565b80845260208085019160051b830101918383116101245760208101915b83831061024b57505050505090565b823567ffffffffffffffff8111610124578201906060828703601f190112610124576040519161027a8361013c565b6020810135600281101561012457835260408101359067ffffffffffffffff8211610124576102b08860206060948401016101b3565b6020850152013590811515820361012457826020939260408594015281520192019161023c565b81601f82011215610124578035906102ee8261017f565b926102fc604051948561015d565b82845260208085019360051b830101918183116101245760208101935b83851061032857505050505090565b843567ffffffffffffffff811161012457820183603f820112156101245760208101356103548161017f565b91610362604051938461015d565b8183526020808085019360051b83010101918683116101245760408201905b83821061039b575050509082525060209485019401610319565b813567ffffffffffffffff8111610124576020916103c08a84808095890101016101b3565b815201910190610381565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b9190918051831161056f57917fffffffff0000000000000000000000000000000000000000000000000000000060c051169260e0519384519161043783610597565b90610441846105e0565b965f955f925b898785106104f05750505050506060928394915f905b82821061047657505050506104739394506106cc565b90565b909192959461048e610488848b610612565b51151590565b156104d6576104ca6104b76104a5896001946106a4565b976104b08686610612565b5190610672565b976104c28585610612565b51519061064e565b925b019092919261045d565b6104ea6001916104b085859a96999a610612565b956104cc565b8498866105548761048861056295610534839c9e9c6105218b8b8e9f60019d9e9f9061051b91610612565b51610757565b96875161052e8383610612565b52610612565b5061054d60208601936105478551151590565b92610612565b9015159052565b156104c2575060209061064e565b9701929190959395610447565b7f66e32eb4000000000000000000000000000000000000000000000000000000005f5260045ffd5b906105a18261017f565b6105ae604051918261015d565b82815280926105bf601f199161017f565b01905f5b8281106105cf57505050565b8060606020809385010152016105c3565b906105ea8261017f565b6105f7604051918261015d565b8281528092610608601f199161017f565b0190602036910137565b80518210156106265760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b9190820180921161065b57565b61063a565b805191908290602001825e015f815290565b6106a29061069461068e94936040519586936020850190610660565b90610660565b03601f19810184528361015d565b565b60206106a2916106be949360405195869284840190610660565b90815203808552018361015d565b6106947fffffffff00000000000000000000000000000000000000000000000000000000949361068e6106a2946040519788951660208601526024850190610660565b604051906040820182811067ffffffffffffffff821117610158576040525f602083606081520152565b6002111561074357565b634e487b7160e01b5f52602160045260245ffd5b909161076161070f565b50815160028110156107435761077681610739565b15610883576001825161078881610739565b61079181610739565b146107be577f51c907b2000000000000000000000000000000000000000000000000000000005f5260045ffd5b6107c661070f565b506020820160408151510361085b5751926107ed6107e5856020015190565b946040015190565b91841015610833576107ff8482610612565b51518210156108335761082461082d9261081e61047396604094610612565b51610612565b51920151151590565b906108a0565b7f0c412584000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f893ed1c1000000000000000000000000000000000000000000000000000000005f5260045ffd5b50610473915061089161070f565b50604060208201519101511515905b9190916108ab61070f565b9281518015908115610946575b506108ec571561093c57604081511061091457602081810151036108ec5780516108e191610953565b825260016020830152565b7fdd42b1e5000000000000000000000000000000000000000000000000000000005f5260045ffd5b7f3202a09c000000000000000000000000000000000000000000000000000000005f5260045ffd5b82525f6020830152565b601f16905015155f6108b8565b9190602081106109a857825181116109a857601f19810190811161065b5761097a81610197565b610987604051918261015d565b818152604061099583610197565b602083019290601f19013684379401905e565b7f326b3d3a000000000000000000000000000000000000000000000000000000005f5260045ffdfea264697066735822122032fe629b918005398497db4d49a65446f6554c13dde6a07068bf9a13aeadaf7864736f6c634300081c0033",
"linkReferences": {},
"deployedLinkReferences": {},
"immutableReferences": {},
"inputSourceName": "project/contracts/dynamic-calls/DynamicCallEncoder.sol",
"buildInfoId": "5419ac1d4fbe5c1ffdf9d46f68d706f64646388a"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../build-info/5419ac1d4fbe5c1ffdf9d46f68d706f64646388a.json"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"_format": "hh3-artifact-1",
"contractName": "ICreateX",
"sourceName": "contracts/interfaces/ICreateX.sol",
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "newContract",
"type": "address"
}
],
"name": "ContractCreation",
"type": "event"
},
{
"inputs": [
{
"internalType": "bytes32",
"name": "salt",
"type": "bytes32"
},
{
"internalType": "bytes",
"name": "initCode",
"type": "bytes"
}
],
"name": "deployCreate3",
"outputs": [
{
"internalType": "address",
"name": "newContract",
"type": "address"
}
],
"stateMutability": "payable",
"type": "function"
}
],
"bytecode": "0x",
"deployedBytecode": "0x",
"linkReferences": {},
"deployedLinkReferences": {},
"immutableReferences": {},
"inputSourceName": "project/contracts/interfaces/ICreateX.sol",
"buildInfoId": "5419ac1d4fbe5c1ffdf9d46f68d706f64646388a"
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../build-info/b650d0a8e9df290d290e91b2999a1f7443c2b528.json"
"buildInfo": "../build-info/5419ac1d4fbe5c1ffdf9d46f68d706f64646388a.json"
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,5 @@
"deployedLinkReferences": {},
"immutableReferences": {},
"inputSourceName": "project/contracts/interfaces/ICreateX.sol",
"buildInfoId": "b650d0a8e9df290d290e91b2999a1f7443c2b528"
"buildInfoId": "5419ac1d4fbe5c1ffdf9d46f68d706f64646388a"
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../build-info/2ea009b03700817d235b9901c3ebe6048e01a993.json"
"buildInfo": "../build-info/5419ac1d4fbe5c1ffdf9d46f68d706f64646388a.json"
}
Loading
Loading