increased lock gas savings

This commit is contained in:
PedroCailleret authored and hueso committed 2026-06-01 21:51:18 +00:00
1 parent 7fe6415eed
commit 32bd86e7cb
4 files changed
+15 -14

No files matched your search

+1 -1
View File
@@ -1,4 +1,4 @@
{
"_format": "hh-sol-dbg-1",
"buildInfo": "../../build-info/811e76435f5423608b4f8fda7811bf8e.json"
"buildInfo": "../../build-info/eceac9979aa58fac0d83cf0060ae7a91.json"
}
+2 -2
View File
@@ -1127,8 +1127,8 @@
"type": "receive"
}
],
"bytecode": "0x608060405262002d9680380380620000178162000126565b928339810160a0828203126200010b5781516020808401519093916001600160401b03918281116200010b5784620000519185016200017f565b9062000060604085016200016a565b9260608501518181116200010b57866200007c9187016200017f565b9460808101519182116200010b57019480601f870112156200010b578551620000af620000a98262000152565b62000126565b96888089848152019260051b8201019283116200010b578801905b828210620000f157505050620000e19550620001e6565b6040516129549081620004428239f35b815180151581036200010b578152908801908801620000ca565b600080fd5b634e487b7160e01b600052604160045260246000fd5b6040519190601f01601f191682016001600160401b038111838210176200014c57604052565b62000110565b6001600160401b0381116200014c5760051b60200190565b51906001600160a01b03821682036200010b57565b9080601f830112156200010b578151906200019e620000a98362000152565b9182938184526020808095019260051b8201019283116200010b578301905b828210620001cc575050505090565b838091620001da846200016a565b815201910190620001bd565b600080546001600160a01b031916339081178255929695949392817f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768180a3816003556040519182527f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b851160208093a18651878301979060051b810183013d1515895b811562000306575b5050506040519280840191818552518092526040840198925b828110620002e85750505050907f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d782620002d593620002db97980390a16001600160a01b031662000337565b62000390565b620002e66001600455565b565b83516001600160a01b03168a52988101989281019260010162000289565b9085826001829697989451600c1b550190838210156200032c5791509493929462000268565b509493929462000270565b6000546001600160a01b0390811633036200037f57816020917fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9360025560405191168152a1565b6040516282b42960e81b8152600490fd5b60008054919290916001600160a01b031633036200037f5782519182156200043457815183036200042757602092919284818080970195019360051b0101925b838103620003df575050505050565b84809181600c63cbc9d1c48152825186528651918291205581517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a8680a301920191620003d0565b63ff633a3890526004601cfd5b63df95788390526004601cfdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806304937320146102365780630d2a2d441461023157806313af40351461022c5780631e3c017a146102275780631e9bb57314610222578063367821f01461021d57806337c49d9c146102185780633c16f0c414610213578063461f3120146101c857806349ef84481461020e5780634b2ae98014610209578063572b6c0514610204578063574983c8146101ff5780635fd8c710146101fa57806369cc6af4146101f55780636d82d9e0146101f05780637f94f65d146101eb57806380e1d302146101e657806384ab1d28146101e15780638da5cb5b146101dc5780638db564c2146101d7578063918dff57146101d25780639872dbfe146101cd57806398a26871146101c8578063ad8f2eed146101c3578063b0983d39146101be578063c52164c6146101b9578063d1c07028146101b4578063d1ced2b0146101af578063d4fac45d146101aa578063d6e8b973146101a5578063e449c52a146101a0578063f7d0e04b1461019b5763fb8c5ef00361000e576119f1565b611981565b61193a565b611823565b611810565b611761565b611619565b6115d4565b6115a0565b61155c565b610fa8565b61153e565b6114b9565b611478565b611444565b61140e565b6113fb565b6113aa565b6112b9565b611283565b611200565b61119c565b61114c565b611122565b61108b565b610f7e565b610c57565b610bb9565b61080b565b61058b565b6104c7565b61039a565b346102625760206003193601126102625760043560005260076020526020604060002054604051908152f35b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102d757604052565b610267565b6040519060e0820182811067ffffffffffffffff8211176102d757604052565b67ffffffffffffffff81116102d75760051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81160361026257565b81601f8201121561026257803591610349836102fc565b926103576040519485610296565b808452602092838086019260051b820101928311610262578301905b828210610381575050505090565b838091833561038f81610314565b815201910190610373565b34610262576020806003193601126102625760043567ffffffffffffffff8111610262576103cc903690600401610332565b9073ffffffffffffffffffffffffffffffffffffffff918260005416330361049d57805181830192849160051b830181013d1515855b8115610469575b50505060405192818401908285525180915260408401949160005b828110610453577f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d786880387a1005b8351851687529581019592810192600101610424565b90838260018298969499979951600c1b55019083821015610491579150959395949294610402565b50959395949294610409565b60046040517f82b42900000000000000000000000000000000000000000000000000000000008152fd5b34610262576020600319360112610262576004356104e481610314565b600090815473ffffffffffffffffffffffffffffffffffffffff808216330361049d577fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116178255337f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768380a380f35b60031990602082820112610262576004359167ffffffffffffffff83116102Line truncated
"deployedBytecode": "0x6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806304937320146102365780630d2a2d441461023157806313af40351461022c5780631e3c017a146102275780631e9bb57314610222578063367821f01461021d57806337c49d9c146102185780633c16f0c414610213578063461f3120146101c857806349ef84481461020e5780634b2ae98014610209578063572b6c0514610204578063574983c8146101ff5780635fd8c710146101fa57806369cc6af4146101f55780636d82d9e0146101f05780637f94f65d146101eb57806380e1d302146101e657806384ab1d28146101e15780638da5cb5b146101dc5780638db564c2146101d7578063918dff57146101d25780639872dbfe146101cd57806398a26871146101c8578063ad8f2eed146101c3578063b0983d39146101be578063c52164c6146101b9578063d1c07028146101b4578063d1ced2b0146101af578063d4fac45d146101aa578063d6e8b973146101a5578063e449c52a146101a0578063f7d0e04b1461019b5763fb8c5ef00361000e576119f1565b611981565b61193a565b611823565b611810565b611761565b611619565b6115d4565b6115a0565b61155c565b610fa8565b61153e565b6114b9565b611478565b611444565b61140e565b6113fb565b6113aa565b6112b9565b611283565b611200565b61119c565b61114c565b611122565b61108b565b610f7e565b610c57565b610bb9565b61080b565b61058b565b6104c7565b61039a565b346102625760206003193601126102625760043560005260076020526020604060002054604051908152f35b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102d757604052565b610267565b6040519060e0820182811067ffffffffffffffff8211176102d757604052565b67ffffffffffffffff81116102d75760051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81160361026257565b81601f8201121561026257803591610349836102fc565b926103576040519485610296565b808452602092838086019260051b820101928311610262578301905b828210610381575050505090565b838091833561038f81610314565b815201910190610373565b34610262576020806003193601126102625760043567ffffffffffffffff8111610262576103cc903690600401610332565b9073ffffffffffffffffffffffffffffffffffffffff918260005416330361049d57805181830192849160051b830181013d1515855b8115610469575b50505060405192818401908285525180915260408401949160005b828110610453577f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d786880387a1005b8351851687529581019592810192600101610424565b90838260018298969499979951600c1b55019083821015610491579150959395949294610402565b50959395949294610409565b60046040517f82b42900000000000000000000000000000000000000000000000000000000008152fd5b34610262576020600319360112610262576004356104e481610314565b600090815473ffffffffffffffffffffffffffffffffffffffff808216330361049d577fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116178255337f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768380a380f35b60031990602082820112610262576004359167ffffffffffffffff8311610262578260a0920301126102625760040190565b346102625761059936610559565b6105a38180611b39565b9050156107e157604081016105d56105d16105bd83611b8a565b63cbc9d1c4600c526000526020600c205490565b1590565b6107b7576b3fffffffffffffffffffffff61060e6105f283611b8a565b339060205263739094b1600c5260005260016034600c20015490565b169161063b606082019361063561062486611b94565b6bffffffffffffffffffffffff1690565b90611bef565b916a52b7d2dcc80cd2e4000000831161078d5761073561071c61073b926106eb610778957f63d8d7d5e63e9840ec91a12a160d27b7cfab294f6ba070b7359692acfe6b03bf97610689611c06565b60208201358061077d575b506106bd60806106b66106b16106aa8680611b39565b36916118d5565b611b03565b9301611bfc565b906106c785611b8a565b91605f1b1790339060205263739094b1600c526000526034600c2090600182015555565b61070d6106f782611b8a565b6107036106248a611b94565b9030903390611c41565b6107176001600455565b611b8a565b73ffffffffffffffffffffffffffffffffffffffff1690565b93611b94565b6040805173ffffffffffffffffffffffffffffffffffffffff90951685526bffffffffffffffffffffffff90911660208501523393918291820190565b0390a2005b610787903361229b565b38610694565b60046040517ff3fb0eb9000000000000000000000000000000000000000000000000000000008152fd5b60046040517f1578328e000000000000000000000000000000000000000000000000000000008152fd5b60046040517f6a3bc53e000000000000000000000000000000000000000000000000000000008152fd5b346102625761081936610559565b610821611c06565b6108376108316080830183611d33565b906120b8565b61084081611b8a565b9061085b6105d1602083019361085585611b8a565b906126a1565b610b8f5761087a61086b82611b8a565b61087484611b8a565b90612667565b6040918281019061089c61088d83611d87565b69ffffffffffffffffffff1690565b8310610b66576108ad600554611bdc565b9460016108c4876000526006602052604060002090565b0154431115610b3d576109aa906108d9611ec0565b9290946109716108fa6108eb87611b8a565b6108f486611b8a565b906126de565b61091b61071c61091561090f60035443611bef565b95611d87565b96611b8a565b9061092588611b8a565b9361092e6102dc565b9c8d5260208d01528a8c015261095460608c0195869069ffffffffffffffffffff169052565b73ffffffffffffffffffffffffffffffffffffffff1660808b0152565b73ffffffffffffffffffffffffffffffffffffffff861660a08a015273ffffffffffffffffffffffffffffffffffffffff1660c0890152565b60608301916109b98385611dLine truncated
"bytecode": "0x608060405262002d0f80380380620000178162000126565b928339810160a0828203126200010b5781516020808401519093916001600160401b03918281116200010b5784620000519185016200017f565b9062000060604085016200016a565b9260608501518181116200010b57866200007c9187016200017f565b9460808101519182116200010b57019480601f870112156200010b578551620000af620000a98262000152565b62000126565b96888089848152019260051b8201019283116200010b578801905b828210620000f157505050620000e19550620001e6565b6040516128cd9081620004428239f35b815180151581036200010b578152908801908801620000ca565b600080fd5b634e487b7160e01b600052604160045260246000fd5b6040519190601f01601f191682016001600160401b038111838210176200014c57604052565b62000110565b6001600160401b0381116200014c5760051b60200190565b51906001600160a01b03821682036200010b57565b9080601f830112156200010b578151906200019e620000a98362000152565b9182938184526020808095019260051b8201019283116200010b578301905b828210620001cc575050505090565b838091620001da846200016a565b815201910190620001bd565b600080546001600160a01b031916339081178255929695949392817f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768180a3816003556040519182527f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b851160208093a18651878301979060051b810183013d1515895b811562000306575b5050506040519280840191818552518092526040840198925b828110620002e85750505050907f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d782620002d593620002db97980390a16001600160a01b031662000337565b62000390565b620002e66001600455565b565b83516001600160a01b03168a52988101989281019260010162000289565b9085826001829697989451600c1b550190838210156200032c5791509493929462000268565b509493929462000270565b6000546001600160a01b0390811633036200037f57816020917fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9360025560405191168152a1565b6040516282b42960e81b8152600490fd5b60008054919290916001600160a01b031633036200037f5782519182156200043457815183036200042757602092919284818080970195019360051b0101925b838103620003df575050505050565b84809181600c63cbc9d1c48152825186528651918291205581517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a8680a301920191620003d0565b63ff633a3890526004601cfd5b63df95788390526004601cfdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806304937320146102365780630d2a2d441461023157806313af40351461022c5780631e3c017a146102275780631e9bb57314610222578063367821f01461021d57806337c49d9c146102185780633c16f0c414610213578063461f3120146101c857806349ef84481461020e5780634b2ae98014610209578063572b6c0514610204578063574983c8146101ff5780635fd8c710146101fa57806369cc6af4146101f55780636d82d9e0146101f05780637f94f65d146101eb57806380e1d302146101e657806384ab1d28146101e15780638da5cb5b146101dc5780638db564c2146101d7578063918dff57146101d25780639872dbfe146101cd57806398a26871146101c8578063ad8f2eed146101c3578063b0983d39146101be578063c52164c6146101b9578063d1c07028146101b4578063d1ced2b0146101af578063d4fac45d146101aa578063d6e8b973146101a5578063e449c52a146101a0578063f7d0e04b1461019b5763fb8c5ef00361000e576119f5565b611985565b61193e565b611827565b611814565b611765565b61161d565b6115d8565b6115a4565b611560565b610fac565b611542565b6114bd565b61147c565b611448565b611412565b6113ff565b6113ae565b6112bd565b611287565b611204565b6111a0565b611150565b611126565b61108f565b610f82565b610c5b565b610bbd565b61080b565b61058b565b6104c7565b61039a565b346102625760206003193601126102625760043560005260076020526020604060002054604051908152f35b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102d757604052565b610267565b6040519060e0820182811067ffffffffffffffff8211176102d757604052565b67ffffffffffffffff81116102d75760051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81160361026257565b81601f8201121561026257803591610349836102fc565b926103576040519485610296565b808452602092838086019260051b820101928311610262578301905b828210610381575050505090565b838091833561038f81610314565b815201910190610373565b34610262576020806003193601126102625760043567ffffffffffffffff8111610262576103cc903690600401610332565b9073ffffffffffffffffffffffffffffffffffffffff918260005416330361049d57805181830192849160051b830181013d1515855b8115610469575b50505060405192818401908285525180915260408401949160005b828110610453577f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d786880387a1005b8351851687529581019592810192600101610424565b90838260018298969499979951600c1b55019083821015610491579150959395949294610402565b50959395949294610409565b60046040517f82b42900000000000000000000000000000000000000000000000000000000008152fd5b34610262576020600319360112610262576004356104e481610314565b600090815473ffffffffffffffffffffffffffffffffffffffff808216330361049d577fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116178255337f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768380a380f35b60031990602082820112610262576004359167ffffffffffffffff83116102Line truncated
"deployedBytecode": "0x6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806304937320146102365780630d2a2d441461023157806313af40351461022c5780631e3c017a146102275780631e9bb57314610222578063367821f01461021d57806337c49d9c146102185780633c16f0c414610213578063461f3120146101c857806349ef84481461020e5780634b2ae98014610209578063572b6c0514610204578063574983c8146101ff5780635fd8c710146101fa57806369cc6af4146101f55780636d82d9e0146101f05780637f94f65d146101eb57806380e1d302146101e657806384ab1d28146101e15780638da5cb5b146101dc5780638db564c2146101d7578063918dff57146101d25780639872dbfe146101cd57806398a26871146101c8578063ad8f2eed146101c3578063b0983d39146101be578063c52164c6146101b9578063d1c07028146101b4578063d1ced2b0146101af578063d4fac45d146101aa578063d6e8b973146101a5578063e449c52a146101a0578063f7d0e04b1461019b5763fb8c5ef00361000e576119f5565b611985565b61193e565b611827565b611814565b611765565b61161d565b6115d8565b6115a4565b611560565b610fac565b611542565b6114bd565b61147c565b611448565b611412565b6113ff565b6113ae565b6112bd565b611287565b611204565b6111a0565b611150565b611126565b61108f565b610f82565b610c5b565b610bbd565b61080b565b61058b565b6104c7565b61039a565b346102625760206003193601126102625760043560005260076020526020604060002054604051908152f35b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102d757604052565b610267565b6040519060e0820182811067ffffffffffffffff8211176102d757604052565b67ffffffffffffffff81116102d75760051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81160361026257565b81601f8201121561026257803591610349836102fc565b926103576040519485610296565b808452602092838086019260051b820101928311610262578301905b828210610381575050505090565b838091833561038f81610314565b815201910190610373565b34610262576020806003193601126102625760043567ffffffffffffffff8111610262576103cc903690600401610332565b9073ffffffffffffffffffffffffffffffffffffffff918260005416330361049d57805181830192849160051b830181013d1515855b8115610469575b50505060405192818401908285525180915260408401949160005b828110610453577f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d786880387a1005b8351851687529581019592810192600101610424565b90838260018298969499979951600c1b55019083821015610491579150959395949294610402565b50959395949294610409565b60046040517f82b42900000000000000000000000000000000000000000000000000000000008152fd5b34610262576020600319360112610262576004356104e481610314565b600090815473ffffffffffffffffffffffffffffffffffffffff808216330361049d577fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116178255337f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768380a380f35b60031990602082820112610262576004359167ffffffffffffffff8311610262578260a0920301126102625760040190565b346102625761059936610559565b6105a38180611b3d565b9050156107e157604081016105d56105d16105bd83611b8e565b63cbc9d1c4600c526000526020600c205490565b1590565b6107b7576b3fffffffffffffffffffffff61060e6105f283611b8e565b339060205263739094b1600c5260005260016034600c20015490565b169161063b606082019361063561062486611b98565b6bffffffffffffffffffffffff1690565b90611be0565b916a52b7d2dcc80cd2e4000000831161078d5761073561071c61073b926106eb610778957f63d8d7d5e63e9840ec91a12a160d27b7cfab294f6ba070b7359692acfe6b03bf97610689611bfc565b60208201358061077d575b506106bd60806106b66106b16106aa8680611b3d565b36916118d9565b611b07565b9301611bf2565b906106c785611b8e565b91605f1b1790339060205263739094b1600c526000526034600c2090600182015555565b61070d6106f782611b8e565b6107036106248a611b98565b9030903390611c37565b6107176001600455565b611b8e565b73ffffffffffffffffffffffffffffffffffffffff1690565b93611b98565b6040805173ffffffffffffffffffffffffffffffffffffffff90951685526bffffffffffffffffffffffff90911660208501523393918291820190565b0390a2005b6107879033612291565b38610694565b60046040517ff3fb0eb9000000000000000000000000000000000000000000000000000000008152fd5b60046040517f1578328e000000000000000000000000000000000000000000000000000000008152fd5b60046040517f6a3bc53e000000000000000000000000000000000000000000000000000000008152fd5b346102625761081936610559565b610821611bfc565b6108376108316080830183611d29565b906120ae565b61084081611b8e565b9061085b6105d1602083019361085585611b8e565b9061261a565b610b935761087a61086b82611b8e565b61087484611b8e565b906125e0565b916040928383019161089d61088e84611d7d565b69ffffffffffffffffffff1690565b8210610b6a57600554600101936108b385600555565b60016108c9866000526006602052604060002090565b0154431115610b41576108da611eb6565b90926109ad6108fa6108eb85611b8e565b6108f484611b8e565b90612657565b61097461091e61071c61091861091260035443611be0565b9b611d7d565b95611b8e565b61092787611b8e565b926109306102dc565b9a8c8c5260208c01528c8b015261095760608b0195869069ffffffffffffffffffff169052565b73ffffffffffffffffffffffffffffffffffffffff1660808a0152565b73ffffffffffffffffffffffffffffffffffffffff861660a089015273ffffffffffffffffffffffffffffffffffffffff1660c0880152565b60608301916109bc83Line truncated
"linkReferences": {},
"deployedLinkReferences": {}
}
+11 -10
View File
@@ -150,10 +150,12 @@ contract P2PIX is BaseUtils {
uint256 bal = getBalance(args.seller, args.token);
if (bal < args.amount) revert NotEnoughTokens();
uint256 c = lockCounter + 1;
unchecked {
lockID = ++lockCounter;
}
if (
mapLocks[c].expirationBlock >= block.number
mapLocks[lockID].expirationBlock >= block.number
) revert NotExpired();
address sender; uint256 forwarder;
@@ -161,7 +163,7 @@ contract P2PIX is BaseUtils {
bytes32 _pixTarget = getPixTarget(args.seller, args.token);
DT.Lock memory l = DT.Lock(
c,
lockID,
(block.number + defaultLockBlocks),
_pixTarget,
args.amount,
@@ -172,15 +174,16 @@ contract P2PIX is BaseUtils {
if (args.merkleProof.length != 0) {
_merkleVerify(args.merkleProof, sellerAllowList(args.seller), sender);
lockID = _addLock(bal, l);
_addLock(bal, l);
} else {
if (l.amount <= REPUTATION_LOWERBOUND) {
lockID = _addLock(bal, l);
_addLock(bal, l);
} else {
if (forwarder != 0) {
lockID = _addLock(bal, l);
_addLock(bal, l);
} else {
uint256 spendLimit; uint256 userCredit =
userRecord[_castAddrToKey(msg.sender)];
@@ -189,7 +192,7 @@ contract P2PIX is BaseUtils {
l.amount > (spendLimit * WAD) ||
l.amount > LOCKAMOUNT_UPPERBOUND
) revert AmountNotAllowed();
lockID = _addLock(bal, l);
_addLock(bal, l);
/* */}/* */}/* */}
}
@@ -387,12 +390,10 @@ contract P2PIX is BaseUtils {
function _addLock(
uint256 _bal,
DT.Lock memory _l
) internal returns(uint256 counter){
) internal {
mapLocks[_l.counter] = _l;
_decBal(_bal, _l.amount, ERC20(_l.token), _l.seller);
++lockCounter;
counter = _l.counter;
emit LockAdded(
_l.buyerAddress,
@@ -1140,7 +1140,7 @@ const _abi = [
];
const _bytecode =
"0x608060405262002d9680380380620000178162000126565b928339810160a0828203126200010b5781516020808401519093916001600160401b03918281116200010b5784620000519185016200017f565b9062000060604085016200016a565b9260608501518181116200010b57866200007c9187016200017f565b9460808101519182116200010b57019480601f870112156200010b578551620000af620000a98262000152565b62000126565b96888089848152019260051b8201019283116200010b578801905b828210620000f157505050620000e19550620001e6565b6040516129549081620004428239f35b815180151581036200010b578152908801908801620000ca565b600080fd5b634e487b7160e01b600052604160045260246000fd5b6040519190601f01601f191682016001600160401b038111838210176200014c57604052565b62000110565b6001600160401b0381116200014c5760051b60200190565b51906001600160a01b03821682036200010b57565b9080601f830112156200010b578151906200019e620000a98362000152565b9182938184526020808095019260051b8201019283116200010b578301905b828210620001cc575050505090565b838091620001da846200016a565b815201910190620001bd565b600080546001600160a01b031916339081178255929695949392817f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768180a3816003556040519182527f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b851160208093a18651878301979060051b810183013d1515895b811562000306575b5050506040519280840191818552518092526040840198925b828110620002e85750505050907f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d782620002d593620002db97980390a16001600160a01b031662000337565b62000390565b620002e66001600455565b565b83516001600160a01b03168a52988101989281019260010162000289565b9085826001829697989451600c1b550190838210156200032c5791509493929462000268565b509493929462000270565b6000546001600160a01b0390811633036200037f57816020917fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9360025560405191168152a1565b6040516282b42960e81b8152600490fd5b60008054919290916001600160a01b031633036200037f5782519182156200043457815183036200042757602092919284818080970195019360051b0101925b838103620003df575050505050565b84809181600c63cbc9d1c48152825186528651918291205581517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a8680a301920191620003d0565b63ff633a3890526004601cfd5b63df95788390526004601cfdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806304937320146102365780630d2a2d441461023157806313af40351461022c5780631e3c017a146102275780631e9bb57314610222578063367821f01461021d57806337c49d9c146102185780633c16f0c414610213578063461f3120146101c857806349ef84481461020e5780634b2ae98014610209578063572b6c0514610204578063574983c8146101ff5780635fd8c710146101fa57806369cc6af4146101f55780636d82d9e0146101f05780637f94f65d146101eb57806380e1d302146101e657806384ab1d28146101e15780638da5cb5b146101dc5780638db564c2146101d7578063918dff57146101d25780639872dbfe146101cd57806398a26871146101c8578063ad8f2eed146101c3578063b0983d39146101be578063c52164c6146101b9578063d1c07028146101b4578063d1ced2b0146101af578063d4fac45d146101aa578063d6e8b973146101a5578063e449c52a146101a0578063f7d0e04b1461019b5763fb8c5ef00361000e576119f1565b611981565b61193a565b611823565b611810565b611761565b611619565b6115d4565b6115a0565b61155c565b610fa8565b61153e565b6114b9565b611478565b611444565b61140e565b6113fb565b6113aa565b6112b9565b611283565b611200565b61119c565b61114c565b611122565b61108b565b610f7e565b610c57565b610bb9565b61080b565b61058b565b6104c7565b61039a565b346102625760206003193601126102625760043560005260076020526020604060002054604051908152f35b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102d757604052565b610267565b6040519060e0820182811067ffffffffffffffff8211176102d757604052565b67ffffffffffffffff81116102d75760051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81160361026257565b81601f8201121561026257803591610349836102fc565b926103576040519485610296565b808452602092838086019260051b820101928311610262578301905b828210610381575050505090565b838091833561038f81610314565b815201910190610373565b34610262576020806003193601126102625760043567ffffffffffffffff8111610262576103cc903690600401610332565b9073ffffffffffffffffffffffffffffffffffffffff918260005416330361049d57805181830192849160051b830181013d1515855b8115610469575b50505060405192818401908285525180915260408401949160005b828110610453577f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d786880387a1005b8351851687529581019592810192600101610424565b90838260018298969499979951600c1b55019083821015610491579150959395949294610402565b50959395949294610409565b60046040517f82b42900000000000000000000000000000000000000000000000000000000008152fd5b34610262576020600319360112610262576004356104e481610314565b600090815473ffffffffffffffffffffffffffffffffffffffff808216330361049d577fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116178255337f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768380a380f35b60031990602082820112610262576004359167ffffffffffffffff8311610262578260a092Line truncated
"0x608060405262002d0f80380380620000178162000126565b928339810160a0828203126200010b5781516020808401519093916001600160401b03918281116200010b5784620000519185016200017f565b9062000060604085016200016a565b9260608501518181116200010b57866200007c9187016200017f565b9460808101519182116200010b57019480601f870112156200010b578551620000af620000a98262000152565b62000126565b96888089848152019260051b8201019283116200010b578801905b828210620000f157505050620000e19550620001e6565b6040516128cd9081620004428239f35b815180151581036200010b578152908801908801620000ca565b600080fd5b634e487b7160e01b600052604160045260246000fd5b6040519190601f01601f191682016001600160401b038111838210176200014c57604052565b62000110565b6001600160401b0381116200014c5760051b60200190565b51906001600160a01b03821682036200010b57565b9080601f830112156200010b578151906200019e620000a98362000152565b9182938184526020808095019260051b8201019283116200010b578301905b828210620001cc575050505090565b838091620001da846200016a565b815201910190620001bd565b600080546001600160a01b031916339081178255929695949392817f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768180a3816003556040519182527f70fa43ca70216ad905ade86b9e650a691b2ce5a01980d0a81bdd8324141b851160208093a18651878301979060051b810183013d1515895b811562000306575b5050506040519280840191818552518092526040840198925b828110620002e85750505050907f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d782620002d593620002db97980390a16001600160a01b031662000337565b62000390565b620002e66001600455565b565b83516001600160a01b03168a52988101989281019260010162000289565b9085826001829697989451600c1b550190838210156200032c5791509493929462000268565b509493929462000270565b6000546001600160a01b0390811633036200037f57816020917fe127cf589a3879da0156d4a24f43b44f65cfa3570de594806b0bfa2fcf06884f9360025560405191168152a1565b6040516282b42960e81b8152600490fd5b60008054919290916001600160a01b031633036200037f5782519182156200043457815183036200042757602092919284818080970195019360051b0101925b838103620003df575050505050565b84809181600c63cbc9d1c48152825186528651918291205581517f5d6e86e5341d57a92c49934296c51542a25015c9b1782a1c2722a940131c3d9a8680a301920191620003d0565b63ff633a3890526004601cfd5b63df95788390526004601cfdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c806304937320146102365780630d2a2d441461023157806313af40351461022c5780631e3c017a146102275780631e9bb57314610222578063367821f01461021d57806337c49d9c146102185780633c16f0c414610213578063461f3120146101c857806349ef84481461020e5780634b2ae98014610209578063572b6c0514610204578063574983c8146101ff5780635fd8c710146101fa57806369cc6af4146101f55780636d82d9e0146101f05780637f94f65d146101eb57806380e1d302146101e657806384ab1d28146101e15780638da5cb5b146101dc5780638db564c2146101d7578063918dff57146101d25780639872dbfe146101cd57806398a26871146101c8578063ad8f2eed146101c3578063b0983d39146101be578063c52164c6146101b9578063d1c07028146101b4578063d1ced2b0146101af578063d4fac45d146101aa578063d6e8b973146101a5578063e449c52a146101a0578063f7d0e04b1461019b5763fb8c5ef00361000e576119f5565b611985565b61193e565b611827565b611814565b611765565b61161d565b6115d8565b6115a4565b611560565b610fac565b611542565b6114bd565b61147c565b611448565b611412565b6113ff565b6113ae565b6112bd565b611287565b611204565b6111a0565b611150565b611126565b61108f565b610f82565b610c5b565b610bbd565b61080b565b61058b565b6104c7565b61039a565b346102625760206003193601126102625760043560005260076020526020604060002054604051908152f35b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176102d757604052565b610267565b6040519060e0820182811067ffffffffffffffff8211176102d757604052565b67ffffffffffffffff81116102d75760051b60200190565b73ffffffffffffffffffffffffffffffffffffffff81160361026257565b81601f8201121561026257803591610349836102fc565b926103576040519485610296565b808452602092838086019260051b820101928311610262578301905b828210610381575050505090565b838091833561038f81610314565b815201910190610373565b34610262576020806003193601126102625760043567ffffffffffffffff8111610262576103cc903690600401610332565b9073ffffffffffffffffffffffffffffffffffffffff918260005416330361049d57805181830192849160051b830181013d1515855b8115610469575b50505060405192818401908285525180915260408401949160005b828110610453577f14a422d2412784a5749d03da98921fe468c98577b767851389a9f58ea5a363d786880387a1005b8351851687529581019592810192600101610424565b90838260018298969499979951600c1b55019083821015610491579150959395949294610402565b50959395949294610409565b60046040517f82b42900000000000000000000000000000000000000000000000000000000008152fd5b34610262576020600319360112610262576004356104e481610314565b600090815473ffffffffffffffffffffffffffffffffffffffff808216330361049d577fffffffffffffffffffffffff0000000000000000000000000000000000000000921691829116178255337f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d768380a380f35b60031990602082820112610262576004359167ffffffffffffffff8311610262578260a092Line truncated
type P2PIXConstructorParams =
| [signer?: Signer]