From 0c9e9cd566fb63e3ac6f4a1812b3ae51422339e7 Mon Sep 17 00:00:00 2001 From: fselmo Date: Wed, 7 May 2025 11:08:06 -0600 Subject: [PATCH 1/5] Compile test contracts with Solidity ``v0.8.30`` --- .../contract_data/ambiguous_function_contract.py | 6 +++--- .../contract_data/arrays_contract.py | 6 +++--- .../contract_data/bytes_contracts.py | 10 +++++----- .../contract_data/constructor_contracts.py | 14 +++++++------- .../contract_data/contract_caller_tester.py | 6 +++--- .../contract_data/emitter_contract.py | 6 +++--- .../contract_data/event_contracts.py | 14 +++++++------- .../contract_data/extended_resolver.py | 6 +++--- .../contract_data/fallback_function_contract.py | 6 +++--- .../contract_data/function_name_tester_contract.py | 6 +++--- .../contract_data/math_contract.py | 6 +++--- .../contract_data/offchain_lookup.py | 6 +++--- .../contract_data/offchain_resolver.py | 6 +++--- .../contract_data/panic_errors_contract.py | 6 +++--- .../contract_data/payable_tester.py | 6 +++--- .../contract_data/receive_function_contracts.py | 10 +++++----- .../contract_data/reflector_contracts.py | 6 +++--- .../contract_data/revert_contract.py | 6 +++--- .../contract_data/simple_resolver.py | 6 +++--- .../contract_data/storage_contract.py | 6 +++--- .../contract_data/string_contract.py | 6 +++--- .../contract_data/tuple_contracts.py | 10 +++++----- 22 files changed, 80 insertions(+), 80 deletions(-) diff --git a/web3/_utils/contract_sources/contract_data/ambiguous_function_contract.py b/web3/_utils/contract_sources/contract_data/ambiguous_function_contract.py index dd520f2cb5..13707c1033 100644 --- a/web3/_utils/contract_sources/contract_data/ambiguous_function_contract.py +++ b/web3/_utils/contract_sources/contract_data/ambiguous_function_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/AmbiguousFunctionContract.sol:AmbiguousFunctionContract # noqa: E501 -AMBIGUOUS_FUNCTION_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061044a8061001c5f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c80631626ba7e1461004357806320c13b0b14610073578063d482bb47146100a3575b5f5ffd5b61005d60048036038101906100589190610293565b6100c1565b60405161006a9190610305565b60405180910390f35b61008d6004803603810190610088919061031e565b6100cb565b60405161009a9190610305565b60405180910390f35b6100ab6100d6565b6040516100b891906103f4565b60405180910390f35b5f5f905092915050565b5f6001905092915050565b60606040518060400160405280600581526020017f76616c6964000000000000000000000000000000000000000000000000000000815250905090565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b61013681610124565b8114610140575f5ffd5b50565b5f813590506101518161012d565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101a58261015f565b810181811067ffffffffffffffff821117156101c4576101c361016f565b5b80604052505050565b5f6101d6610113565b90506101e2828261019c565b919050565b5f67ffffffffffffffff8211156102015761020061016f565b5b61020a8261015f565b9050602081019050919050565b828183375f83830152505050565b5f610237610232846101e7565b6101cd565b9050828152602081018484840111156102535761025261015b565b5b61025e848285610217565b509392505050565b5f82601f83011261027a57610279610157565b5b813561028a848260208601610225565b91505092915050565b5f5f604083850312156102a9576102a861011c565b5b5f6102b685828601610143565b925050602083013567ffffffffffffffff8111156102d7576102d6610120565b5b6102e385828601610266565b9150509250929050565b5f819050919050565b6102ff816102ed565b82525050565b5f6020820190506103185f8301846102f6565b92915050565b5f5f604083850312156103345761033361011c565b5b5f83013567ffffffffffffffff81111561035157610350610120565b5b61035d85828601610266565b925050602083013567ffffffffffffffff81111561037e5761037d610120565b5b61038a85828601610266565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6103c682610394565b6103d0818561039e565b93506103e08185602086016103ae565b6103e98161015f565b840191505092915050565b5f6020820190508181035f83015261040c81846103bc565b90509291505056fea26469706673582212205f971baedc113543111beb81b888f54c9cdd66e9b89d42b23259054884d7728364736f6c634300081d0033" # noqa: E501 -AMBIGUOUS_FUNCTION_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c80631626ba7e1461004357806320c13b0b14610073578063d482bb47146100a3575b5f5ffd5b61005d60048036038101906100589190610293565b6100c1565b60405161006a9190610305565b60405180910390f35b61008d6004803603810190610088919061031e565b6100cb565b60405161009a9190610305565b60405180910390f35b6100ab6100d6565b6040516100b891906103f4565b60405180910390f35b5f5f905092915050565b5f6001905092915050565b60606040518060400160405280600581526020017f76616c6964000000000000000000000000000000000000000000000000000000815250905090565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b61013681610124565b8114610140575f5ffd5b50565b5f813590506101518161012d565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101a58261015f565b810181811067ffffffffffffffff821117156101c4576101c361016f565b5b80604052505050565b5f6101d6610113565b90506101e2828261019c565b919050565b5f67ffffffffffffffff8211156102015761020061016f565b5b61020a8261015f565b9050602081019050919050565b828183375f83830152505050565b5f610237610232846101e7565b6101cd565b9050828152602081018484840111156102535761025261015b565b5b61025e848285610217565b509392505050565b5f82601f83011261027a57610279610157565b5b813561028a848260208601610225565b91505092915050565b5f5f604083850312156102a9576102a861011c565b5b5f6102b685828601610143565b925050602083013567ffffffffffffffff8111156102d7576102d6610120565b5b6102e385828601610266565b9150509250929050565b5f819050919050565b6102ff816102ed565b82525050565b5f6020820190506103185f8301846102f6565b92915050565b5f5f604083850312156103345761033361011c565b5b5f83013567ffffffffffffffff81111561035157610350610120565b5b61035d85828601610266565b925050602083013567ffffffffffffffff81111561037e5761037d610120565b5b61038a85828601610266565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6103c682610394565b6103d0818561039e565b93506103e08185602086016103ae565b6103e98161015f565b840191505092915050565b5f6020820190508181035f83015261040c81846103bc565b90509291505056fea26469706673582212205f971baedc113543111beb81b888f54c9cdd66e9b89d42b23259054884d7728364736f6c634300081d0033" # noqa: E501 +AMBIGUOUS_FUNCTION_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061044a8061001c5f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c80631626ba7e1461004357806320c13b0b14610073578063d482bb47146100a3575b5f5ffd5b61005d60048036038101906100589190610293565b6100c1565b60405161006a9190610305565b60405180910390f35b61008d6004803603810190610088919061031e565b6100cb565b60405161009a9190610305565b60405180910390f35b6100ab6100d6565b6040516100b891906103f4565b60405180910390f35b5f5f905092915050565b5f6001905092915050565b60606040518060400160405280600581526020017f76616c6964000000000000000000000000000000000000000000000000000000815250905090565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b61013681610124565b8114610140575f5ffd5b50565b5f813590506101518161012d565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101a58261015f565b810181811067ffffffffffffffff821117156101c4576101c361016f565b5b80604052505050565b5f6101d6610113565b90506101e2828261019c565b919050565b5f67ffffffffffffffff8211156102015761020061016f565b5b61020a8261015f565b9050602081019050919050565b828183375f83830152505050565b5f610237610232846101e7565b6101cd565b9050828152602081018484840111156102535761025261015b565b5b61025e848285610217565b509392505050565b5f82601f83011261027a57610279610157565b5b813561028a848260208601610225565b91505092915050565b5f5f604083850312156102a9576102a861011c565b5b5f6102b685828601610143565b925050602083013567ffffffffffffffff8111156102d7576102d6610120565b5b6102e385828601610266565b9150509250929050565b5f819050919050565b6102ff816102ed565b82525050565b5f6020820190506103185f8301846102f6565b92915050565b5f5f604083850312156103345761033361011c565b5b5f83013567ffffffffffffffff81111561035157610350610120565b5b61035d85828601610266565b925050602083013567ffffffffffffffff81111561037e5761037d610120565b5b61038a85828601610266565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6103c682610394565b6103d0818561039e565b93506103e08185602086016103ae565b6103e98161015f565b840191505092915050565b5f6020820190508181035f83015261040c81846103bc565b90509291505056fea26469706673582212207771e80e03817222551c15a244685f02dd958991f78b46e6373f839b286c0be264736f6c634300081e0033" # noqa: E501 +AMBIGUOUS_FUNCTION_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c80631626ba7e1461004357806320c13b0b14610073578063d482bb47146100a3575b5f5ffd5b61005d60048036038101906100589190610293565b6100c1565b60405161006a9190610305565b60405180910390f35b61008d6004803603810190610088919061031e565b6100cb565b60405161009a9190610305565b60405180910390f35b6100ab6100d6565b6040516100b891906103f4565b60405180910390f35b5f5f905092915050565b5f6001905092915050565b60606040518060400160405280600581526020017f76616c6964000000000000000000000000000000000000000000000000000000815250905090565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b61013681610124565b8114610140575f5ffd5b50565b5f813590506101518161012d565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101a58261015f565b810181811067ffffffffffffffff821117156101c4576101c361016f565b5b80604052505050565b5f6101d6610113565b90506101e2828261019c565b919050565b5f67ffffffffffffffff8211156102015761020061016f565b5b61020a8261015f565b9050602081019050919050565b828183375f83830152505050565b5f610237610232846101e7565b6101cd565b9050828152602081018484840111156102535761025261015b565b5b61025e848285610217565b509392505050565b5f82601f83011261027a57610279610157565b5b813561028a848260208601610225565b91505092915050565b5f5f604083850312156102a9576102a861011c565b5b5f6102b685828601610143565b925050602083013567ffffffffffffffff8111156102d7576102d6610120565b5b6102e385828601610266565b9150509250929050565b5f819050919050565b6102ff816102ed565b82525050565b5f6020820190506103185f8301846102f6565b92915050565b5f5f604083850312156103345761033361011c565b5b5f83013567ffffffffffffffff81111561035157610350610120565b5b61035d85828601610266565b925050602083013567ffffffffffffffff81111561037e5761037d610120565b5b61038a85828601610266565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6103c682610394565b6103d0818561039e565b93506103e08185602086016103ae565b6103e98161015f565b840191505092915050565b5f6020820190508181035f83015261040c81846103bc565b90509291505056fea26469706673582212207771e80e03817222551c15a244685f02dd958991f78b46e6373f839b286c0be264736f6c634300081e0033" # noqa: E501 AMBIGUOUS_FUNCTION_CONTRACT_ABI = [ { "inputs": [ diff --git a/web3/_utils/contract_sources/contract_data/arrays_contract.py b/web3/_utils/contract_sources/contract_data/arrays_contract.py index eca07bb207..ae0afba067 100644 --- a/web3/_utils/contract_sources/contract_data/arrays_contract.py +++ b/web3/_utils/contract_sources/contract_data/arrays_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/ArraysContract.sol:ArraysContract -ARRAYS_CONTRACT_BYTECODE = "0x608060405260405180604001604052807f03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b76081526020017f1f675bff07515f5df96737194ea945c36c41e7b4fcef307b7cd4d0e602a691118152506001906002610069929190610199565b5060405180604001604052805f7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020017f01000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681525060039060026101379291906101e4565b50348015610143575f5ffd5b5060405161128238038061128283398181016040528101906101659190610652565b815f908051906020019061017a929190610286565b5080600290805190602001906101919291906102d1565b5050506106c8565b828054828255905f5260205f209081019282156101d3579160200282015b828111156101d25782518255916020019190600101906101b7565b5b5090506101e09190610373565b5090565b828054828255905f5260205f2090601f01602090048101928215610275579160200282015f5b8382111561024757835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f0104928301926001030261020a565b80156102735782816101000a81549060ff02191690556001016020815f01049283019260010302610247565b505b509050610282919061038e565b5090565b828054828255905f5260205f209081019282156102c0579160200282015b828111156102bf5782518255916020019190600101906102a4565b5b5090506102cd9190610373565b5090565b828054828255905f5260205f2090601f01602090048101928215610362579160200282015f5b8382111561033457835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f010492830192600103026102f7565b80156103605782816101000a81549060ff02191690556001016020815f01049283019260010302610334565b505b50905061036f919061038e565b5090565b5b8082111561038a575f815f905550600101610374565b5090565b5b808211156103a5575f815f90555060010161038f565b5090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610404826103be565b810181811067ffffffffffffffff82111715610423576104226103ce565b5b80604052505050565b5f6104356103a9565b905061044182826103fb565b919050565b5f67ffffffffffffffff8211156104605761045f6103ce565b5b602082029050602081019050919050565b5f5ffd5b5f819050919050565b61048781610475565b8114610491575f5ffd5b50565b5f815190506104a28161047e565b92915050565b5f6104ba6104b584610446565b61042c565b905080838252602082019050602084028301858111156104dd576104dc610471565b5b835b8181101561050657806104f28882610494565b8452602084019350506020810190506104df565b5050509392505050565b5f82601f830112610524576105236103ba565b5b81516105348482602086016104a8565b91505092915050565b5f67ffffffffffffffff821115610557576105566103ce565b5b602082029050602081019050919050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61059c81610568565b81146105a6575f5ffd5b50565b5f815190506105b781610593565b92915050565b5f6105cf6105ca8461053d565b61042c565b905080838252602082019050602084028301858111156105f2576105f1610471565b5b835b8181101561061b578061060788826105a9565b8452602084019350506020810190506105f4565b5050509392505050565b5f82601f830112610639576106386103ba565b5b81516106498482602086016105bd565b91505092915050565b5f5f60408385031215610668576106676103b2565b5b5f83015167ffffffffffffffff811115610685576106846103b6565b5b61069185828601610510565b925050602083015167ffffffffffffffff8111156106b2576106b16103b6565b5b6106be85828601610625565b9150509250929050565b610bad806106d55f395ff3fe608060405234801561000f575f5ffd5b506004361061009c575f3560e01c8063542d83de11610064578063542d83de14610158578063605ba271146101885780638abe51fd146101a6578063962e450c146101c4578063bb69679b146101f45761009c565b80630afe5e33146100a057806312c9dcc8146100be5780631579bf66146100ee5780633ddcea2f1461010c57806351b4878814610128575b5f5ffd5b6100a8610210565b6040516100b591906106a4565b60405180910390f35b6100d860048036038101906100d39190610708565b610266565b6040516100e5919061076d565b60405180910390f35b6100f6610297565b604051610103919061083d565b60405180910390f35b610126600480360381019061012191906109d7565b610330565b005b610142600480360381019061013d9190610708565b61034a565b60405161014f9190610a2d565b60405180910390f35b610172600480360381019061016d9190610708565b61036a565b60405161017f9190610a2d565b60405180910390f35b610190610389565b60405161019d91906106a4565b60405180910390f35b6101ae6103de565b6040516101bb919061083d565b60405180910390f35b6101de60048036038101906101d99190610708565b610477565b6040516101eb919061076d565b60405180910390f35b61020e60048036038101906102099190610b30565b6104a8565b005b6060600180548060200260200160405190810160405280929190818152602001828054801561025c57602002820191905f5260205f20905b815481526020019060010190808311610248575b5050505050905090565b60028181548110610275575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b6060600380548060200260200160405190810160405280929190818152602001828054801561032657602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116102d15790505b5050505050905090565b80600290805190602001906103469291906104c1565b5050565b60018181548110610359575f80fd5b905f5260205f20015f915090505481565b5f8181548110610378575f80fd5b905f5260205f20015f915090505481565b60605f8054806020026020016040519081016040528092919081815260200182805480156103d457602002820191905f5260205f20905b8154815260200190600101908083116103c0575b5050505050905090565b6060600280548060200260200160405190810160405280929190818152602001828054801561046d57602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116104185790505b5050505050905090565b60038181548110610486575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b805f90805190602001906104bd929190610563565b5050565b828054828255905f5260205f2090601f01602090048101928215610552579160200282015f5b8382111561052457835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f010492830192600103026104e7565b80156105505782816101000a81549060ff02191690556001016020815f01049283019260010302610524565b505b50905061055f91906105ae565b5090565b828054828255905f5260205f2090810192821561059d579160200282015b8281111561059c578251825591602001919060010190610581565b5b5090506105aa91906105c9565b5090565b5b808211156105c5575f815f9055506001016105af565b5090565b5b808211156105e0575f815f9055506001016105ca565b5090565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f819050919050565b61061f8161060d565b82525050565b5f6106308383610616565b60208301905092915050565b5f602082019050919050565b5f610652826105e4565b61065c81856105ee565b9350610667836105fe565b805f5b8381101561069757815161067e8882610625565b97506106898361063c565b92505060018101905061066a565b5085935050505092915050565b5f6020820190508181035f8301526106bc8184610648565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b6106e7816106d5565b81146106f1575f5ffd5b50565b5f81359050610702816106de565b92915050565b5f6020828403121561071d5761071c6106cd565b5b5f61072a848285016106f4565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61076781610733565b82525050565b5f6020820190506107805f83018461075e565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6107b881610733565b82525050565b5f6107c983836107af565b60208301905092915050565b5f602082019050919050565b5f6107eb82610786565b6107f58185610790565b9350610800836107a0565b805f5b8381101561083057815161081788826107be565b9750610822836107d5565b925050600181019050610803565b5085935050505092915050565b5f6020820190508181035f83015261085581846107e1565b905092915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108a782610861565b810181811067ffffffffffffffff821117156108c6576108c5610871565b5b80604052505050565b5f6108d86106c4565b90506108e4828261089e565b919050565b5f67ffffffffffffffff82111561090357610902610871565b5b602082029050602081019050919050565b5f5ffd5b61092181610733565b811461092b575f5ffd5b50565b5f8135905061093c81610918565b92915050565b5f61095461094f846108e9565b6108cf565b9050808382526020820190506020840283018581111561097757610976610914565b5b835b818110156109a0578061098c888261092e565b845260208401935050602081019050610979565b5050509392505050565b5f82601f8301126109be576109bd61085d565b5b81356109ce848260208601610942565b91505092915050565b5f602082840312156109ec576109eb6106cd565b5b5f82013567ffffffffffffffff811115610a0957610a086106d1565b5b610a15848285016109aa565b91505092915050565b610a278161060d565b82525050565b5f602082019050610a405f830184610a1e565b92915050565b5f67ffffffffffffffff821115610a6057610a5f610871565b5b602082029050602081019050919050565b610a7a8161060d565b8114610a84575f5ffd5b50565b5f81359050610a9581610a71565b92915050565b5f610aad610aa884610a46565b6108cf565b90508083825260208201905060208402830185811115610ad057610acf610914565b5b835b81811015610af95780610ae58882610a87565b845260208401935050602081019050610ad2565b5050509392505050565b5f82601f830112610b1757610b1661085d565b5b8135610b27848260208601610a9b565b91505092915050565b5f60208284031215610b4557610b446106cd565b5b5f82013567ffffffffffffffff811115610b6257610b616106d1565b5b610b6e84828501610b03565b9150509291505056fea26469706673582212208115be2fae3427b854c167bd58669fc96228a2d3486b3a125d25b1e656d4ba8f64736f6c634300081d0033" # noqa: E501 -ARRAYS_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061009c575f3560e01c8063542d83de11610064578063542d83de14610158578063605ba271146101885780638abe51fd146101a6578063962e450c146101c4578063bb69679b146101f45761009c565b80630afe5e33146100a057806312c9dcc8146100be5780631579bf66146100ee5780633ddcea2f1461010c57806351b4878814610128575b5f5ffd5b6100a8610210565b6040516100b591906106a4565b60405180910390f35b6100d860048036038101906100d39190610708565b610266565b6040516100e5919061076d565b60405180910390f35b6100f6610297565b604051610103919061083d565b60405180910390f35b610126600480360381019061012191906109d7565b610330565b005b610142600480360381019061013d9190610708565b61034a565b60405161014f9190610a2d565b60405180910390f35b610172600480360381019061016d9190610708565b61036a565b60405161017f9190610a2d565b60405180910390f35b610190610389565b60405161019d91906106a4565b60405180910390f35b6101ae6103de565b6040516101bb919061083d565b60405180910390f35b6101de60048036038101906101d99190610708565b610477565b6040516101eb919061076d565b60405180910390f35b61020e60048036038101906102099190610b30565b6104a8565b005b6060600180548060200260200160405190810160405280929190818152602001828054801561025c57602002820191905f5260205f20905b815481526020019060010190808311610248575b5050505050905090565b60028181548110610275575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b6060600380548060200260200160405190810160405280929190818152602001828054801561032657602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116102d15790505b5050505050905090565b80600290805190602001906103469291906104c1565b5050565b60018181548110610359575f80fd5b905f5260205f20015f915090505481565b5f8181548110610378575f80fd5b905f5260205f20015f915090505481565b60605f8054806020026020016040519081016040528092919081815260200182805480156103d457602002820191905f5260205f20905b8154815260200190600101908083116103c0575b5050505050905090565b6060600280548060200260200160405190810160405280929190818152602001828054801561046d57602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116104185790505b5050505050905090565b60038181548110610486575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b805f90805190602001906104bd929190610563565b5050565b828054828255905f5260205f2090601f01602090048101928215610552579160200282015f5b8382111561052457835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f010492830192600103026104e7565b80156105505782816101000a81549060ff02191690556001016020815f01049283019260010302610524565b505b50905061055f91906105ae565b5090565b828054828255905f5260205f2090810192821561059d579160200282015b8281111561059c578251825591602001919060010190610581565b5b5090506105aa91906105c9565b5090565b5b808211156105c5575f815f9055506001016105af565b5090565b5b808211156105e0575f815f9055506001016105ca565b5090565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f819050919050565b61061f8161060d565b82525050565b5f6106308383610616565b60208301905092915050565b5f602082019050919050565b5f610652826105e4565b61065c81856105ee565b9350610667836105fe565b805f5b8381101561069757815161067e8882610625565b97506106898361063c565b92505060018101905061066a565b5085935050505092915050565b5f6020820190508181035f8301526106bc8184610648565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b6106e7816106d5565b81146106f1575f5ffd5b50565b5f81359050610702816106de565b92915050565b5f6020828403121561071d5761071c6106cd565b5b5f61072a848285016106f4565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61076781610733565b82525050565b5f6020820190506107805f83018461075e565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6107b881610733565b82525050565b5f6107c983836107af565b60208301905092915050565b5f602082019050919050565b5f6107eb82610786565b6107f58185610790565b9350610800836107a0565b805f5b8381101561083057815161081788826107be565b9750610822836107d5565b925050600181019050610803565b5085935050505092915050565b5f6020820190508181035f83015261085581846107e1565b905092915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108a782610861565b810181811067ffffffffffffffff821117156108c6576108c5610871565b5b80604052505050565b5f6108d86106c4565b90506108e4828261089e565b919050565b5f67ffffffffffffffff82111561090357610902610871565b5b602082029050602081019050919050565b5f5ffd5b61092181610733565b811461092b575f5ffd5b50565b5f8135905061093c81610918565b92915050565b5f61095461094f846108e9565b6108cf565b9050808382526020820190506020840283018581111561097757610976610914565b5b835b818110156109a0578061098c888261092e565b845260208401935050602081019050610979565b5050509392505050565b5f82601f8301126109be576109bd61085d565b5b81356109ce848260208601610942565b91505092915050565b5f602082840312156109ec576109eb6106cd565b5b5f82013567ffffffffffffffff811115610a0957610a086106d1565b5b610a15848285016109aa565b91505092915050565b610a278161060d565b82525050565b5f602082019050610a405f830184610a1e565b92915050565b5f67ffffffffffffffff821115610a6057610a5f610871565b5b602082029050602081019050919050565b610a7a8161060d565b8114610a84575f5ffd5b50565b5f81359050610a9581610a71565b92915050565b5f610aad610aa884610a46565b6108cf565b90508083825260208201905060208402830185811115610ad057610acf610914565b5b835b81811015610af95780610ae58882610a87565b845260208401935050602081019050610ad2565b5050509392505050565b5f82601f830112610b1757610b1661085d565b5b8135610b27848260208601610a9b565b91505092915050565b5f60208284031215610b4557610b446106cd565b5b5f82013567ffffffffffffffff811115610b6257610b616106d1565b5b610b6e84828501610b03565b9150509291505056fea26469706673582212208115be2fae3427b854c167bd58669fc96228a2d3486b3a125d25b1e656d4ba8f64736f6c634300081d0033" # noqa: E501 +ARRAYS_CONTRACT_BYTECODE = "0x608060405260405180604001604052807f03783fac2efed8fbc9ad443e592ee30e61d65f471140c10ca155e937b435b76081526020017f1f675bff07515f5df96737194ea945c36c41e7b4fcef307b7cd4d0e602a691118152506001906002610069929190610199565b5060405180604001604052805f7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681526020017f01000000000000000000000000000000000000000000000000000000000000007effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681525060039060026101379291906101e4565b50348015610143575f5ffd5b5060405161128238038061128283398181016040528101906101659190610652565b815f908051906020019061017a929190610286565b5080600290805190602001906101919291906102d1565b5050506106c8565b828054828255905f5260205f209081019282156101d3579160200282015b828111156101d25782518255916020019190600101906101b7565b5b5090506101e09190610373565b5090565b828054828255905f5260205f2090601f01602090048101928215610275579160200282015f5b8382111561024757835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f0104928301926001030261020a565b80156102735782816101000a81549060ff02191690556001016020815f01049283019260010302610247565b505b509050610282919061038e565b5090565b828054828255905f5260205f209081019282156102c0579160200282015b828111156102bf5782518255916020019190600101906102a4565b5b5090506102cd9190610373565b5090565b828054828255905f5260205f2090601f01602090048101928215610362579160200282015f5b8382111561033457835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f010492830192600103026102f7565b80156103605782816101000a81549060ff02191690556001016020815f01049283019260010302610334565b505b50905061036f919061038e565b5090565b5b8082111561038a575f815f905550600101610374565b5090565b5b808211156103a5575f815f90555060010161038f565b5090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610404826103be565b810181811067ffffffffffffffff82111715610423576104226103ce565b5b80604052505050565b5f6104356103a9565b905061044182826103fb565b919050565b5f67ffffffffffffffff8211156104605761045f6103ce565b5b602082029050602081019050919050565b5f5ffd5b5f819050919050565b61048781610475565b8114610491575f5ffd5b50565b5f815190506104a28161047e565b92915050565b5f6104ba6104b584610446565b61042c565b905080838252602082019050602084028301858111156104dd576104dc610471565b5b835b8181101561050657806104f28882610494565b8452602084019350506020810190506104df565b5050509392505050565b5f82601f830112610524576105236103ba565b5b81516105348482602086016104a8565b91505092915050565b5f67ffffffffffffffff821115610557576105566103ce565b5b602082029050602081019050919050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61059c81610568565b81146105a6575f5ffd5b50565b5f815190506105b781610593565b92915050565b5f6105cf6105ca8461053d565b61042c565b905080838252602082019050602084028301858111156105f2576105f1610471565b5b835b8181101561061b578061060788826105a9565b8452602084019350506020810190506105f4565b5050509392505050565b5f82601f830112610639576106386103ba565b5b81516106498482602086016105bd565b91505092915050565b5f5f60408385031215610668576106676103b2565b5b5f83015167ffffffffffffffff811115610685576106846103b6565b5b61069185828601610510565b925050602083015167ffffffffffffffff8111156106b2576106b16103b6565b5b6106be85828601610625565b9150509250929050565b610bad806106d55f395ff3fe608060405234801561000f575f5ffd5b506004361061009c575f3560e01c8063542d83de11610064578063542d83de14610158578063605ba271146101885780638abe51fd146101a6578063962e450c146101c4578063bb69679b146101f45761009c565b80630afe5e33146100a057806312c9dcc8146100be5780631579bf66146100ee5780633ddcea2f1461010c57806351b4878814610128575b5f5ffd5b6100a8610210565b6040516100b591906106a4565b60405180910390f35b6100d860048036038101906100d39190610708565b610266565b6040516100e5919061076d565b60405180910390f35b6100f6610297565b604051610103919061083d565b60405180910390f35b610126600480360381019061012191906109d7565b610330565b005b610142600480360381019061013d9190610708565b61034a565b60405161014f9190610a2d565b60405180910390f35b610172600480360381019061016d9190610708565b61036a565b60405161017f9190610a2d565b60405180910390f35b610190610389565b60405161019d91906106a4565b60405180910390f35b6101ae6103de565b6040516101bb919061083d565b60405180910390f35b6101de60048036038101906101d99190610708565b610477565b6040516101eb919061076d565b60405180910390f35b61020e60048036038101906102099190610b30565b6104a8565b005b6060600180548060200260200160405190810160405280929190818152602001828054801561025c57602002820191905f5260205f20905b815481526020019060010190808311610248575b5050505050905090565b60028181548110610275575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b6060600380548060200260200160405190810160405280929190818152602001828054801561032657602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116102d15790505b5050505050905090565b80600290805190602001906103469291906104c1565b5050565b60018181548110610359575f80fd5b905f5260205f20015f915090505481565b5f8181548110610378575f80fd5b905f5260205f20015f915090505481565b60605f8054806020026020016040519081016040528092919081815260200182805480156103d457602002820191905f5260205f20905b8154815260200190600101908083116103c0575b5050505050905090565b6060600280548060200260200160405190810160405280929190818152602001828054801561046d57602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116104185790505b5050505050905090565b60038181548110610486575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b805f90805190602001906104bd929190610563565b5050565b828054828255905f5260205f2090601f01602090048101928215610552579160200282015f5b8382111561052457835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f010492830192600103026104e7565b80156105505782816101000a81549060ff02191690556001016020815f01049283019260010302610524565b505b50905061055f91906105ae565b5090565b828054828255905f5260205f2090810192821561059d579160200282015b8281111561059c578251825591602001919060010190610581565b5b5090506105aa91906105c9565b5090565b5b808211156105c5575f815f9055506001016105af565b5090565b5b808211156105e0575f815f9055506001016105ca565b5090565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f819050919050565b61061f8161060d565b82525050565b5f6106308383610616565b60208301905092915050565b5f602082019050919050565b5f610652826105e4565b61065c81856105ee565b9350610667836105fe565b805f5b8381101561069757815161067e8882610625565b97506106898361063c565b92505060018101905061066a565b5085935050505092915050565b5f6020820190508181035f8301526106bc8184610648565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b6106e7816106d5565b81146106f1575f5ffd5b50565b5f81359050610702816106de565b92915050565b5f6020828403121561071d5761071c6106cd565b5b5f61072a848285016106f4565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61076781610733565b82525050565b5f6020820190506107805f83018461075e565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6107b881610733565b82525050565b5f6107c983836107af565b60208301905092915050565b5f602082019050919050565b5f6107eb82610786565b6107f58185610790565b9350610800836107a0565b805f5b8381101561083057815161081788826107be565b9750610822836107d5565b925050600181019050610803565b5085935050505092915050565b5f6020820190508181035f83015261085581846107e1565b905092915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108a782610861565b810181811067ffffffffffffffff821117156108c6576108c5610871565b5b80604052505050565b5f6108d86106c4565b90506108e4828261089e565b919050565b5f67ffffffffffffffff82111561090357610902610871565b5b602082029050602081019050919050565b5f5ffd5b61092181610733565b811461092b575f5ffd5b50565b5f8135905061093c81610918565b92915050565b5f61095461094f846108e9565b6108cf565b9050808382526020820190506020840283018581111561097757610976610914565b5b835b818110156109a0578061098c888261092e565b845260208401935050602081019050610979565b5050509392505050565b5f82601f8301126109be576109bd61085d565b5b81356109ce848260208601610942565b91505092915050565b5f602082840312156109ec576109eb6106cd565b5b5f82013567ffffffffffffffff811115610a0957610a086106d1565b5b610a15848285016109aa565b91505092915050565b610a278161060d565b82525050565b5f602082019050610a405f830184610a1e565b92915050565b5f67ffffffffffffffff821115610a6057610a5f610871565b5b602082029050602081019050919050565b610a7a8161060d565b8114610a84575f5ffd5b50565b5f81359050610a9581610a71565b92915050565b5f610aad610aa884610a46565b6108cf565b90508083825260208201905060208402830185811115610ad057610acf610914565b5b835b81811015610af95780610ae58882610a87565b845260208401935050602081019050610ad2565b5050509392505050565b5f82601f830112610b1757610b1661085d565b5b8135610b27848260208601610a9b565b91505092915050565b5f60208284031215610b4557610b446106cd565b5b5f82013567ffffffffffffffff811115610b6257610b616106d1565b5b610b6e84828501610b03565b9150509291505056fea2646970667358221220431273480cf814ef924a15a89462b6fa62e00497b1ee4630c92f33676f5b227264736f6c634300081e0033" # noqa: E501 +ARRAYS_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061009c575f3560e01c8063542d83de11610064578063542d83de14610158578063605ba271146101885780638abe51fd146101a6578063962e450c146101c4578063bb69679b146101f45761009c565b80630afe5e33146100a057806312c9dcc8146100be5780631579bf66146100ee5780633ddcea2f1461010c57806351b4878814610128575b5f5ffd5b6100a8610210565b6040516100b591906106a4565b60405180910390f35b6100d860048036038101906100d39190610708565b610266565b6040516100e5919061076d565b60405180910390f35b6100f6610297565b604051610103919061083d565b60405180910390f35b610126600480360381019061012191906109d7565b610330565b005b610142600480360381019061013d9190610708565b61034a565b60405161014f9190610a2d565b60405180910390f35b610172600480360381019061016d9190610708565b61036a565b60405161017f9190610a2d565b60405180910390f35b610190610389565b60405161019d91906106a4565b60405180910390f35b6101ae6103de565b6040516101bb919061083d565b60405180910390f35b6101de60048036038101906101d99190610708565b610477565b6040516101eb919061076d565b60405180910390f35b61020e60048036038101906102099190610b30565b6104a8565b005b6060600180548060200260200160405190810160405280929190818152602001828054801561025c57602002820191905f5260205f20905b815481526020019060010190808311610248575b5050505050905090565b60028181548110610275575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b6060600380548060200260200160405190810160405280929190818152602001828054801561032657602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116102d15790505b5050505050905090565b80600290805190602001906103469291906104c1565b5050565b60018181548110610359575f80fd5b905f5260205f20015f915090505481565b5f8181548110610378575f80fd5b905f5260205f20015f915090505481565b60605f8054806020026020016040519081016040528092919081815260200182805480156103d457602002820191905f5260205f20905b8154815260200190600101908083116103c0575b5050505050905090565b6060600280548060200260200160405190810160405280929190818152602001828054801561046d57602002820191905f5260205f20905f905b82829054906101000a900460f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200190600101906020825f010492830192600103820291508084116104185790505b5050505050905090565b60038181548110610486575f80fd5b905f5260205f209060209182820401919006915054906101000a900460f81b81565b805f90805190602001906104bd929190610563565b5050565b828054828255905f5260205f2090601f01602090048101928215610552579160200282015f5b8382111561052457835183826101000a81548160ff021916908360f81c021790555092602001926001016020815f010492830192600103026104e7565b80156105505782816101000a81549060ff02191690556001016020815f01049283019260010302610524565b505b50905061055f91906105ae565b5090565b828054828255905f5260205f2090810192821561059d579160200282015b8281111561059c578251825591602001919060010190610581565b5b5090506105aa91906105c9565b5090565b5b808211156105c5575f815f9055506001016105af565b5090565b5b808211156105e0575f815f9055506001016105ca565b5090565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f819050919050565b61061f8161060d565b82525050565b5f6106308383610616565b60208301905092915050565b5f602082019050919050565b5f610652826105e4565b61065c81856105ee565b9350610667836105fe565b805f5b8381101561069757815161067e8882610625565b97506106898361063c565b92505060018101905061066a565b5085935050505092915050565b5f6020820190508181035f8301526106bc8184610648565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b6106e7816106d5565b81146106f1575f5ffd5b50565b5f81359050610702816106de565b92915050565b5f6020828403121561071d5761071c6106cd565b5b5f61072a848285016106f4565b91505092915050565b5f7fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b61076781610733565b82525050565b5f6020820190506107805f83018461075e565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6107b881610733565b82525050565b5f6107c983836107af565b60208301905092915050565b5f602082019050919050565b5f6107eb82610786565b6107f58185610790565b9350610800836107a0565b805f5b8381101561083057815161081788826107be565b9750610822836107d5565b925050600181019050610803565b5085935050505092915050565b5f6020820190508181035f83015261085581846107e1565b905092915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108a782610861565b810181811067ffffffffffffffff821117156108c6576108c5610871565b5b80604052505050565b5f6108d86106c4565b90506108e4828261089e565b919050565b5f67ffffffffffffffff82111561090357610902610871565b5b602082029050602081019050919050565b5f5ffd5b61092181610733565b811461092b575f5ffd5b50565b5f8135905061093c81610918565b92915050565b5f61095461094f846108e9565b6108cf565b9050808382526020820190506020840283018581111561097757610976610914565b5b835b818110156109a0578061098c888261092e565b845260208401935050602081019050610979565b5050509392505050565b5f82601f8301126109be576109bd61085d565b5b81356109ce848260208601610942565b91505092915050565b5f602082840312156109ec576109eb6106cd565b5b5f82013567ffffffffffffffff811115610a0957610a086106d1565b5b610a15848285016109aa565b91505092915050565b610a278161060d565b82525050565b5f602082019050610a405f830184610a1e565b92915050565b5f67ffffffffffffffff821115610a6057610a5f610871565b5b602082029050602081019050919050565b610a7a8161060d565b8114610a84575f5ffd5b50565b5f81359050610a9581610a71565b92915050565b5f610aad610aa884610a46565b6108cf565b90508083825260208201905060208402830185811115610ad057610acf610914565b5b835b81811015610af95780610ae58882610a87565b845260208401935050602081019050610ad2565b5050509392505050565b5f82601f830112610b1757610b1661085d565b5b8135610b27848260208601610a9b565b91505092915050565b5f60208284031215610b4557610b446106cd565b5b5f82013567ffffffffffffffff811115610b6257610b616106d1565b5b610b6e84828501610b03565b9150509291505056fea2646970667358221220431273480cf814ef924a15a89462b6fa62e00497b1ee4630c92f33676f5b227264736f6c634300081e0033" # noqa: E501 ARRAYS_CONTRACT_ABI = [ { "inputs": [ diff --git a/web3/_utils/contract_sources/contract_data/bytes_contracts.py b/web3/_utils/contract_sources/contract_data/bytes_contracts.py index 2ce3b37998..9b0bc03972 100644 --- a/web3/_utils/contract_sources/contract_data/bytes_contracts.py +++ b/web3/_utils/contract_sources/contract_data/bytes_contracts.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/BytesContracts.sol:BytesContract -BYTES_CONTRACT_BYTECODE = "0x60806040526040518060400160405280600281526020017f01230000000000000000000000000000000000000000000000000000000000008152505f908161004791906102c8565b50348015610053575f5ffd5b50604051610cd0380380610cd0833981810160405281019061007591906104b7565b80600190816100849190610508565b50506105d7565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061010657607f821691505b602082108103610119576101186100c2565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261017b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610140565b6101858683610140565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6101c96101c46101bf8461019d565b6101a6565b61019d565b9050919050565b5f819050919050565b6101e2836101af565b6101f66101ee826101d0565b84845461014c565b825550505050565b5f5f905090565b61020d6101fe565b6102188184846101d9565b505050565b5b8181101561023b576102305f82610205565b60018101905061021e565b5050565b601f821115610280576102518161011f565b61025a84610131565b81016020851015610269578190505b61027d61027585610131565b83018261021d565b50505b505050565b5f82821c905092915050565b5f6102a05f1984600802610285565b1980831691505092915050565b5f6102b88383610291565b9150826002028217905092915050565b6102d18261008b565b67ffffffffffffffff8111156102ea576102e9610095565b5b6102f482546100ef565b6102ff82828561023f565b5f60209050601f831160018114610330575f841561031e578287015190505b61032885826102ad565b86555061038f565b601f19841661033e8661011f565b5f5b8281101561036557848901518255600182019150602085019450602081019050610340565b86831015610382578489015161037e601f891682610291565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b6103c9826103b0565b810181811067ffffffffffffffff821117156103e8576103e7610095565b5b80604052505050565b5f6103fa610397565b905061040682826103c0565b919050565b5f67ffffffffffffffff82111561042557610424610095565b5b61042e826103b0565b9050602081019050919050565b8281835e5f83830152505050565b5f61045b6104568461040b565b6103f1565b905082815260208101848484011115610477576104766103ac565b5b61048284828561043b565b509392505050565b5f82601f83011261049e5761049d6103a8565b5b81516104ae848260208601610449565b91505092915050565b5f602082840312156104cc576104cb6103a0565b5b5f82015167ffffffffffffffff8111156104e9576104e86103a4565b5b6104f58482850161048a565b91505092915050565b5f81519050919050565b610511826104fe565b67ffffffffffffffff81111561052a57610529610095565b5b61053482546100ef565b61053f82828561023f565b5f60209050601f831160018114610570575f841561055e578287015190505b61056885826102ad565b8655506105cf565b601f19841661057e8661011f565b5f5b828110156105a557848901518255600182019150602085019450602081019050610580565b868310156105c257848901516105be601f891682610291565b8355505b6001600288020188555050505b505050505050565b6106ec806105e45f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee14610061578063439970aa1461007f575b5f5ffd5b61004b61009b565b604051610058919061023d565b60405180910390f35b61006961012b565b604051610076919061023d565b60405180910390f35b6100996004803603810190610094919061039a565b6101ba565b005b6060600180546100aa9061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546100d69061040e565b80156101215780601f106100f857610100808354040283529160200191610121565b820191905f5260205f20905b81548152906001019060200180831161010457829003601f168201915b5050505050905090565b60605f80546101399061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546101659061040e565b80156101b05780601f10610187576101008083540402835291602001916101b0565b820191905f5260205f20905b81548152906001019060200180831161019357829003601f168201915b5050505050905090565b80600190816101c991906105e7565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61020f826101cd565b61021981856101d7565b93506102298185602086016101e7565b610232816101f5565b840191505092915050565b5f6020820190508181035f8301526102558184610205565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102ac826101f5565b810181811067ffffffffffffffff821117156102cb576102ca610276565b5b80604052505050565b5f6102dd61025d565b90506102e982826102a3565b919050565b5f67ffffffffffffffff82111561030857610307610276565b5b610311826101f5565b9050602081019050919050565b828183375f83830152505050565b5f61033e610339846102ee565b6102d4565b90508281526020810184848401111561035a57610359610272565b5b61036584828561031e565b509392505050565b5f82601f8301126103815761038061026e565b5b813561039184826020860161032c565b91505092915050565b5f602082840312156103af576103ae610266565b5b5f82013567ffffffffffffffff8111156103cc576103cb61026a565b5b6103d88482850161036d565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061042557607f821691505b602082108103610438576104376103e1565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261049a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261045f565b6104a4868361045f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6104e86104e36104de846104bc565b6104c5565b6104bc565b9050919050565b5f819050919050565b610501836104ce565b61051561050d826104ef565b84845461046b565b825550505050565b5f5f905090565b61052c61051d565b6105378184846104f8565b505050565b5b8181101561055a5761054f5f82610524565b60018101905061053d565b5050565b601f82111561059f576105708161043e565b61057984610450565b81016020851015610588578190505b61059c61059485610450565b83018261053c565b50505b505050565b5f82821c905092915050565b5f6105bf5f19846008026105a4565b1980831691505092915050565b5f6105d783836105b0565b9150826002028217905092915050565b6105f0826101cd565b67ffffffffffffffff81111561060957610608610276565b5b610613825461040e565b61061e82828561055e565b5f60209050601f83116001811461064f575f841561063d578287015190505b61064785826105cc565b8655506106ae565b601f19841661065d8661043e565b5f5b828110156106845784890151825560018201915060208501945060208101905061065f565b868310156106a1578489015161069d601f8916826105b0565b8355505b6001600288020188555050505b50505050505056fea2646970667358221220bf2ad6a1e508b8e8b8792317aaa0b50d754d6be6726a6552c873944f7ce66fe964736f6c634300081d0033" # noqa: E501 -BYTES_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee14610061578063439970aa1461007f575b5f5ffd5b61004b61009b565b604051610058919061023d565b60405180910390f35b61006961012b565b604051610076919061023d565b60405180910390f35b6100996004803603810190610094919061039a565b6101ba565b005b6060600180546100aa9061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546100d69061040e565b80156101215780601f106100f857610100808354040283529160200191610121565b820191905f5260205f20905b81548152906001019060200180831161010457829003601f168201915b5050505050905090565b60605f80546101399061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546101659061040e565b80156101b05780601f10610187576101008083540402835291602001916101b0565b820191905f5260205f20905b81548152906001019060200180831161019357829003601f168201915b5050505050905090565b80600190816101c991906105e7565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61020f826101cd565b61021981856101d7565b93506102298185602086016101e7565b610232816101f5565b840191505092915050565b5f6020820190508181035f8301526102558184610205565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102ac826101f5565b810181811067ffffffffffffffff821117156102cb576102ca610276565b5b80604052505050565b5f6102dd61025d565b90506102e982826102a3565b919050565b5f67ffffffffffffffff82111561030857610307610276565b5b610311826101f5565b9050602081019050919050565b828183375f83830152505050565b5f61033e610339846102ee565b6102d4565b90508281526020810184848401111561035a57610359610272565b5b61036584828561031e565b509392505050565b5f82601f8301126103815761038061026e565b5b813561039184826020860161032c565b91505092915050565b5f602082840312156103af576103ae610266565b5b5f82013567ffffffffffffffff8111156103cc576103cb61026a565b5b6103d88482850161036d565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061042557607f821691505b602082108103610438576104376103e1565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261049a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261045f565b6104a4868361045f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6104e86104e36104de846104bc565b6104c5565b6104bc565b9050919050565b5f819050919050565b610501836104ce565b61051561050d826104ef565b84845461046b565b825550505050565b5f5f905090565b61052c61051d565b6105378184846104f8565b505050565b5b8181101561055a5761054f5f82610524565b60018101905061053d565b5050565b601f82111561059f576105708161043e565b61057984610450565b81016020851015610588578190505b61059c61059485610450565b83018261053c565b50505b505050565b5f82821c905092915050565b5f6105bf5f19846008026105a4565b1980831691505092915050565b5f6105d783836105b0565b9150826002028217905092915050565b6105f0826101cd565b67ffffffffffffffff81111561060957610608610276565b5b610613825461040e565b61061e82828561055e565b5f60209050601f83116001811461064f575f841561063d578287015190505b61064785826105cc565b8655506106ae565b601f19841661065d8661043e565b5f5b828110156106845784890151825560018201915060208501945060208101905061065f565b868310156106a1578489015161069d601f8916826105b0565b8355505b6001600288020188555050505b50505050505056fea2646970667358221220bf2ad6a1e508b8e8b8792317aaa0b50d754d6be6726a6552c873944f7ce66fe964736f6c634300081d0033" # noqa: E501 +BYTES_CONTRACT_BYTECODE = "0x60806040526040518060400160405280600281526020017f01230000000000000000000000000000000000000000000000000000000000008152505f908161004791906102c8565b50348015610053575f5ffd5b50604051610cd0380380610cd0833981810160405281019061007591906104b7565b80600190816100849190610508565b50506105d7565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061010657607f821691505b602082108103610119576101186100c2565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261017b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610140565b6101858683610140565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6101c96101c46101bf8461019d565b6101a6565b61019d565b9050919050565b5f819050919050565b6101e2836101af565b6101f66101ee826101d0565b84845461014c565b825550505050565b5f5f905090565b61020d6101fe565b6102188184846101d9565b505050565b5b8181101561023b576102305f82610205565b60018101905061021e565b5050565b601f821115610280576102518161011f565b61025a84610131565b81016020851015610269578190505b61027d61027585610131565b83018261021d565b50505b505050565b5f82821c905092915050565b5f6102a05f1984600802610285565b1980831691505092915050565b5f6102b88383610291565b9150826002028217905092915050565b6102d18261008b565b67ffffffffffffffff8111156102ea576102e9610095565b5b6102f482546100ef565b6102ff82828561023f565b5f60209050601f831160018114610330575f841561031e578287015190505b61032885826102ad565b86555061038f565b601f19841661033e8661011f565b5f5b8281101561036557848901518255600182019150602085019450602081019050610340565b86831015610382578489015161037e601f891682610291565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b6103c9826103b0565b810181811067ffffffffffffffff821117156103e8576103e7610095565b5b80604052505050565b5f6103fa610397565b905061040682826103c0565b919050565b5f67ffffffffffffffff82111561042557610424610095565b5b61042e826103b0565b9050602081019050919050565b8281835e5f83830152505050565b5f61045b6104568461040b565b6103f1565b905082815260208101848484011115610477576104766103ac565b5b61048284828561043b565b509392505050565b5f82601f83011261049e5761049d6103a8565b5b81516104ae848260208601610449565b91505092915050565b5f602082840312156104cc576104cb6103a0565b5b5f82015167ffffffffffffffff8111156104e9576104e86103a4565b5b6104f58482850161048a565b91505092915050565b5f81519050919050565b610511826104fe565b67ffffffffffffffff81111561052a57610529610095565b5b61053482546100ef565b61053f82828561023f565b5f60209050601f831160018114610570575f841561055e578287015190505b61056885826102ad565b8655506105cf565b601f19841661057e8661011f565b5f5b828110156105a557848901518255600182019150602085019450602081019050610580565b868310156105c257848901516105be601f891682610291565b8355505b6001600288020188555050505b505050505050565b6106ec806105e45f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee14610061578063439970aa1461007f575b5f5ffd5b61004b61009b565b604051610058919061023d565b60405180910390f35b61006961012b565b604051610076919061023d565b60405180910390f35b6100996004803603810190610094919061039a565b6101ba565b005b6060600180546100aa9061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546100d69061040e565b80156101215780601f106100f857610100808354040283529160200191610121565b820191905f5260205f20905b81548152906001019060200180831161010457829003601f168201915b5050505050905090565b60605f80546101399061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546101659061040e565b80156101b05780601f10610187576101008083540402835291602001916101b0565b820191905f5260205f20905b81548152906001019060200180831161019357829003601f168201915b5050505050905090565b80600190816101c991906105e7565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61020f826101cd565b61021981856101d7565b93506102298185602086016101e7565b610232816101f5565b840191505092915050565b5f6020820190508181035f8301526102558184610205565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102ac826101f5565b810181811067ffffffffffffffff821117156102cb576102ca610276565b5b80604052505050565b5f6102dd61025d565b90506102e982826102a3565b919050565b5f67ffffffffffffffff82111561030857610307610276565b5b610311826101f5565b9050602081019050919050565b828183375f83830152505050565b5f61033e610339846102ee565b6102d4565b90508281526020810184848401111561035a57610359610272565b5b61036584828561031e565b509392505050565b5f82601f8301126103815761038061026e565b5b813561039184826020860161032c565b91505092915050565b5f602082840312156103af576103ae610266565b5b5f82013567ffffffffffffffff8111156103cc576103cb61026a565b5b6103d88482850161036d565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061042557607f821691505b602082108103610438576104376103e1565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261049a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261045f565b6104a4868361045f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6104e86104e36104de846104bc565b6104c5565b6104bc565b9050919050565b5f819050919050565b610501836104ce565b61051561050d826104ef565b84845461046b565b825550505050565b5f5f905090565b61052c61051d565b6105378184846104f8565b505050565b5b8181101561055a5761054f5f82610524565b60018101905061053d565b5050565b601f82111561059f576105708161043e565b61057984610450565b81016020851015610588578190505b61059c61059485610450565b83018261053c565b50505b505050565b5f82821c905092915050565b5f6105bf5f19846008026105a4565b1980831691505092915050565b5f6105d783836105b0565b9150826002028217905092915050565b6105f0826101cd565b67ffffffffffffffff81111561060957610608610276565b5b610613825461040e565b61061e82828561055e565b5f60209050601f83116001811461064f575f841561063d578287015190505b61064785826105cc565b8655506106ae565b601f19841661065d8661043e565b5f5b828110156106845784890151825560018201915060208501945060208101905061065f565b868310156106a1578489015161069d601f8916826105b0565b8355505b6001600288020188555050505b50505050505056fea264697066735822122016f03ea646f744b37e74f32f6ca48b4a1b46030eb5d31dd562f4b2e8caf3e05a64736f6c634300081e0033" # noqa: E501 +BYTES_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee14610061578063439970aa1461007f575b5f5ffd5b61004b61009b565b604051610058919061023d565b60405180910390f35b61006961012b565b604051610076919061023d565b60405180910390f35b6100996004803603810190610094919061039a565b6101ba565b005b6060600180546100aa9061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546100d69061040e565b80156101215780601f106100f857610100808354040283529160200191610121565b820191905f5260205f20905b81548152906001019060200180831161010457829003601f168201915b5050505050905090565b60605f80546101399061040e565b80601f01602080910402602001604051908101604052809291908181526020018280546101659061040e565b80156101b05780601f10610187576101008083540402835291602001916101b0565b820191905f5260205f20905b81548152906001019060200180831161019357829003601f168201915b5050505050905090565b80600190816101c991906105e7565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61020f826101cd565b61021981856101d7565b93506102298185602086016101e7565b610232816101f5565b840191505092915050565b5f6020820190508181035f8301526102558184610205565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102ac826101f5565b810181811067ffffffffffffffff821117156102cb576102ca610276565b5b80604052505050565b5f6102dd61025d565b90506102e982826102a3565b919050565b5f67ffffffffffffffff82111561030857610307610276565b5b610311826101f5565b9050602081019050919050565b828183375f83830152505050565b5f61033e610339846102ee565b6102d4565b90508281526020810184848401111561035a57610359610272565b5b61036584828561031e565b509392505050565b5f82601f8301126103815761038061026e565b5b813561039184826020860161032c565b91505092915050565b5f602082840312156103af576103ae610266565b5b5f82013567ffffffffffffffff8111156103cc576103cb61026a565b5b6103d88482850161036d565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061042557607f821691505b602082108103610438576104376103e1565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261049a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261045f565b6104a4868361045f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6104e86104e36104de846104bc565b6104c5565b6104bc565b9050919050565b5f819050919050565b610501836104ce565b61051561050d826104ef565b84845461046b565b825550505050565b5f5f905090565b61052c61051d565b6105378184846104f8565b505050565b5b8181101561055a5761054f5f82610524565b60018101905061053d565b5050565b601f82111561059f576105708161043e565b61057984610450565b81016020851015610588578190505b61059c61059485610450565b83018261053c565b50505b505050565b5f82821c905092915050565b5f6105bf5f19846008026105a4565b1980831691505092915050565b5f6105d783836105b0565b9150826002028217905092915050565b6105f0826101cd565b67ffffffffffffffff81111561060957610608610276565b5b610613825461040e565b61061e82828561055e565b5f60209050601f83116001811461064f575f841561063d578287015190505b61064785826105cc565b8655506106ae565b601f19841661065d8661043e565b5f5b828110156106845784890151825560018201915060208501945060208101905061065f565b868310156106a1578489015161069d601f8916826105b0565b8355505b6001600288020188555050505b50505050505056fea264697066735822122016f03ea646f744b37e74f32f6ca48b4a1b46030eb5d31dd562f4b2e8caf3e05a64736f6c634300081e0033" # noqa: E501 BYTES_CONTRACT_ABI = [ { "inputs": [{"internalType": "bytes", "name": "_value", "type": "bytes"}], @@ -42,8 +42,8 @@ # source: web3/_utils/contract_sources/BytesContracts.sol:Bytes32Contract -BYTES32_CONTRACT_BYTECODE = "0x60806040527f01230123012301230123012301230123012301230123012301230123012301235f553480156031575f5ffd5b50604051610238380380610238833981810160405281019060519190608f565b806001819055505060b5565b5f5ffd5b5f819050919050565b6071816061565b8114607a575f5ffd5b50565b5f81519050608981606a565b92915050565b5f6020828403121560a15760a0605d565b5b5f60ac84828501607d565b91505092915050565b610176806100c25f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee1461006157806358825b101461007f575b5f5ffd5b61004b61009b565b60405161005891906100ce565b60405180910390f35b6100696100a4565b60405161007691906100ce565b60405180910390f35b61009960048036038101906100949190610115565b6100ac565b005b5f600154905090565b5f5f54905090565b8060018190555050565b5f819050919050565b6100c8816100b6565b82525050565b5f6020820190506100e15f8301846100bf565b92915050565b5f5ffd5b6100f4816100b6565b81146100fe575f5ffd5b50565b5f8135905061010f816100eb565b92915050565b5f6020828403121561012a576101296100e7565b5b5f61013784828501610101565b9150509291505056fea2646970667358221220f42ae6c3bcfac55997d1127aed4187aaecd3fe284be04d5e2067df2c5124834b64736f6c634300081d0033" # noqa: E501 -BYTES32_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee1461006157806358825b101461007f575b5f5ffd5b61004b61009b565b60405161005891906100ce565b60405180910390f35b6100696100a4565b60405161007691906100ce565b60405180910390f35b61009960048036038101906100949190610115565b6100ac565b005b5f600154905090565b5f5f54905090565b8060018190555050565b5f819050919050565b6100c8816100b6565b82525050565b5f6020820190506100e15f8301846100bf565b92915050565b5f5ffd5b6100f4816100b6565b81146100fe575f5ffd5b50565b5f8135905061010f816100eb565b92915050565b5f6020828403121561012a576101296100e7565b5b5f61013784828501610101565b9150509291505056fea2646970667358221220f42ae6c3bcfac55997d1127aed4187aaecd3fe284be04d5e2067df2c5124834b64736f6c634300081d0033" # noqa: E501 +BYTES32_CONTRACT_BYTECODE = "0x60806040527f01230123012301230123012301230123012301230123012301230123012301235f553480156031575f5ffd5b50604051610238380380610238833981810160405281019060519190608f565b806001819055505060b5565b5f5ffd5b5f819050919050565b6071816061565b8114607a575f5ffd5b50565b5f81519050608981606a565b92915050565b5f6020828403121560a15760a0605d565b5b5f60ac84828501607d565b91505092915050565b610176806100c25f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee1461006157806358825b101461007f575b5f5ffd5b61004b61009b565b60405161005891906100ce565b60405180910390f35b6100696100a4565b60405161007691906100ce565b60405180910390f35b61009960048036038101906100949190610115565b6100ac565b005b5f600154905090565b5f5f54905090565b8060018190555050565b5f819050919050565b6100c8816100b6565b82525050565b5f6020820190506100e15f8301846100bf565b92915050565b5f5ffd5b6100f4816100b6565b81146100fe575f5ffd5b50565b5f8135905061010f816100eb565b92915050565b5f6020828403121561012a576101296100e7565b5b5f61013784828501610101565b9150509291505056fea2646970667358221220c158440d9344fca45315eee01e851c4a2624e94a37ca3b0012b31b3b2c85dd6364736f6c634300081e0033" # noqa: E501 +BYTES32_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c8063209652551461004357806330de3cee1461006157806358825b101461007f575b5f5ffd5b61004b61009b565b60405161005891906100ce565b60405180910390f35b6100696100a4565b60405161007691906100ce565b60405180910390f35b61009960048036038101906100949190610115565b6100ac565b005b5f600154905090565b5f5f54905090565b8060018190555050565b5f819050919050565b6100c8816100b6565b82525050565b5f6020820190506100e15f8301846100bf565b92915050565b5f5ffd5b6100f4816100b6565b81146100fe575f5ffd5b50565b5f8135905061010f816100eb565b92915050565b5f6020828403121561012a576101296100e7565b5b5f61013784828501610101565b9150509291505056fea2646970667358221220c158440d9344fca45315eee01e851c4a2624e94a37ca3b0012b31b3b2c85dd6364736f6c634300081e0033" # noqa: E501 BYTES32_CONTRACT_ABI = [ { "inputs": [{"internalType": "bytes32", "name": "_value", "type": "bytes32"}], diff --git a/web3/_utils/contract_sources/contract_data/constructor_contracts.py b/web3/_utils/contract_sources/contract_data/constructor_contracts.py index 6162886691..ff1e9efef8 100644 --- a/web3/_utils/contract_sources/contract_data/constructor_contracts.py +++ b/web3/_utils/contract_sources/contract_data/constructor_contracts.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/ConstructorContracts.sol:SimpleConstructorContract # noqa: E501 -SIMPLE_CONSTRUCTOR_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b50603e80601a5f395ff3fe60806040525f5ffdfea2646970667358221220ad799b6fa3cfad2cc02e15920514004566216523105128d5e3031b4a4cc2c74364736f6c634300081d0033" # noqa: E501 -SIMPLE_CONSTRUCTOR_CONTRACT_RUNTIME = "0x60806040525f5ffdfea2646970667358221220ad799b6fa3cfad2cc02e15920514004566216523105128d5e3031b4a4cc2c74364736f6c634300081d0033" # noqa: E501 +SIMPLE_CONSTRUCTOR_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b50603e80601a5f395ff3fe60806040525f5ffdfea26469706673582212209e191fa382f12b19b6452b5f4a2aa0219b128737733ec839fa9a00044a51a5b264736f6c634300081e0033" # noqa: E501 +SIMPLE_CONSTRUCTOR_CONTRACT_RUNTIME = "0x60806040525f5ffdfea26469706673582212209e191fa382f12b19b6452b5f4a2aa0219b128737733ec839fa9a00044a51a5b264736f6c634300081e0033" # noqa: E501 SIMPLE_CONSTRUCTOR_CONTRACT_ABI = [ {"inputs": [], "stateMutability": "nonpayable", "type": "constructor"} ] @@ -17,8 +17,8 @@ # source: web3/_utils/contract_sources/ConstructorContracts.sol:ConstructorWithArgumentsContract # noqa: E501 -CONSTRUCTOR_WITH_ARGUMENTS_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506040516101e83803806101e88339818101604052810190602e919060a1565b815f8190555080600181905550505060d8565b5f5ffd5b5f819050919050565b6055816045565b8114605e575f5ffd5b50565b5f81519050606d81604e565b92915050565b5f819050919050565b6083816073565b8114608c575f5ffd5b50565b5f81519050609b81607c565b92915050565b5f5f6040838503121560b45760b36041565b5b5f60bf858286016061565b925050602060ce85828601608f565b9150509250929050565b610103806100e55f395ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c806388ec1346146034578063d4c46c7614604e575b5f5ffd5b603a6068565b604051604591906089565b60405180910390f35b6054606d565b604051605f919060b6565b60405180910390f35b5f5481565b60015481565b5f819050919050565b6083816073565b82525050565b5f602082019050609a5f830184607c565b92915050565b5f819050919050565b60b08160a0565b82525050565b5f60208201905060c75f83018460a9565b9291505056fea2646970667358221220fdc2941892cb7e09d571071e4c37b298379da9521547d87c2f573f851192a43964736f6c634300081d0033" # noqa: E501 -CONSTRUCTOR_WITH_ARGUMENTS_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c806388ec1346146034578063d4c46c7614604e575b5f5ffd5b603a6068565b604051604591906089565b60405180910390f35b6054606d565b604051605f919060b6565b60405180910390f35b5f5481565b60015481565b5f819050919050565b6083816073565b82525050565b5f602082019050609a5f830184607c565b92915050565b5f819050919050565b60b08160a0565b82525050565b5f60208201905060c75f83018460a9565b9291505056fea2646970667358221220fdc2941892cb7e09d571071e4c37b298379da9521547d87c2f573f851192a43964736f6c634300081d0033" # noqa: E501 +CONSTRUCTOR_WITH_ARGUMENTS_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506040516101e83803806101e88339818101604052810190602e919060a1565b815f8190555080600181905550505060d8565b5f5ffd5b5f819050919050565b6055816045565b8114605e575f5ffd5b50565b5f81519050606d81604e565b92915050565b5f819050919050565b6083816073565b8114608c575f5ffd5b50565b5f81519050609b81607c565b92915050565b5f5f6040838503121560b45760b36041565b5b5f60bf858286016061565b925050602060ce85828601608f565b9150509250929050565b610103806100e55f395ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c806388ec1346146034578063d4c46c7614604e575b5f5ffd5b603a6068565b604051604591906089565b60405180910390f35b6054606d565b604051605f919060b6565b60405180910390f35b5f5481565b60015481565b5f819050919050565b6083816073565b82525050565b5f602082019050609a5f830184607c565b92915050565b5f819050919050565b60b08160a0565b82525050565b5f60208201905060c75f83018460a9565b9291505056fea26469706673582212207d403d1908a2cf17f2230e67186cf271a4264a5fa23cebf6bb111ac4ff68fb4964736f6c634300081e0033" # noqa: E501 +CONSTRUCTOR_WITH_ARGUMENTS_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c806388ec1346146034578063d4c46c7614604e575b5f5ffd5b603a6068565b604051604591906089565b60405180910390f35b6054606d565b604051605f919060b6565b60405180910390f35b5f5481565b60015481565b5f819050919050565b6083816073565b82525050565b5f602082019050609a5f830184607c565b92915050565b5f819050919050565b60b08160a0565b82525050565b5f60208201905060c75f83018460a9565b9291505056fea26469706673582212207d403d1908a2cf17f2230e67186cf271a4264a5fa23cebf6bb111ac4ff68fb4964736f6c634300081e0033" # noqa: E501 CONSTRUCTOR_WITH_ARGUMENTS_CONTRACT_ABI = [ { "inputs": [ @@ -51,8 +51,8 @@ # source: web3/_utils/contract_sources/ConstructorContracts.sol:ConstructorWithAddressArgumentContract # noqa: E501 -CONSTRUCTOR_WITH_ADDRESS_ARGUMENT_CONTRACT_BYTECODE = "0x608060405234801561000f575f5ffd5b506040516101fb3803806101fb833981810160405281019061003191906100d4565b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506100ff565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100a38261007a565b9050919050565b6100b381610099565b81146100bd575f5ffd5b50565b5f815190506100ce816100aa565b92915050565b5f602082840312156100e9576100e8610076565b5b5f6100f6848285016100c0565b91505092915050565b60f08061010b5f395ff3fe6080604052348015600e575f5ffd5b50600436106026575f3560e01c806334664e3a14602a575b5f5ffd5b60306044565b604051603b919060a3565b60405180910390f35b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f608f826068565b9050919050565b609d816087565b82525050565b5f60208201905060b45f8301846096565b9291505056fea264697066735822122005d5a330cf8a7daae8e46cfe64a59f77f07f4c4b18bf63fbfc59df77cbed2ce264736f6c634300081d0033" # noqa: E501 -CONSTRUCTOR_WITH_ADDRESS_ARGUMENT_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106026575f3560e01c806334664e3a14602a575b5f5ffd5b60306044565b604051603b919060a3565b60405180910390f35b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f608f826068565b9050919050565b609d816087565b82525050565b5f60208201905060b45f8301846096565b9291505056fea264697066735822122005d5a330cf8a7daae8e46cfe64a59f77f07f4c4b18bf63fbfc59df77cbed2ce264736f6c634300081d0033" # noqa: E501 +CONSTRUCTOR_WITH_ADDRESS_ARGUMENT_CONTRACT_BYTECODE = "0x608060405234801561000f575f5ffd5b506040516101fb3803806101fb833981810160405281019061003191906100d4565b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506100ff565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100a38261007a565b9050919050565b6100b381610099565b81146100bd575f5ffd5b50565b5f815190506100ce816100aa565b92915050565b5f602082840312156100e9576100e8610076565b5b5f6100f6848285016100c0565b91505092915050565b60f08061010b5f395ff3fe6080604052348015600e575f5ffd5b50600436106026575f3560e01c806334664e3a14602a575b5f5ffd5b60306044565b604051603b919060a3565b60405180910390f35b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f608f826068565b9050919050565b609d816087565b82525050565b5f60208201905060b45f8301846096565b9291505056fea2646970667358221220d29806ab73246c53e77ade19f47279948e66b8efb71c14084c98c3d059ea35ee64736f6c634300081e0033" # noqa: E501 +CONSTRUCTOR_WITH_ADDRESS_ARGUMENT_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106026575f3560e01c806334664e3a14602a575b5f5ffd5b60306044565b604051603b919060a3565b60405180910390f35b5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f608f826068565b9050919050565b609d816087565b82525050565b5f60208201905060b45f8301846096565b9291505056fea2646970667358221220d29806ab73246c53e77ade19f47279948e66b8efb71c14084c98c3d059ea35ee64736f6c634300081e0033" # noqa: E501 CONSTRUCTOR_WITH_ADDRESS_ARGUMENT_CONTRACT_ABI = [ { "inputs": [{"internalType": "address", "name": "_testAddr", "type": "address"}], diff --git a/web3/_utils/contract_sources/contract_data/contract_caller_tester.py b/web3/_utils/contract_sources/contract_data/contract_caller_tester.py index d9177e87ab..9b967e90a6 100644 --- a/web3/_utils/contract_sources/contract_data/contract_caller_tester.py +++ b/web3/_utils/contract_sources/contract_data/contract_caller_tester.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/ContractCallerTester.sol:ContractCallerTester -CONTRACT_CALLER_TESTER_BYTECODE = "0x6080604052348015600e575f5ffd5b506104188061001c5f395ff3fe608060405260043610610049575f3560e01c806306661abd1461004d57806361bc221a14610077578063a5f3c23b14610095578063c7fa7d66146100c5578063d09de08a146100e7575b5f5ffd5b348015610058575f5ffd5b50610061610111565b60405161006e91906101d0565b60405180910390f35b61007f610116565b60405161008c91906101d0565b60405180910390f35b6100af60048036038101906100aa9190610217565b61011e565b6040516100bc91906101d0565b60405180910390f35b6100cd610133565b6040516100de95949392919061031c565b60405180910390f35b3480156100f2575f5ffd5b506100fb61019b565b60405161010891906101d0565b60405180910390f35b5f5481565b5f5f54905090565b5f818361012b91906103a1565b905092915050565b5f60605f5f5f335f365a344384848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505093509091929350945094509450945094509091929394565b5f60015f5f8282546101ad91906103a1565b925050819055905090565b5f819050919050565b6101ca816101b8565b82525050565b5f6020820190506101e35f8301846101c1565b92915050565b5f5ffd5b6101f6816101b8565b8114610200575f5ffd5b50565b5f81359050610211816101ed565b92915050565b5f5f6040838503121561022d5761022c6101e9565b5b5f61023a85828601610203565b925050602061024b85828601610203565b9150509250929050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61027e82610255565b9050919050565b61028e81610274565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6102d682610294565b6102e0818561029e565b93506102f08185602086016102ae565b6102f9816102bc565b840191505092915050565b5f819050919050565b61031681610304565b82525050565b5f60a08201905061032f5f830188610285565b818103602083015261034181876102cc565b9050610350604083018661030d565b61035d606083018561030d565b61036a608083018461030d565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103ab826101b8565b91506103b6836101b8565b92508282019050828112155f8312168382125f8412151617156103dc576103db610374565b5b9291505056fea26469706673582212201f1816978403d2bec819152bf9873124b5a846caeb76530238e37ac29315fb8064736f6c634300081d0033" # noqa: E501 -CONTRACT_CALLER_TESTER_RUNTIME = "0x608060405260043610610049575f3560e01c806306661abd1461004d57806361bc221a14610077578063a5f3c23b14610095578063c7fa7d66146100c5578063d09de08a146100e7575b5f5ffd5b348015610058575f5ffd5b50610061610111565b60405161006e91906101d0565b60405180910390f35b61007f610116565b60405161008c91906101d0565b60405180910390f35b6100af60048036038101906100aa9190610217565b61011e565b6040516100bc91906101d0565b60405180910390f35b6100cd610133565b6040516100de95949392919061031c565b60405180910390f35b3480156100f2575f5ffd5b506100fb61019b565b60405161010891906101d0565b60405180910390f35b5f5481565b5f5f54905090565b5f818361012b91906103a1565b905092915050565b5f60605f5f5f335f365a344384848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505093509091929350945094509450945094509091929394565b5f60015f5f8282546101ad91906103a1565b925050819055905090565b5f819050919050565b6101ca816101b8565b82525050565b5f6020820190506101e35f8301846101c1565b92915050565b5f5ffd5b6101f6816101b8565b8114610200575f5ffd5b50565b5f81359050610211816101ed565b92915050565b5f5f6040838503121561022d5761022c6101e9565b5b5f61023a85828601610203565b925050602061024b85828601610203565b9150509250929050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61027e82610255565b9050919050565b61028e81610274565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6102d682610294565b6102e0818561029e565b93506102f08185602086016102ae565b6102f9816102bc565b840191505092915050565b5f819050919050565b61031681610304565b82525050565b5f60a08201905061032f5f830188610285565b818103602083015261034181876102cc565b9050610350604083018661030d565b61035d606083018561030d565b61036a608083018461030d565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103ab826101b8565b91506103b6836101b8565b92508282019050828112155f8312168382125f8412151617156103dc576103db610374565b5b9291505056fea26469706673582212201f1816978403d2bec819152bf9873124b5a846caeb76530238e37ac29315fb8064736f6c634300081d0033" # noqa: E501 +CONTRACT_CALLER_TESTER_BYTECODE = "0x6080604052348015600e575f5ffd5b506104188061001c5f395ff3fe608060405260043610610049575f3560e01c806306661abd1461004d57806361bc221a14610077578063a5f3c23b14610095578063c7fa7d66146100c5578063d09de08a146100e7575b5f5ffd5b348015610058575f5ffd5b50610061610111565b60405161006e91906101d0565b60405180910390f35b61007f610116565b60405161008c91906101d0565b60405180910390f35b6100af60048036038101906100aa9190610217565b61011e565b6040516100bc91906101d0565b60405180910390f35b6100cd610133565b6040516100de95949392919061031c565b60405180910390f35b3480156100f2575f5ffd5b506100fb61019b565b60405161010891906101d0565b60405180910390f35b5f5481565b5f5f54905090565b5f818361012b91906103a1565b905092915050565b5f60605f5f5f335f365a344384848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505093509091929350945094509450945094509091929394565b5f60015f5f8282546101ad91906103a1565b925050819055905090565b5f819050919050565b6101ca816101b8565b82525050565b5f6020820190506101e35f8301846101c1565b92915050565b5f5ffd5b6101f6816101b8565b8114610200575f5ffd5b50565b5f81359050610211816101ed565b92915050565b5f5f6040838503121561022d5761022c6101e9565b5b5f61023a85828601610203565b925050602061024b85828601610203565b9150509250929050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61027e82610255565b9050919050565b61028e81610274565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6102d682610294565b6102e0818561029e565b93506102f08185602086016102ae565b6102f9816102bc565b840191505092915050565b5f819050919050565b61031681610304565b82525050565b5f60a08201905061032f5f830188610285565b818103602083015261034181876102cc565b9050610350604083018661030d565b61035d606083018561030d565b61036a608083018461030d565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103ab826101b8565b91506103b6836101b8565b92508282019050828112155f8312168382125f8412151617156103dc576103db610374565b5b9291505056fea264697066735822122099d3d23538d14bd41a2c9185dc4a9a928014039b76eeda7e8afc81457bcfb5e064736f6c634300081e0033" # noqa: E501 +CONTRACT_CALLER_TESTER_RUNTIME = "0x608060405260043610610049575f3560e01c806306661abd1461004d57806361bc221a14610077578063a5f3c23b14610095578063c7fa7d66146100c5578063d09de08a146100e7575b5f5ffd5b348015610058575f5ffd5b50610061610111565b60405161006e91906101d0565b60405180910390f35b61007f610116565b60405161008c91906101d0565b60405180910390f35b6100af60048036038101906100aa9190610217565b61011e565b6040516100bc91906101d0565b60405180910390f35b6100cd610133565b6040516100de95949392919061031c565b60405180910390f35b3480156100f2575f5ffd5b506100fb61019b565b60405161010891906101d0565b60405180910390f35b5f5481565b5f5f54905090565b5f818361012b91906103a1565b905092915050565b5f60605f5f5f335f365a344384848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505093509091929350945094509450945094509091929394565b5f60015f5f8282546101ad91906103a1565b925050819055905090565b5f819050919050565b6101ca816101b8565b82525050565b5f6020820190506101e35f8301846101c1565b92915050565b5f5ffd5b6101f6816101b8565b8114610200575f5ffd5b50565b5f81359050610211816101ed565b92915050565b5f5f6040838503121561022d5761022c6101e9565b5b5f61023a85828601610203565b925050602061024b85828601610203565b9150509250929050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61027e82610255565b9050919050565b61028e81610274565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6102d682610294565b6102e0818561029e565b93506102f08185602086016102ae565b6102f9816102bc565b840191505092915050565b5f819050919050565b61031681610304565b82525050565b5f60a08201905061032f5f830188610285565b818103602083015261034181876102cc565b9050610350604083018661030d565b61035d606083018561030d565b61036a608083018461030d565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103ab826101b8565b91506103b6836101b8565b92508282019050828112155f8312168382125f8412151617156103dc576103db610374565b5b9291505056fea264697066735822122099d3d23538d14bd41a2c9185dc4a9a928014039b76eeda7e8afc81457bcfb5e064736f6c634300081e0033" # noqa: E501 CONTRACT_CALLER_TESTER_ABI = [ { "inputs": [ diff --git a/web3/_utils/contract_sources/contract_data/emitter_contract.py b/web3/_utils/contract_sources/contract_data/emitter_contract.py index 25a586f5e1..3b2442f444 100644 --- a/web3/_utils/contract_sources/contract_data/emitter_contract.py +++ b/web3/_utils/contract_sources/contract_data/emitter_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/EmitterContract.sol:EmitterContract -EMITTER_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506118238061001c5f395ff3fe608060405234801561000f575f5ffd5b50600436106100cd575f3560e01c8063966b50e01161008a578063acabb9ed11610064578063acabb9ed146101cd578063b2ddc449146101e9578063e17bf95614610205578063f82ef69e14610221576100cd565b8063966b50e0146101795780639c37705314610195578063aa6fd822146101b1576100cd565b80630bb563d6146100d157806317c0c180146100ed57806320f0256e146101095780632c0e6fde146101255780635da86c171461014157806390b41d8b1461015d575b5f5ffd5b6100eb60048036038101906100e69190610b73565b61023d565b005b61010760048036038101906101029190610bdd565b610277565b005b610123600480360381019061011e9190610c3b565b61034e565b005b61013f600480360381019061013a9190610d0c565b61046b565b005b61015b60048036038101906101569190610e3d565b6104c5565b005b61017760048036038101906101729190610e7b565b610502565b005b610193600480360381019061018e9190610fe4565b61065f565b005b6101af60048036038101906101aa919061105a565b6106b0565b005b6101cb60048036038101906101c691906110be565b6107c8565b005b6101e760048036038101906101e291906110fc565b61090c565b005b61020360048036038101906101fe9190611172565b61095d565b005b61021f600480360381019061021a919061124e565b6109af565b005b61023b60048036038101906102369190611172565b6109e9565b005b7fa95e6e2a182411e7a6f9ed114a85c3761d87f9b8f453d842c71235aa64fff99f8160405161026c91906112f5565b60405180910390a150565b6001601381111561028b5761028a611315565b5b81601381111561029e5761029d611315565b5b036102d4577f1e86022f78f8d04f8e3dfd13a2bdb280403e6632877c0dbee5e4eeb259908a5c60405160405180910390a161034b565b5f60138111156102e7576102e6611315565b5b8160138111156102fa576102f9611315565b5b0361030f5760405160405180910390a061034a565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610341906113b2565b60405180910390fd5b5b50565b6005601381111561036257610361611315565b5b85601381111561037557610374611315565b5b036103bc577ff039d147f23fe975a4254bdf6b1502b8c79132ae1833986b7ccef2638e73fdf9848484846040516103af94939291906113df565b60405180910390a1610464565b600b60138111156103d0576103cf611315565b5b8560138111156103e3576103e2611315565b5b036104285780827fa30ece802b64cd2b7e57dabf4010aabf5df26d1556977affb07b98a77ad955b5868660405161041b929190611422565b60405180910390a3610463565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045a906113b2565b60405180910390fd5b5b5050505050565b838573ffffffffffffffffffffffffffffffffffffffff167fd5adc9babd0133de6cececc75e340da3fc18ae5ccab91bc1c03ff3b194f9a3c18585856040516104b693929190611458565b60405180910390a35050505050565b7f8ccce2523cca5f3851d20df50b5a59509bc4ac7d9ddba344f5e331969d09b8e782826040516104f69291906114fd565b60405180910390a15050565b6003601381111561051657610515611315565b5b83601381111561052957610528611315565b5b0361056c577fdf0cb1dea99afceb3ea698d62e705b736f1345a7eee9eb07e63d1f8f556c1bc5828260405161055f929190611422565b60405180910390a161065a565b600960138111156105805761057f611315565b5b83601381111561059357610592611315565b5b036105d557807f057bc32826fbe161da1c110afcdcae7c109a8b69149f727fc37a603c60ef94ca836040516105c89190611524565b60405180910390a2610659565b600860138111156105e9576105e8611315565b5b8360138111156105fc576105fb611315565b5b0361061d5780826040516106109190611524565b60405180910390a1610658565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064f906113b2565b60405180910390fd5b5b5b505050565b8160405161066d91906115ee565b60405180910390207fdbc4c1d1d2f0d84e58d36ca767ec9ba2ec2f933c055e50e5ccdd57697f7b58b0826040516106a49190611696565b60405180910390a25050565b600460138111156106c4576106c3611315565b5b8460138111156106d7576106d6611315565b5b0361071c577f4a25b279c7c585f25eda9788ac9420ebadae78ca6b206a0e6ab488fd81f5506283838360405161070f939291906116b6565b60405180910390a16107c2565b600a60138111156107305761072f611315565b5b84601381111561074357610742611315565b5b036107865780827ff16c999b533366ca5138d78e85da51611089cd05749f098d6c225d4cd42ee6ec856040516107799190611524565b60405180910390a36107c1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b8906113b2565b60405180910390fd5b5b50505050565b600260138111156107dc576107db611315565b5b8260138111156107ef576107ee611315565b5b03610830577f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516108239190611524565b60405180910390a1610908565b6007601381111561084457610843611315565b5b82601381111561085757610856611315565b5b0361088e57807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a2610907565b600660138111156108a2576108a1611315565b5b8260138111156108b5576108b4611315565b5b036108cb578060405160405180910390a1610906565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fd906113b2565b60405180910390fd5b5b5b5050565b8160405161091a9190611725565b60405180910390207fe77cf33df73da7bc2e253a2dae617e6f15e4e337eaa462a108903af4643d1b758260405161095191906112f5565b60405180910390a25050565b8173ffffffffffffffffffffffffffffffffffffffff167ff922c215689548d72c3d2fe4ea8dafb2a30c43312c9b43fe5d10f713181f991c826040516109a3919061173b565b60405180910390a25050565b7f532fd6ea96cfb78bb46e09279a26828b8b493de1a2b8b1ee1face527978a15a5816040516109de91906117a6565b60405180910390a150565b7f06029e18f16caae06a69281f35b00ed3fcf47950e6c99dafa1bdd8c4b93479a08282604051610a1a9291906117c6565b60405180910390a15050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610a8582610a3f565b810181811067ffffffffffffffff82111715610aa457610aa3610a4f565b5b80604052505050565b5f610ab6610a26565b9050610ac28282610a7c565b919050565b5f67ffffffffffffffff821115610ae157610ae0610a4f565b5b610aea82610a3f565b9050602081019050919050565b828183375f83830152505050565b5f610b17610b1284610ac7565b610aad565b905082815260208101848484011115610b3357610b32610a3b565b5b610b3e848285610af7565b509392505050565b5f82601f830112610b5a57610b59610a37565b5b8135610b6a848260208601610b05565b91505092915050565b5f60208284031215610b8857610b87610a2f565b5b5f82013567ffffffffffffffff811115610ba557610ba4610a33565b5b610bb184828501610b46565b91505092915050565b60148110610bc6575f5ffd5b50565b5f81359050610bd781610bba565b92915050565b5f60208284031215610bf257610bf1610a2f565b5b5f610bff84828501610bc9565b91505092915050565b5f819050919050565b610c1a81610c08565b8114610c24575f5ffd5b50565b5f81359050610c3581610c11565b92915050565b5f5f5f5f5f60a08688031215610c5457610c53610a2f565b5b5f610c6188828901610bc9565b9550506020610c7288828901610c27565b9450506040610c8388828901610c27565b9350506060610c9488828901610c27565b9250506080610ca588828901610c27565b9150509295509295909350565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610cdb82610cb2565b9050919050565b610ceb81610cd1565b8114610cf5575f5ffd5b50565b5f81359050610d0681610ce2565b92915050565b5f5f5f5f5f60a08688031215610d2557610d24610a2f565b5b5f610d3288828901610cf8565b9550506020610d4388828901610c27565b9450506040610d5488828901610cf8565b9350506060610d6588828901610c27565b925050608086013567ffffffffffffffff811115610d8657610d85610a33565b5b610d9288828901610b46565b9150509295509295909350565b5f5ffd5b5f60208284031215610db857610db7610d9f565b5b610dc26020610aad565b90505f610dd184828501610c27565b5f8301525092915050565b5f60608284031215610df157610df0610d9f565b5b610dfb6060610aad565b90505f610e0a84828501610c27565b5f830152506020610e1d84828501610c27565b6020830152506040610e3184828501610da3565b60408301525092915050565b5f5f60808385031215610e5357610e52610a2f565b5b5f610e6085828601610c27565b9250506020610e7185828601610ddc565b9150509250929050565b5f5f5f60608486031215610e9257610e91610a2f565b5b5f610e9f86828701610bc9565b9350506020610eb086828701610c27565b9250506040610ec186828701610c27565b9150509250925092565b5f67ffffffffffffffff821115610ee557610ee4610a4f565b5b602082029050602081019050919050565b5f5ffd5b5f7fffff00000000000000000000000000000000000000000000000000000000000082169050919050565b610f2e81610efa565b8114610f38575f5ffd5b50565b5f81359050610f4981610f25565b92915050565b5f610f61610f5c84610ecb565b610aad565b90508083825260208201905060208402830185811115610f8457610f83610ef6565b5b835b81811015610fad5780610f998882610f3b565b845260208401935050602081019050610f86565b5050509392505050565b5f82601f830112610fcb57610fca610a37565b5b8135610fdb848260208601610f4f565b91505092915050565b5f5f60408385031215610ffa57610ff9610a2f565b5b5f83013567ffffffffffffffff81111561101757611016610a33565b5b61102385828601610fb7565b925050602083013567ffffffffffffffff81111561104457611043610a33565b5b61105085828601610fb7565b9150509250929050565b5f5f5f5f6080858703121561107257611071610a2f565b5b5f61107f87828801610bc9565b945050602061109087828801610c27565b93505060406110a187828801610c27565b92505060606110b287828801610c27565b91505092959194509250565b5f5f604083850312156110d4576110d3610a2f565b5b5f6110e185828601610bc9565b92505060206110f285828601610c27565b9150509250929050565b5f5f6040838503121561111257611111610a2f565b5b5f83013567ffffffffffffffff81111561112f5761112e610a33565b5b61113b85828601610b46565b925050602083013567ffffffffffffffff81111561115c5761115b610a33565b5b61116885828601610b46565b9150509250929050565b5f5f6040838503121561118857611187610a2f565b5b5f61119585828601610cf8565b92505060206111a685828601610cf8565b9150509250929050565b5f67ffffffffffffffff8211156111ca576111c9610a4f565b5b6111d382610a3f565b9050602081019050919050565b5f6111f26111ed846111b0565b610aad565b90508281526020810184848401111561120e5761120d610a3b565b5b611219848285610af7565b509392505050565b5f82601f83011261123557611234610a37565b5b81356112458482602086016111e0565b91505092915050565b5f6020828403121561126357611262610a2f565b5b5f82013567ffffffffffffffff8111156112805761127f610a33565b5b61128c84828501611221565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6112c782611295565b6112d1818561129f565b93506112e18185602086016112af565b6112ea81610a3f565b840191505092915050565b5f6020820190508181035f83015261130d81846112bd565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4469646e2774206d6174636820616e7920616c6c6f7761626c65206576656e745f8201527f20696e6465780000000000000000000000000000000000000000000000000000602082015250565b5f61139c60268361129f565b91506113a782611342565b604082019050919050565b5f6020820190508181035f8301526113c981611390565b9050919050565b6113d981610c08565b82525050565b5f6080820190506113f25f8301876113d0565b6113ff60208301866113d0565b61140c60408301856113d0565b61141960608301846113d0565b95945050505050565b5f6040820190506114355f8301856113d0565b61144260208301846113d0565b9392505050565b61145281610cd1565b82525050565b5f60608201905061146b5f830186611449565b61147860208301856113d0565b818103604083015261148a81846112bd565b9050949350505050565b61149d81610c08565b82525050565b602082015f8201516114b75f850182611494565b50505050565b606082015f8201516114d15f850182611494565b5060208201516114e46020850182611494565b5060408201516114f760408501826114a3565b50505050565b5f6080820190506115105f8301856113d0565b61151d60208301846114bd565b9392505050565b5f6020820190506115375f8301846113d0565b92915050565b5f81519050919050565b5f81905092915050565b5f819050602082019050919050565b61156981610efa565b82525050565b5f61157a8383611560565b60208301905092915050565b5f602082019050919050565b5f61159c8261153d565b6115a68185611547565b93506115b183611551565b805f5b838110156115e15781516115c8888261156f565b97506115d383611586565b9250506001810190506115b4565b5085935050505092915050565b5f6115f98284611592565b915081905092915050565b5f82825260208201905092915050565b61161d81610efa565b82525050565b5f61162e8383611614565b60208301905092915050565b5f6116448261153d565b61164e8185611604565b935061165983611551565b805f5b838110156116895781516116708882611623565b975061167b83611586565b92505060018101905061165c565b5085935050505092915050565b5f6020820190508181035f8301526116ae818461163a565b905092915050565b5f6060820190506116c95f8301866113d0565b6116d660208301856113d0565b6116e360408301846113d0565b949350505050565b5f81905092915050565b5f6116ff82611295565b61170981856116eb565b93506117198185602086016112af565b80840191505092915050565b5f61173082846116f5565b915081905092915050565b5f60208201905061174e5f830184611449565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f61177882611754565b611782818561175e565b93506117928185602086016112af565b61179b81610a3f565b840191505092915050565b5f6020820190508181035f8301526117be818461176e565b905092915050565b5f6040820190506117d95f830185611449565b6117e66020830184611449565b939250505056fea2646970667358221220f14ce13523f5337185ba256ed2d981713fc9137c9c434e5d2aa07c47b6d689dc64736f6c634300081d0033" # noqa: E501 -EMITTER_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b50600436106100cd575f3560e01c8063966b50e01161008a578063acabb9ed11610064578063acabb9ed146101cd578063b2ddc449146101e9578063e17bf95614610205578063f82ef69e14610221576100cd565b8063966b50e0146101795780639c37705314610195578063aa6fd822146101b1576100cd565b80630bb563d6146100d157806317c0c180146100ed57806320f0256e146101095780632c0e6fde146101255780635da86c171461014157806390b41d8b1461015d575b5f5ffd5b6100eb60048036038101906100e69190610b73565b61023d565b005b61010760048036038101906101029190610bdd565b610277565b005b610123600480360381019061011e9190610c3b565b61034e565b005b61013f600480360381019061013a9190610d0c565b61046b565b005b61015b60048036038101906101569190610e3d565b6104c5565b005b61017760048036038101906101729190610e7b565b610502565b005b610193600480360381019061018e9190610fe4565b61065f565b005b6101af60048036038101906101aa919061105a565b6106b0565b005b6101cb60048036038101906101c691906110be565b6107c8565b005b6101e760048036038101906101e291906110fc565b61090c565b005b61020360048036038101906101fe9190611172565b61095d565b005b61021f600480360381019061021a919061124e565b6109af565b005b61023b60048036038101906102369190611172565b6109e9565b005b7fa95e6e2a182411e7a6f9ed114a85c3761d87f9b8f453d842c71235aa64fff99f8160405161026c91906112f5565b60405180910390a150565b6001601381111561028b5761028a611315565b5b81601381111561029e5761029d611315565b5b036102d4577f1e86022f78f8d04f8e3dfd13a2bdb280403e6632877c0dbee5e4eeb259908a5c60405160405180910390a161034b565b5f60138111156102e7576102e6611315565b5b8160138111156102fa576102f9611315565b5b0361030f5760405160405180910390a061034a565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610341906113b2565b60405180910390fd5b5b50565b6005601381111561036257610361611315565b5b85601381111561037557610374611315565b5b036103bc577ff039d147f23fe975a4254bdf6b1502b8c79132ae1833986b7ccef2638e73fdf9848484846040516103af94939291906113df565b60405180910390a1610464565b600b60138111156103d0576103cf611315565b5b8560138111156103e3576103e2611315565b5b036104285780827fa30ece802b64cd2b7e57dabf4010aabf5df26d1556977affb07b98a77ad955b5868660405161041b929190611422565b60405180910390a3610463565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045a906113b2565b60405180910390fd5b5b5050505050565b838573ffffffffffffffffffffffffffffffffffffffff167fd5adc9babd0133de6cececc75e340da3fc18ae5ccab91bc1c03ff3b194f9a3c18585856040516104b693929190611458565b60405180910390a35050505050565b7f8ccce2523cca5f3851d20df50b5a59509bc4ac7d9ddba344f5e331969d09b8e782826040516104f69291906114fd565b60405180910390a15050565b6003601381111561051657610515611315565b5b83601381111561052957610528611315565b5b0361056c577fdf0cb1dea99afceb3ea698d62e705b736f1345a7eee9eb07e63d1f8f556c1bc5828260405161055f929190611422565b60405180910390a161065a565b600960138111156105805761057f611315565b5b83601381111561059357610592611315565b5b036105d557807f057bc32826fbe161da1c110afcdcae7c109a8b69149f727fc37a603c60ef94ca836040516105c89190611524565b60405180910390a2610659565b600860138111156105e9576105e8611315565b5b8360138111156105fc576105fb611315565b5b0361061d5780826040516106109190611524565b60405180910390a1610658565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064f906113b2565b60405180910390fd5b5b5b505050565b8160405161066d91906115ee565b60405180910390207fdbc4c1d1d2f0d84e58d36ca767ec9ba2ec2f933c055e50e5ccdd57697f7b58b0826040516106a49190611696565b60405180910390a25050565b600460138111156106c4576106c3611315565b5b8460138111156106d7576106d6611315565b5b0361071c577f4a25b279c7c585f25eda9788ac9420ebadae78ca6b206a0e6ab488fd81f5506283838360405161070f939291906116b6565b60405180910390a16107c2565b600a60138111156107305761072f611315565b5b84601381111561074357610742611315565b5b036107865780827ff16c999b533366ca5138d78e85da51611089cd05749f098d6c225d4cd42ee6ec856040516107799190611524565b60405180910390a36107c1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b8906113b2565b60405180910390fd5b5b50505050565b600260138111156107dc576107db611315565b5b8260138111156107ef576107ee611315565b5b03610830577f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516108239190611524565b60405180910390a1610908565b6007601381111561084457610843611315565b5b82601381111561085757610856611315565b5b0361088e57807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a2610907565b600660138111156108a2576108a1611315565b5b8260138111156108b5576108b4611315565b5b036108cb578060405160405180910390a1610906565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fd906113b2565b60405180910390fd5b5b5b5050565b8160405161091a9190611725565b60405180910390207fe77cf33df73da7bc2e253a2dae617e6f15e4e337eaa462a108903af4643d1b758260405161095191906112f5565b60405180910390a25050565b8173ffffffffffffffffffffffffffffffffffffffff167ff922c215689548d72c3d2fe4ea8dafb2a30c43312c9b43fe5d10f713181f991c826040516109a3919061173b565b60405180910390a25050565b7f532fd6ea96cfb78bb46e09279a26828b8b493de1a2b8b1ee1face527978a15a5816040516109de91906117a6565b60405180910390a150565b7f06029e18f16caae06a69281f35b00ed3fcf47950e6c99dafa1bdd8c4b93479a08282604051610a1a9291906117c6565b60405180910390a15050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610a8582610a3f565b810181811067ffffffffffffffff82111715610aa457610aa3610a4f565b5b80604052505050565b5f610ab6610a26565b9050610ac28282610a7c565b919050565b5f67ffffffffffffffff821115610ae157610ae0610a4f565b5b610aea82610a3f565b9050602081019050919050565b828183375f83830152505050565b5f610b17610b1284610ac7565b610aad565b905082815260208101848484011115610b3357610b32610a3b565b5b610b3e848285610af7565b509392505050565b5f82601f830112610b5a57610b59610a37565b5b8135610b6a848260208601610b05565b91505092915050565b5f60208284031215610b8857610b87610a2f565b5b5f82013567ffffffffffffffff811115610ba557610ba4610a33565b5b610bb184828501610b46565b91505092915050565b60148110610bc6575f5ffd5b50565b5f81359050610bd781610bba565b92915050565b5f60208284031215610bf257610bf1610a2f565b5b5f610bff84828501610bc9565b91505092915050565b5f819050919050565b610c1a81610c08565b8114610c24575f5ffd5b50565b5f81359050610c3581610c11565b92915050565b5f5f5f5f5f60a08688031215610c5457610c53610a2f565b5b5f610c6188828901610bc9565b9550506020610c7288828901610c27565b9450506040610c8388828901610c27565b9350506060610c9488828901610c27565b9250506080610ca588828901610c27565b9150509295509295909350565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610cdb82610cb2565b9050919050565b610ceb81610cd1565b8114610cf5575f5ffd5b50565b5f81359050610d0681610ce2565b92915050565b5f5f5f5f5f60a08688031215610d2557610d24610a2f565b5b5f610d3288828901610cf8565b9550506020610d4388828901610c27565b9450506040610d5488828901610cf8565b9350506060610d6588828901610c27565b925050608086013567ffffffffffffffff811115610d8657610d85610a33565b5b610d9288828901610b46565b9150509295509295909350565b5f5ffd5b5f60208284031215610db857610db7610d9f565b5b610dc26020610aad565b90505f610dd184828501610c27565b5f8301525092915050565b5f60608284031215610df157610df0610d9f565b5b610dfb6060610aad565b90505f610e0a84828501610c27565b5f830152506020610e1d84828501610c27565b6020830152506040610e3184828501610da3565b60408301525092915050565b5f5f60808385031215610e5357610e52610a2f565b5b5f610e6085828601610c27565b9250506020610e7185828601610ddc565b9150509250929050565b5f5f5f60608486031215610e9257610e91610a2f565b5b5f610e9f86828701610bc9565b9350506020610eb086828701610c27565b9250506040610ec186828701610c27565b9150509250925092565b5f67ffffffffffffffff821115610ee557610ee4610a4f565b5b602082029050602081019050919050565b5f5ffd5b5f7fffff00000000000000000000000000000000000000000000000000000000000082169050919050565b610f2e81610efa565b8114610f38575f5ffd5b50565b5f81359050610f4981610f25565b92915050565b5f610f61610f5c84610ecb565b610aad565b90508083825260208201905060208402830185811115610f8457610f83610ef6565b5b835b81811015610fad5780610f998882610f3b565b845260208401935050602081019050610f86565b5050509392505050565b5f82601f830112610fcb57610fca610a37565b5b8135610fdb848260208601610f4f565b91505092915050565b5f5f60408385031215610ffa57610ff9610a2f565b5b5f83013567ffffffffffffffff81111561101757611016610a33565b5b61102385828601610fb7565b925050602083013567ffffffffffffffff81111561104457611043610a33565b5b61105085828601610fb7565b9150509250929050565b5f5f5f5f6080858703121561107257611071610a2f565b5b5f61107f87828801610bc9565b945050602061109087828801610c27565b93505060406110a187828801610c27565b92505060606110b287828801610c27565b91505092959194509250565b5f5f604083850312156110d4576110d3610a2f565b5b5f6110e185828601610bc9565b92505060206110f285828601610c27565b9150509250929050565b5f5f6040838503121561111257611111610a2f565b5b5f83013567ffffffffffffffff81111561112f5761112e610a33565b5b61113b85828601610b46565b925050602083013567ffffffffffffffff81111561115c5761115b610a33565b5b61116885828601610b46565b9150509250929050565b5f5f6040838503121561118857611187610a2f565b5b5f61119585828601610cf8565b92505060206111a685828601610cf8565b9150509250929050565b5f67ffffffffffffffff8211156111ca576111c9610a4f565b5b6111d382610a3f565b9050602081019050919050565b5f6111f26111ed846111b0565b610aad565b90508281526020810184848401111561120e5761120d610a3b565b5b611219848285610af7565b509392505050565b5f82601f83011261123557611234610a37565b5b81356112458482602086016111e0565b91505092915050565b5f6020828403121561126357611262610a2f565b5b5f82013567ffffffffffffffff8111156112805761127f610a33565b5b61128c84828501611221565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6112c782611295565b6112d1818561129f565b93506112e18185602086016112af565b6112ea81610a3f565b840191505092915050565b5f6020820190508181035f83015261130d81846112bd565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4469646e2774206d6174636820616e7920616c6c6f7761626c65206576656e745f8201527f20696e6465780000000000000000000000000000000000000000000000000000602082015250565b5f61139c60268361129f565b91506113a782611342565b604082019050919050565b5f6020820190508181035f8301526113c981611390565b9050919050565b6113d981610c08565b82525050565b5f6080820190506113f25f8301876113d0565b6113ff60208301866113d0565b61140c60408301856113d0565b61141960608301846113d0565b95945050505050565b5f6040820190506114355f8301856113d0565b61144260208301846113d0565b9392505050565b61145281610cd1565b82525050565b5f60608201905061146b5f830186611449565b61147860208301856113d0565b818103604083015261148a81846112bd565b9050949350505050565b61149d81610c08565b82525050565b602082015f8201516114b75f850182611494565b50505050565b606082015f8201516114d15f850182611494565b5060208201516114e46020850182611494565b5060408201516114f760408501826114a3565b50505050565b5f6080820190506115105f8301856113d0565b61151d60208301846114bd565b9392505050565b5f6020820190506115375f8301846113d0565b92915050565b5f81519050919050565b5f81905092915050565b5f819050602082019050919050565b61156981610efa565b82525050565b5f61157a8383611560565b60208301905092915050565b5f602082019050919050565b5f61159c8261153d565b6115a68185611547565b93506115b183611551565b805f5b838110156115e15781516115c8888261156f565b97506115d383611586565b9250506001810190506115b4565b5085935050505092915050565b5f6115f98284611592565b915081905092915050565b5f82825260208201905092915050565b61161d81610efa565b82525050565b5f61162e8383611614565b60208301905092915050565b5f6116448261153d565b61164e8185611604565b935061165983611551565b805f5b838110156116895781516116708882611623565b975061167b83611586565b92505060018101905061165c565b5085935050505092915050565b5f6020820190508181035f8301526116ae818461163a565b905092915050565b5f6060820190506116c95f8301866113d0565b6116d660208301856113d0565b6116e360408301846113d0565b949350505050565b5f81905092915050565b5f6116ff82611295565b61170981856116eb565b93506117198185602086016112af565b80840191505092915050565b5f61173082846116f5565b915081905092915050565b5f60208201905061174e5f830184611449565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f61177882611754565b611782818561175e565b93506117928185602086016112af565b61179b81610a3f565b840191505092915050565b5f6020820190508181035f8301526117be818461176e565b905092915050565b5f6040820190506117d95f830185611449565b6117e66020830184611449565b939250505056fea2646970667358221220f14ce13523f5337185ba256ed2d981713fc9137c9c434e5d2aa07c47b6d689dc64736f6c634300081d0033" # noqa: E501 +EMITTER_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506118238061001c5f395ff3fe608060405234801561000f575f5ffd5b50600436106100cd575f3560e01c8063966b50e01161008a578063acabb9ed11610064578063acabb9ed146101cd578063b2ddc449146101e9578063e17bf95614610205578063f82ef69e14610221576100cd565b8063966b50e0146101795780639c37705314610195578063aa6fd822146101b1576100cd565b80630bb563d6146100d157806317c0c180146100ed57806320f0256e146101095780632c0e6fde146101255780635da86c171461014157806390b41d8b1461015d575b5f5ffd5b6100eb60048036038101906100e69190610b73565b61023d565b005b61010760048036038101906101029190610bdd565b610277565b005b610123600480360381019061011e9190610c3b565b61034e565b005b61013f600480360381019061013a9190610d0c565b61046b565b005b61015b60048036038101906101569190610e3d565b6104c5565b005b61017760048036038101906101729190610e7b565b610502565b005b610193600480360381019061018e9190610fe4565b61065f565b005b6101af60048036038101906101aa919061105a565b6106b0565b005b6101cb60048036038101906101c691906110be565b6107c8565b005b6101e760048036038101906101e291906110fc565b61090c565b005b61020360048036038101906101fe9190611172565b61095d565b005b61021f600480360381019061021a919061124e565b6109af565b005b61023b60048036038101906102369190611172565b6109e9565b005b7fa95e6e2a182411e7a6f9ed114a85c3761d87f9b8f453d842c71235aa64fff99f8160405161026c91906112f5565b60405180910390a150565b6001601381111561028b5761028a611315565b5b81601381111561029e5761029d611315565b5b036102d4577f1e86022f78f8d04f8e3dfd13a2bdb280403e6632877c0dbee5e4eeb259908a5c60405160405180910390a161034b565b5f60138111156102e7576102e6611315565b5b8160138111156102fa576102f9611315565b5b0361030f5760405160405180910390a061034a565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610341906113b2565b60405180910390fd5b5b50565b6005601381111561036257610361611315565b5b85601381111561037557610374611315565b5b036103bc577ff039d147f23fe975a4254bdf6b1502b8c79132ae1833986b7ccef2638e73fdf9848484846040516103af94939291906113df565b60405180910390a1610464565b600b60138111156103d0576103cf611315565b5b8560138111156103e3576103e2611315565b5b036104285780827fa30ece802b64cd2b7e57dabf4010aabf5df26d1556977affb07b98a77ad955b5868660405161041b929190611422565b60405180910390a3610463565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045a906113b2565b60405180910390fd5b5b5050505050565b838573ffffffffffffffffffffffffffffffffffffffff167fd5adc9babd0133de6cececc75e340da3fc18ae5ccab91bc1c03ff3b194f9a3c18585856040516104b693929190611458565b60405180910390a35050505050565b7f8ccce2523cca5f3851d20df50b5a59509bc4ac7d9ddba344f5e331969d09b8e782826040516104f69291906114fd565b60405180910390a15050565b6003601381111561051657610515611315565b5b83601381111561052957610528611315565b5b0361056c577fdf0cb1dea99afceb3ea698d62e705b736f1345a7eee9eb07e63d1f8f556c1bc5828260405161055f929190611422565b60405180910390a161065a565b600960138111156105805761057f611315565b5b83601381111561059357610592611315565b5b036105d557807f057bc32826fbe161da1c110afcdcae7c109a8b69149f727fc37a603c60ef94ca836040516105c89190611524565b60405180910390a2610659565b600860138111156105e9576105e8611315565b5b8360138111156105fc576105fb611315565b5b0361061d5780826040516106109190611524565b60405180910390a1610658565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064f906113b2565b60405180910390fd5b5b5b505050565b8160405161066d91906115ee565b60405180910390207fdbc4c1d1d2f0d84e58d36ca767ec9ba2ec2f933c055e50e5ccdd57697f7b58b0826040516106a49190611696565b60405180910390a25050565b600460138111156106c4576106c3611315565b5b8460138111156106d7576106d6611315565b5b0361071c577f4a25b279c7c585f25eda9788ac9420ebadae78ca6b206a0e6ab488fd81f5506283838360405161070f939291906116b6565b60405180910390a16107c2565b600a60138111156107305761072f611315565b5b84601381111561074357610742611315565b5b036107865780827ff16c999b533366ca5138d78e85da51611089cd05749f098d6c225d4cd42ee6ec856040516107799190611524565b60405180910390a36107c1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b8906113b2565b60405180910390fd5b5b50505050565b600260138111156107dc576107db611315565b5b8260138111156107ef576107ee611315565b5b03610830577f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516108239190611524565b60405180910390a1610908565b6007601381111561084457610843611315565b5b82601381111561085757610856611315565b5b0361088e57807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a2610907565b600660138111156108a2576108a1611315565b5b8260138111156108b5576108b4611315565b5b036108cb578060405160405180910390a1610906565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fd906113b2565b60405180910390fd5b5b5b5050565b8160405161091a9190611725565b60405180910390207fe77cf33df73da7bc2e253a2dae617e6f15e4e337eaa462a108903af4643d1b758260405161095191906112f5565b60405180910390a25050565b8173ffffffffffffffffffffffffffffffffffffffff167ff922c215689548d72c3d2fe4ea8dafb2a30c43312c9b43fe5d10f713181f991c826040516109a3919061173b565b60405180910390a25050565b7f532fd6ea96cfb78bb46e09279a26828b8b493de1a2b8b1ee1face527978a15a5816040516109de91906117a6565b60405180910390a150565b7f06029e18f16caae06a69281f35b00ed3fcf47950e6c99dafa1bdd8c4b93479a08282604051610a1a9291906117c6565b60405180910390a15050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610a8582610a3f565b810181811067ffffffffffffffff82111715610aa457610aa3610a4f565b5b80604052505050565b5f610ab6610a26565b9050610ac28282610a7c565b919050565b5f67ffffffffffffffff821115610ae157610ae0610a4f565b5b610aea82610a3f565b9050602081019050919050565b828183375f83830152505050565b5f610b17610b1284610ac7565b610aad565b905082815260208101848484011115610b3357610b32610a3b565b5b610b3e848285610af7565b509392505050565b5f82601f830112610b5a57610b59610a37565b5b8135610b6a848260208601610b05565b91505092915050565b5f60208284031215610b8857610b87610a2f565b5b5f82013567ffffffffffffffff811115610ba557610ba4610a33565b5b610bb184828501610b46565b91505092915050565b60148110610bc6575f5ffd5b50565b5f81359050610bd781610bba565b92915050565b5f60208284031215610bf257610bf1610a2f565b5b5f610bff84828501610bc9565b91505092915050565b5f819050919050565b610c1a81610c08565b8114610c24575f5ffd5b50565b5f81359050610c3581610c11565b92915050565b5f5f5f5f5f60a08688031215610c5457610c53610a2f565b5b5f610c6188828901610bc9565b9550506020610c7288828901610c27565b9450506040610c8388828901610c27565b9350506060610c9488828901610c27565b9250506080610ca588828901610c27565b9150509295509295909350565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610cdb82610cb2565b9050919050565b610ceb81610cd1565b8114610cf5575f5ffd5b50565b5f81359050610d0681610ce2565b92915050565b5f5f5f5f5f60a08688031215610d2557610d24610a2f565b5b5f610d3288828901610cf8565b9550506020610d4388828901610c27565b9450506040610d5488828901610cf8565b9350506060610d6588828901610c27565b925050608086013567ffffffffffffffff811115610d8657610d85610a33565b5b610d9288828901610b46565b9150509295509295909350565b5f5ffd5b5f60208284031215610db857610db7610d9f565b5b610dc26020610aad565b90505f610dd184828501610c27565b5f8301525092915050565b5f60608284031215610df157610df0610d9f565b5b610dfb6060610aad565b90505f610e0a84828501610c27565b5f830152506020610e1d84828501610c27565b6020830152506040610e3184828501610da3565b60408301525092915050565b5f5f60808385031215610e5357610e52610a2f565b5b5f610e6085828601610c27565b9250506020610e7185828601610ddc565b9150509250929050565b5f5f5f60608486031215610e9257610e91610a2f565b5b5f610e9f86828701610bc9565b9350506020610eb086828701610c27565b9250506040610ec186828701610c27565b9150509250925092565b5f67ffffffffffffffff821115610ee557610ee4610a4f565b5b602082029050602081019050919050565b5f5ffd5b5f7fffff00000000000000000000000000000000000000000000000000000000000082169050919050565b610f2e81610efa565b8114610f38575f5ffd5b50565b5f81359050610f4981610f25565b92915050565b5f610f61610f5c84610ecb565b610aad565b90508083825260208201905060208402830185811115610f8457610f83610ef6565b5b835b81811015610fad5780610f998882610f3b565b845260208401935050602081019050610f86565b5050509392505050565b5f82601f830112610fcb57610fca610a37565b5b8135610fdb848260208601610f4f565b91505092915050565b5f5f60408385031215610ffa57610ff9610a2f565b5b5f83013567ffffffffffffffff81111561101757611016610a33565b5b61102385828601610fb7565b925050602083013567ffffffffffffffff81111561104457611043610a33565b5b61105085828601610fb7565b9150509250929050565b5f5f5f5f6080858703121561107257611071610a2f565b5b5f61107f87828801610bc9565b945050602061109087828801610c27565b93505060406110a187828801610c27565b92505060606110b287828801610c27565b91505092959194509250565b5f5f604083850312156110d4576110d3610a2f565b5b5f6110e185828601610bc9565b92505060206110f285828601610c27565b9150509250929050565b5f5f6040838503121561111257611111610a2f565b5b5f83013567ffffffffffffffff81111561112f5761112e610a33565b5b61113b85828601610b46565b925050602083013567ffffffffffffffff81111561115c5761115b610a33565b5b61116885828601610b46565b9150509250929050565b5f5f6040838503121561118857611187610a2f565b5b5f61119585828601610cf8565b92505060206111a685828601610cf8565b9150509250929050565b5f67ffffffffffffffff8211156111ca576111c9610a4f565b5b6111d382610a3f565b9050602081019050919050565b5f6111f26111ed846111b0565b610aad565b90508281526020810184848401111561120e5761120d610a3b565b5b611219848285610af7565b509392505050565b5f82601f83011261123557611234610a37565b5b81356112458482602086016111e0565b91505092915050565b5f6020828403121561126357611262610a2f565b5b5f82013567ffffffffffffffff8111156112805761127f610a33565b5b61128c84828501611221565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6112c782611295565b6112d1818561129f565b93506112e18185602086016112af565b6112ea81610a3f565b840191505092915050565b5f6020820190508181035f83015261130d81846112bd565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4469646e2774206d6174636820616e7920616c6c6f7761626c65206576656e745f8201527f20696e6465780000000000000000000000000000000000000000000000000000602082015250565b5f61139c60268361129f565b91506113a782611342565b604082019050919050565b5f6020820190508181035f8301526113c981611390565b9050919050565b6113d981610c08565b82525050565b5f6080820190506113f25f8301876113d0565b6113ff60208301866113d0565b61140c60408301856113d0565b61141960608301846113d0565b95945050505050565b5f6040820190506114355f8301856113d0565b61144260208301846113d0565b9392505050565b61145281610cd1565b82525050565b5f60608201905061146b5f830186611449565b61147860208301856113d0565b818103604083015261148a81846112bd565b9050949350505050565b61149d81610c08565b82525050565b602082015f8201516114b75f850182611494565b50505050565b606082015f8201516114d15f850182611494565b5060208201516114e46020850182611494565b5060408201516114f760408501826114a3565b50505050565b5f6080820190506115105f8301856113d0565b61151d60208301846114bd565b9392505050565b5f6020820190506115375f8301846113d0565b92915050565b5f81519050919050565b5f81905092915050565b5f819050602082019050919050565b61156981610efa565b82525050565b5f61157a8383611560565b60208301905092915050565b5f602082019050919050565b5f61159c8261153d565b6115a68185611547565b93506115b183611551565b805f5b838110156115e15781516115c8888261156f565b97506115d383611586565b9250506001810190506115b4565b5085935050505092915050565b5f6115f98284611592565b915081905092915050565b5f82825260208201905092915050565b61161d81610efa565b82525050565b5f61162e8383611614565b60208301905092915050565b5f6116448261153d565b61164e8185611604565b935061165983611551565b805f5b838110156116895781516116708882611623565b975061167b83611586565b92505060018101905061165c565b5085935050505092915050565b5f6020820190508181035f8301526116ae818461163a565b905092915050565b5f6060820190506116c95f8301866113d0565b6116d660208301856113d0565b6116e360408301846113d0565b949350505050565b5f81905092915050565b5f6116ff82611295565b61170981856116eb565b93506117198185602086016112af565b80840191505092915050565b5f61173082846116f5565b915081905092915050565b5f60208201905061174e5f830184611449565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f61177882611754565b611782818561175e565b93506117928185602086016112af565b61179b81610a3f565b840191505092915050565b5f6020820190508181035f8301526117be818461176e565b905092915050565b5f6040820190506117d95f830185611449565b6117e66020830184611449565b939250505056fea264697066735822122003376e7a5d27c43ad43676e9f1efff563c626b7d1b96bd09006b9562e3dc714b64736f6c634300081e0033" # noqa: E501 +EMITTER_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b50600436106100cd575f3560e01c8063966b50e01161008a578063acabb9ed11610064578063acabb9ed146101cd578063b2ddc449146101e9578063e17bf95614610205578063f82ef69e14610221576100cd565b8063966b50e0146101795780639c37705314610195578063aa6fd822146101b1576100cd565b80630bb563d6146100d157806317c0c180146100ed57806320f0256e146101095780632c0e6fde146101255780635da86c171461014157806390b41d8b1461015d575b5f5ffd5b6100eb60048036038101906100e69190610b73565b61023d565b005b61010760048036038101906101029190610bdd565b610277565b005b610123600480360381019061011e9190610c3b565b61034e565b005b61013f600480360381019061013a9190610d0c565b61046b565b005b61015b60048036038101906101569190610e3d565b6104c5565b005b61017760048036038101906101729190610e7b565b610502565b005b610193600480360381019061018e9190610fe4565b61065f565b005b6101af60048036038101906101aa919061105a565b6106b0565b005b6101cb60048036038101906101c691906110be565b6107c8565b005b6101e760048036038101906101e291906110fc565b61090c565b005b61020360048036038101906101fe9190611172565b61095d565b005b61021f600480360381019061021a919061124e565b6109af565b005b61023b60048036038101906102369190611172565b6109e9565b005b7fa95e6e2a182411e7a6f9ed114a85c3761d87f9b8f453d842c71235aa64fff99f8160405161026c91906112f5565b60405180910390a150565b6001601381111561028b5761028a611315565b5b81601381111561029e5761029d611315565b5b036102d4577f1e86022f78f8d04f8e3dfd13a2bdb280403e6632877c0dbee5e4eeb259908a5c60405160405180910390a161034b565b5f60138111156102e7576102e6611315565b5b8160138111156102fa576102f9611315565b5b0361030f5760405160405180910390a061034a565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610341906113b2565b60405180910390fd5b5b50565b6005601381111561036257610361611315565b5b85601381111561037557610374611315565b5b036103bc577ff039d147f23fe975a4254bdf6b1502b8c79132ae1833986b7ccef2638e73fdf9848484846040516103af94939291906113df565b60405180910390a1610464565b600b60138111156103d0576103cf611315565b5b8560138111156103e3576103e2611315565b5b036104285780827fa30ece802b64cd2b7e57dabf4010aabf5df26d1556977affb07b98a77ad955b5868660405161041b929190611422565b60405180910390a3610463565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161045a906113b2565b60405180910390fd5b5b5050505050565b838573ffffffffffffffffffffffffffffffffffffffff167fd5adc9babd0133de6cececc75e340da3fc18ae5ccab91bc1c03ff3b194f9a3c18585856040516104b693929190611458565b60405180910390a35050505050565b7f8ccce2523cca5f3851d20df50b5a59509bc4ac7d9ddba344f5e331969d09b8e782826040516104f69291906114fd565b60405180910390a15050565b6003601381111561051657610515611315565b5b83601381111561052957610528611315565b5b0361056c577fdf0cb1dea99afceb3ea698d62e705b736f1345a7eee9eb07e63d1f8f556c1bc5828260405161055f929190611422565b60405180910390a161065a565b600960138111156105805761057f611315565b5b83601381111561059357610592611315565b5b036105d557807f057bc32826fbe161da1c110afcdcae7c109a8b69149f727fc37a603c60ef94ca836040516105c89190611524565b60405180910390a2610659565b600860138111156105e9576105e8611315565b5b8360138111156105fc576105fb611315565b5b0361061d5780826040516106109190611524565b60405180910390a1610658565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064f906113b2565b60405180910390fd5b5b5b505050565b8160405161066d91906115ee565b60405180910390207fdbc4c1d1d2f0d84e58d36ca767ec9ba2ec2f933c055e50e5ccdd57697f7b58b0826040516106a49190611696565b60405180910390a25050565b600460138111156106c4576106c3611315565b5b8460138111156106d7576106d6611315565b5b0361071c577f4a25b279c7c585f25eda9788ac9420ebadae78ca6b206a0e6ab488fd81f5506283838360405161070f939291906116b6565b60405180910390a16107c2565b600a60138111156107305761072f611315565b5b84601381111561074357610742611315565b5b036107865780827ff16c999b533366ca5138d78e85da51611089cd05749f098d6c225d4cd42ee6ec856040516107799190611524565b60405180910390a36107c1565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b8906113b2565b60405180910390fd5b5b50505050565b600260138111156107dc576107db611315565b5b8260138111156107ef576107ee611315565b5b03610830577f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516108239190611524565b60405180910390a1610908565b6007601381111561084457610843611315565b5b82601381111561085757610856611315565b5b0361088e57807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a2610907565b600660138111156108a2576108a1611315565b5b8260138111156108b5576108b4611315565b5b036108cb578060405160405180910390a1610906565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fd906113b2565b60405180910390fd5b5b5b5050565b8160405161091a9190611725565b60405180910390207fe77cf33df73da7bc2e253a2dae617e6f15e4e337eaa462a108903af4643d1b758260405161095191906112f5565b60405180910390a25050565b8173ffffffffffffffffffffffffffffffffffffffff167ff922c215689548d72c3d2fe4ea8dafb2a30c43312c9b43fe5d10f713181f991c826040516109a3919061173b565b60405180910390a25050565b7f532fd6ea96cfb78bb46e09279a26828b8b493de1a2b8b1ee1face527978a15a5816040516109de91906117a6565b60405180910390a150565b7f06029e18f16caae06a69281f35b00ed3fcf47950e6c99dafa1bdd8c4b93479a08282604051610a1a9291906117c6565b60405180910390a15050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610a8582610a3f565b810181811067ffffffffffffffff82111715610aa457610aa3610a4f565b5b80604052505050565b5f610ab6610a26565b9050610ac28282610a7c565b919050565b5f67ffffffffffffffff821115610ae157610ae0610a4f565b5b610aea82610a3f565b9050602081019050919050565b828183375f83830152505050565b5f610b17610b1284610ac7565b610aad565b905082815260208101848484011115610b3357610b32610a3b565b5b610b3e848285610af7565b509392505050565b5f82601f830112610b5a57610b59610a37565b5b8135610b6a848260208601610b05565b91505092915050565b5f60208284031215610b8857610b87610a2f565b5b5f82013567ffffffffffffffff811115610ba557610ba4610a33565b5b610bb184828501610b46565b91505092915050565b60148110610bc6575f5ffd5b50565b5f81359050610bd781610bba565b92915050565b5f60208284031215610bf257610bf1610a2f565b5b5f610bff84828501610bc9565b91505092915050565b5f819050919050565b610c1a81610c08565b8114610c24575f5ffd5b50565b5f81359050610c3581610c11565b92915050565b5f5f5f5f5f60a08688031215610c5457610c53610a2f565b5b5f610c6188828901610bc9565b9550506020610c7288828901610c27565b9450506040610c8388828901610c27565b9350506060610c9488828901610c27565b9250506080610ca588828901610c27565b9150509295509295909350565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610cdb82610cb2565b9050919050565b610ceb81610cd1565b8114610cf5575f5ffd5b50565b5f81359050610d0681610ce2565b92915050565b5f5f5f5f5f60a08688031215610d2557610d24610a2f565b5b5f610d3288828901610cf8565b9550506020610d4388828901610c27565b9450506040610d5488828901610cf8565b9350506060610d6588828901610c27565b925050608086013567ffffffffffffffff811115610d8657610d85610a33565b5b610d9288828901610b46565b9150509295509295909350565b5f5ffd5b5f60208284031215610db857610db7610d9f565b5b610dc26020610aad565b90505f610dd184828501610c27565b5f8301525092915050565b5f60608284031215610df157610df0610d9f565b5b610dfb6060610aad565b90505f610e0a84828501610c27565b5f830152506020610e1d84828501610c27565b6020830152506040610e3184828501610da3565b60408301525092915050565b5f5f60808385031215610e5357610e52610a2f565b5b5f610e6085828601610c27565b9250506020610e7185828601610ddc565b9150509250929050565b5f5f5f60608486031215610e9257610e91610a2f565b5b5f610e9f86828701610bc9565b9350506020610eb086828701610c27565b9250506040610ec186828701610c27565b9150509250925092565b5f67ffffffffffffffff821115610ee557610ee4610a4f565b5b602082029050602081019050919050565b5f5ffd5b5f7fffff00000000000000000000000000000000000000000000000000000000000082169050919050565b610f2e81610efa565b8114610f38575f5ffd5b50565b5f81359050610f4981610f25565b92915050565b5f610f61610f5c84610ecb565b610aad565b90508083825260208201905060208402830185811115610f8457610f83610ef6565b5b835b81811015610fad5780610f998882610f3b565b845260208401935050602081019050610f86565b5050509392505050565b5f82601f830112610fcb57610fca610a37565b5b8135610fdb848260208601610f4f565b91505092915050565b5f5f60408385031215610ffa57610ff9610a2f565b5b5f83013567ffffffffffffffff81111561101757611016610a33565b5b61102385828601610fb7565b925050602083013567ffffffffffffffff81111561104457611043610a33565b5b61105085828601610fb7565b9150509250929050565b5f5f5f5f6080858703121561107257611071610a2f565b5b5f61107f87828801610bc9565b945050602061109087828801610c27565b93505060406110a187828801610c27565b92505060606110b287828801610c27565b91505092959194509250565b5f5f604083850312156110d4576110d3610a2f565b5b5f6110e185828601610bc9565b92505060206110f285828601610c27565b9150509250929050565b5f5f6040838503121561111257611111610a2f565b5b5f83013567ffffffffffffffff81111561112f5761112e610a33565b5b61113b85828601610b46565b925050602083013567ffffffffffffffff81111561115c5761115b610a33565b5b61116885828601610b46565b9150509250929050565b5f5f6040838503121561118857611187610a2f565b5b5f61119585828601610cf8565b92505060206111a685828601610cf8565b9150509250929050565b5f67ffffffffffffffff8211156111ca576111c9610a4f565b5b6111d382610a3f565b9050602081019050919050565b5f6111f26111ed846111b0565b610aad565b90508281526020810184848401111561120e5761120d610a3b565b5b611219848285610af7565b509392505050565b5f82601f83011261123557611234610a37565b5b81356112458482602086016111e0565b91505092915050565b5f6020828403121561126357611262610a2f565b5b5f82013567ffffffffffffffff8111156112805761127f610a33565b5b61128c84828501611221565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6112c782611295565b6112d1818561129f565b93506112e18185602086016112af565b6112ea81610a3f565b840191505092915050565b5f6020820190508181035f83015261130d81846112bd565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4469646e2774206d6174636820616e7920616c6c6f7761626c65206576656e745f8201527f20696e6465780000000000000000000000000000000000000000000000000000602082015250565b5f61139c60268361129f565b91506113a782611342565b604082019050919050565b5f6020820190508181035f8301526113c981611390565b9050919050565b6113d981610c08565b82525050565b5f6080820190506113f25f8301876113d0565b6113ff60208301866113d0565b61140c60408301856113d0565b61141960608301846113d0565b95945050505050565b5f6040820190506114355f8301856113d0565b61144260208301846113d0565b9392505050565b61145281610cd1565b82525050565b5f60608201905061146b5f830186611449565b61147860208301856113d0565b818103604083015261148a81846112bd565b9050949350505050565b61149d81610c08565b82525050565b602082015f8201516114b75f850182611494565b50505050565b606082015f8201516114d15f850182611494565b5060208201516114e46020850182611494565b5060408201516114f760408501826114a3565b50505050565b5f6080820190506115105f8301856113d0565b61151d60208301846114bd565b9392505050565b5f6020820190506115375f8301846113d0565b92915050565b5f81519050919050565b5f81905092915050565b5f819050602082019050919050565b61156981610efa565b82525050565b5f61157a8383611560565b60208301905092915050565b5f602082019050919050565b5f61159c8261153d565b6115a68185611547565b93506115b183611551565b805f5b838110156115e15781516115c8888261156f565b97506115d383611586565b9250506001810190506115b4565b5085935050505092915050565b5f6115f98284611592565b915081905092915050565b5f82825260208201905092915050565b61161d81610efa565b82525050565b5f61162e8383611614565b60208301905092915050565b5f6116448261153d565b61164e8185611604565b935061165983611551565b805f5b838110156116895781516116708882611623565b975061167b83611586565b92505060018101905061165c565b5085935050505092915050565b5f6020820190508181035f8301526116ae818461163a565b905092915050565b5f6060820190506116c95f8301866113d0565b6116d660208301856113d0565b6116e360408301846113d0565b949350505050565b5f81905092915050565b5f6116ff82611295565b61170981856116eb565b93506117198185602086016112af565b80840191505092915050565b5f61173082846116f5565b915081905092915050565b5f60208201905061174e5f830184611449565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f61177882611754565b611782818561175e565b93506117928185602086016112af565b61179b81610a3f565b840191505092915050565b5f6020820190508181035f8301526117be818461176e565b905092915050565b5f6040820190506117d95f830185611449565b6117e66020830184611449565b939250505056fea264697066735822122003376e7a5d27c43ad43676e9f1efff563c626b7d1b96bd09006b9562e3dc714b64736f6c634300081e0033" # noqa: E501 EMITTER_CONTRACT_ABI = [ { "anonymous": False, diff --git a/web3/_utils/contract_sources/contract_data/event_contracts.py b/web3/_utils/contract_sources/contract_data/event_contracts.py index f26b1b00ab..ec693ccf37 100644 --- a/web3/_utils/contract_sources/contract_data/event_contracts.py +++ b/web3/_utils/contract_sources/contract_data/event_contracts.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/EventContracts.sol:EventContract -EVENT_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061017a8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100f1565b610049565b005b7ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1581604051610078919061012b565b60405180910390a17f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100af919061012b565b60405180910390a150565b5f5ffd5b5f819050919050565b6100d0816100be565b81146100da575f5ffd5b50565b5f813590506100eb816100c7565b92915050565b5f60208284031215610106576101056100ba565b5b5f610113848285016100dd565b91505092915050565b610125816100be565b82525050565b5f60208201905061013e5f83018461011c565b9291505056fea2646970667358221220545384d9de0b723412770860ff5c2ec9d5e80adb8e8396d5453a5a1d93a6cc9664736f6c634300081d0033" # noqa: E501 -EVENT_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100f1565b610049565b005b7ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1581604051610078919061012b565b60405180910390a17f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100af919061012b565b60405180910390a150565b5f5ffd5b5f819050919050565b6100d0816100be565b81146100da575f5ffd5b50565b5f813590506100eb816100c7565b92915050565b5f60208284031215610106576101056100ba565b5b5f610113848285016100dd565b91505092915050565b610125816100be565b82525050565b5f60208201905061013e5f83018461011c565b9291505056fea2646970667358221220545384d9de0b723412770860ff5c2ec9d5e80adb8e8396d5453a5a1d93a6cc9664736f6c634300081d0033" # noqa: E501 +EVENT_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061017a8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100f1565b610049565b005b7ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1581604051610078919061012b565b60405180910390a17f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100af919061012b565b60405180910390a150565b5f5ffd5b5f819050919050565b6100d0816100be565b81146100da575f5ffd5b50565b5f813590506100eb816100c7565b92915050565b5f60208284031215610106576101056100ba565b5b5f610113848285016100dd565b91505092915050565b610125816100be565b82525050565b5f60208201905061013e5f83018461011c565b9291505056fea264697066735822122024dd83d4ed45a24e04cc3847bf220951b8e223a67484b966cda4cedca6223a0564736f6c634300081e0033" # noqa: E501 +EVENT_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100f1565b610049565b005b7ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1581604051610078919061012b565b60405180910390a17f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100af919061012b565b60405180910390a150565b5f5ffd5b5f819050919050565b6100d0816100be565b81146100da575f5ffd5b50565b5f813590506100eb816100c7565b92915050565b5f60208284031215610106576101056100ba565b5b5f610113848285016100dd565b91505092915050565b610125816100be565b82525050565b5f60208201905061013e5f83018461011c565b9291505056fea264697066735822122024dd83d4ed45a24e04cc3847bf220951b8e223a67484b966cda4cedca6223a0564736f6c634300081e0033" # noqa: E501 EVENT_CONTRACT_ABI = [ { "anonymous": False, @@ -49,8 +49,8 @@ # source: web3/_utils/contract_sources/EventContracts.sol:IndexedEventContract -INDEXED_EVENT_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506101708061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100e7565b610049565b005b807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a27f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100a59190610121565b60405180910390a150565b5f5ffd5b5f819050919050565b6100c6816100b4565b81146100d0575f5ffd5b50565b5f813590506100e1816100bd565b92915050565b5f602082840312156100fc576100fb6100b0565b5b5f610109848285016100d3565b91505092915050565b61011b816100b4565b82525050565b5f6020820190506101345f830184610112565b9291505056fea2646970667358221220d4d0b301f4a9149e9a55465d47bb66c560b624cfbf3158d36536cc511eb62cc164736f6c634300081d0033" # noqa: E501 -INDEXED_EVENT_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100e7565b610049565b005b807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a27f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100a59190610121565b60405180910390a150565b5f5ffd5b5f819050919050565b6100c6816100b4565b81146100d0575f5ffd5b50565b5f813590506100e1816100bd565b92915050565b5f602082840312156100fc576100fb6100b0565b5b5f610109848285016100d3565b91505092915050565b61011b816100b4565b82525050565b5f6020820190506101345f830184610112565b9291505056fea2646970667358221220d4d0b301f4a9149e9a55465d47bb66c560b624cfbf3158d36536cc511eb62cc164736f6c634300081d0033" # noqa: E501 +INDEXED_EVENT_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506101708061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100e7565b610049565b005b807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a27f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100a59190610121565b60405180910390a150565b5f5ffd5b5f819050919050565b6100c6816100b4565b81146100d0575f5ffd5b50565b5f813590506100e1816100bd565b92915050565b5f602082840312156100fc576100fb6100b0565b5b5f610109848285016100d3565b91505092915050565b61011b816100b4565b82525050565b5f6020820190506101345f830184610112565b9291505056fea26469706673582212203cd1266da088b06eb4010c3d410ac280b80cdf191b74b15b1cf76af93679dadb64736f6c634300081e0033" # noqa: E501 +INDEXED_EVENT_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b610047600480360381019061004291906100e7565b610049565b005b807ff70fe689e290d8ce2b2a388ac28db36fbb0e16a6d89c6804c461f65a1b40bb1560405160405180910390a27f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100a59190610121565b60405180910390a150565b5f5ffd5b5f819050919050565b6100c6816100b4565b81146100d0575f5ffd5b50565b5f813590506100e1816100bd565b92915050565b5f602082840312156100fc576100fb6100b0565b5b5f610109848285016100d3565b91505092915050565b61011b816100b4565b82525050565b5f6020820190506101345f830184610112565b9291505056fea26469706673582212203cd1266da088b06eb4010c3d410ac280b80cdf191b74b15b1cf76af93679dadb64736f6c634300081e0033" # noqa: E501 INDEXED_EVENT_CONTRACT_ABI = [ { "anonymous": False, @@ -94,8 +94,8 @@ # source: web3/_utils/contract_sources/EventContracts.sol:AmbiguousEventNameContract -AMBIGUOUS_EVENT_NAME_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506102728061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b61004760048036038101906100429190610119565b610049565b005b7f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100789190610153565b60405180910390a17fe466ad4edc182e32048f6e723b179ae20d1030f298fcfa1e9ad4a759b5a63112816040516020016100b29190610153565b6040516020818303038152906040526100ca906101ae565b6040516100d79190610223565b60405180910390a150565b5f5ffd5b5f819050919050565b6100f8816100e6565b8114610102575f5ffd5b50565b5f81359050610113816100ef565b92915050565b5f6020828403121561012e5761012d6100e2565b5b5f61013b84828501610105565b91505092915050565b61014d816100e6565b82525050565b5f6020820190506101665f830184610144565b92915050565b5f81519050919050565b5f819050602082019050919050565b5f819050919050565b5f6101998251610185565b80915050919050565b5f82821b905092915050565b5f6101b88261016c565b826101c284610176565b90506101cd8161018e565b9250602082101561020d576102087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026101a2565b831692505b5050919050565b61021d81610185565b82525050565b5f6020820190506102365f830184610214565b9291505056fea26469706673582212203bdba5dad0281a0382b15e8271820b2fd5f94c8f3e35fc417b12c3acd454f8aa64736f6c634300081d0033" # noqa: E501 -AMBIGUOUS_EVENT_NAME_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b61004760048036038101906100429190610119565b610049565b005b7f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100789190610153565b60405180910390a17fe466ad4edc182e32048f6e723b179ae20d1030f298fcfa1e9ad4a759b5a63112816040516020016100b29190610153565b6040516020818303038152906040526100ca906101ae565b6040516100d79190610223565b60405180910390a150565b5f5ffd5b5f819050919050565b6100f8816100e6565b8114610102575f5ffd5b50565b5f81359050610113816100ef565b92915050565b5f6020828403121561012e5761012d6100e2565b5b5f61013b84828501610105565b91505092915050565b61014d816100e6565b82525050565b5f6020820190506101665f830184610144565b92915050565b5f81519050919050565b5f819050602082019050919050565b5f819050919050565b5f6101998251610185565b80915050919050565b5f82821b905092915050565b5f6101b88261016c565b826101c284610176565b90506101cd8161018e565b9250602082101561020d576102087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026101a2565b831692505b5050919050565b61021d81610185565b82525050565b5f6020820190506102365f830184610214565b9291505056fea26469706673582212203bdba5dad0281a0382b15e8271820b2fd5f94c8f3e35fc417b12c3acd454f8aa64736f6c634300081d0033" # noqa: E501 +AMBIGUOUS_EVENT_NAME_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506102728061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b61004760048036038101906100429190610119565b610049565b005b7f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100789190610153565b60405180910390a17fe466ad4edc182e32048f6e723b179ae20d1030f298fcfa1e9ad4a759b5a63112816040516020016100b29190610153565b6040516020818303038152906040526100ca906101ae565b6040516100d79190610223565b60405180910390a150565b5f5ffd5b5f819050919050565b6100f8816100e6565b8114610102575f5ffd5b50565b5f81359050610113816100ef565b92915050565b5f6020828403121561012e5761012d6100e2565b5b5f61013b84828501610105565b91505092915050565b61014d816100e6565b82525050565b5f6020820190506101665f830184610144565b92915050565b5f81519050919050565b5f819050602082019050919050565b5f819050919050565b5f6101998251610185565b80915050919050565b5f82821b905092915050565b5f6101b88261016c565b826101c284610176565b90506101cd8161018e565b9250602082101561020d576102087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026101a2565b831692505b5050919050565b61021d81610185565b82525050565b5f6020820190506102365f830184610214565b9291505056fea2646970667358221220606bc1ddfcd8b77dae3483714ddada7ba373cbf1798893d081138811a379ce7364736f6c634300081e0033" # noqa: E501 +AMBIGUOUS_EVENT_NAME_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80635818fad71461002d575b5f5ffd5b61004760048036038101906100429190610119565b610049565b005b7f56d2ef3c5228bf5d88573621e325a4672ab50e033749a601e4f4a5e1dce905d4816040516100789190610153565b60405180910390a17fe466ad4edc182e32048f6e723b179ae20d1030f298fcfa1e9ad4a759b5a63112816040516020016100b29190610153565b6040516020818303038152906040526100ca906101ae565b6040516100d79190610223565b60405180910390a150565b5f5ffd5b5f819050919050565b6100f8816100e6565b8114610102575f5ffd5b50565b5f81359050610113816100ef565b92915050565b5f6020828403121561012e5761012d6100e2565b5b5f61013b84828501610105565b91505092915050565b61014d816100e6565b82525050565b5f6020820190506101665f830184610144565b92915050565b5f81519050919050565b5f819050602082019050919050565b5f819050919050565b5f6101998251610185565b80915050919050565b5f82821b905092915050565b5f6101b88261016c565b826101c284610176565b90506101cd8161018e565b9250602082101561020d576102087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff836020036008026101a2565b831692505b5050919050565b61021d81610185565b82525050565b5f6020820190506102365f830184610214565b9291505056fea2646970667358221220606bc1ddfcd8b77dae3483714ddada7ba373cbf1798893d081138811a379ce7364736f6c634300081e0033" # noqa: E501 AMBIGUOUS_EVENT_NAME_CONTRACT_ABI = [ { "anonymous": False, diff --git a/web3/_utils/contract_sources/contract_data/extended_resolver.py b/web3/_utils/contract_sources/contract_data/extended_resolver.py index 617689f1aa..ed69eed95c 100644 --- a/web3/_utils/contract_sources/contract_data/extended_resolver.py +++ b/web3/_utils/contract_sources/contract_data/extended_resolver.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/ExtendedResolver.sol:ExtendedResolver -EXTENDED_RESOLVER_BYTECODE = "0x608060405234801561000f575f5ffd5b50604051610d0e380380610d0e833981810160405281019061003191906100e5565b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610110565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100a38261007a565b9050919050565b5f6100b482610099565b9050919050565b6100c4816100aa565b81146100ce575f5ffd5b50565b5f815190506100df816100bb565b92915050565b5f602082840312156100fa576100f9610076565b5b5f610107848285016100d1565b91505092915050565b610bf18061011d5f395ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c806301ffc9a71461004e5780633e9ce7941461007e5780639061b9231461009a578063f86bc879146100ca575b5f5ffd5b61006860048036038101906100639190610539565b6100fa565b604051610075919061057e565b60405180910390f35b6100986004803603810190610093919061064e565b61015a565b005b6100b460048036038101906100af91906106ff565b61023a565b6040516100c191906107ed565b60405180910390f35b6100e460048036038101906100df919061080d565b610457565b6040516100f1919061057e565b60405180910390f35b5f639061b92360e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061015357506101528261048c565b5b9050919050565b8060015f8581526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df8333848460405161022d949392919061087b565b60405180910390a1505050565b60606040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012085856040516102899291906108fa565b60405180910390201480156102a2575060248383905010155b15610352577ff0a378cc2afe91730d0105e67d6bb037cc5b8b6bfec5b5962d9b637ff6497e555f1b83836004906024926102de9392919061091a565b906102e9919061096a565b14610329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032090610a48565b60405180910390fd5b61beef60405160200161033c9190610a66565b604051602081830303815290604052905061044f565b5f85855f81811061036657610365610a7f565b5b9050013560f81c60f81b60f81c60ff1690506040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012086868360016103c49190610ae2565b9080926103d39392919061091a565b6040516103e1929190610b15565b604051809103902014610429576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161042090610b9d565b60405180910390fd5b61dead60405160200161043c9190610a66565b6040516020818303038152906040529150505b949350505050565b6001602052825f5260405f20602052815f5260405f20602052805f5260405f205f92509250509054906101000a900460ff1681565b5f6301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610518816104e4565b8114610522575f5ffd5b50565b5f813590506105338161050f565b92915050565b5f6020828403121561054e5761054d6104dc565b5b5f61055b84828501610525565b91505092915050565b5f8115159050919050565b61057881610564565b82525050565b5f6020820190506105915f83018461056f565b92915050565b5f819050919050565b6105a981610597565b81146105b3575f5ffd5b50565b5f813590506105c4816105a0565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105f3826105ca565b9050919050565b610603816105e9565b811461060d575f5ffd5b50565b5f8135905061061e816105fa565b92915050565b61062d81610564565b8114610637575f5ffd5b50565b5f8135905061064881610624565b92915050565b5f5f5f60608486031215610665576106646104dc565b5b5f610672868287016105b6565b935050602061068386828701610610565b92505060406106948682870161063a565b9150509250925092565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126106bf576106be61069e565b5b8235905067ffffffffffffffff8111156106dc576106db6106a2565b5b6020830191508360018202830111156106f8576106f76106a6565b5b9250929050565b5f5f5f5f60408587031215610717576107166104dc565b5b5f85013567ffffffffffffffff811115610734576107336104e0565b5b610740878288016106aa565b9450945050602085013567ffffffffffffffff811115610763576107626104e0565b5b61076f878288016106aa565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6107bf8261077d565b6107c98185610787565b93506107d9818560208601610797565b6107e2816107a5565b840191505092915050565b5f6020820190508181035f83015261080581846107b5565b905092915050565b5f5f5f60608486031215610824576108236104dc565b5b5f610831868287016105b6565b935050602061084286828701610610565b925050604061085386828701610610565b9150509250925092565b61086681610597565b82525050565b610875816105e9565b82525050565b5f60808201905061088e5f83018761085d565b61089b602083018661086c565b6108a8604083018561086c565b6108b5606083018461056f565b95945050505050565b5f81905092915050565b828183375f83830152505050565b5f6108e183856108be565b93506108ee8385846108c8565b82840190509392505050565b5f6109068284866108d6565b91508190509392505050565b5f5ffd5b5f5ffd5b5f5f8585111561092d5761092c610912565b5b8386111561093e5761093d610916565b5b6001850283019150848603905094509492505050565b5f82905092915050565b5f82821b905092915050565b5f6109758383610954565b826109808135610597565b925060208210156109c0576109bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8360200360080261095e565b831692505b505092915050565b5f82825260208201905092915050565b7f706172656e7420646f6d61696e206e6f742076616c69646174656420617070725f8201527f6f7072696174656c790000000000000000000000000000000000000000000000602082015250565b5f610a326029836109c8565b9150610a3d826109d8565b604082019050919050565b5f6020820190508181035f830152610a5f81610a26565b9050919050565b5f602082019050610a795f83018461086c565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610aec82610aac565b9150610af783610aac565b9250828201905080821115610b0f57610b0e610ab5565b5b92915050565b5f610b218284866108d6565b91508190509392505050565b7f737562646f6d61696e206e6f742076616c69646174656420617070726f7072695f8201527f6174656c79000000000000000000000000000000000000000000000000000000602082015250565b5f610b876025836109c8565b9150610b9282610b2d565b604082019050919050565b5f6020820190508181035f830152610bb481610b7b565b905091905056fea2646970667358221220bf35eed7cb3f414c286db6d220ff34e7427664433184989b1976b689865eafc464736f6c634300081d0033" # noqa: E501 -EXTENDED_RESOLVER_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061004a575f3560e01c806301ffc9a71461004e5780633e9ce7941461007e5780639061b9231461009a578063f86bc879146100ca575b5f5ffd5b61006860048036038101906100639190610539565b6100fa565b604051610075919061057e565b60405180910390f35b6100986004803603810190610093919061064e565b61015a565b005b6100b460048036038101906100af91906106ff565b61023a565b6040516100c191906107ed565b60405180910390f35b6100e460048036038101906100df919061080d565b610457565b6040516100f1919061057e565b60405180910390f35b5f639061b92360e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061015357506101528261048c565b5b9050919050565b8060015f8581526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df8333848460405161022d949392919061087b565b60405180910390a1505050565b60606040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012085856040516102899291906108fa565b60405180910390201480156102a2575060248383905010155b15610352577ff0a378cc2afe91730d0105e67d6bb037cc5b8b6bfec5b5962d9b637ff6497e555f1b83836004906024926102de9392919061091a565b906102e9919061096a565b14610329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032090610a48565b60405180910390fd5b61beef60405160200161033c9190610a66565b604051602081830303815290604052905061044f565b5f85855f81811061036657610365610a7f565b5b9050013560f81c60f81b60f81c60ff1690506040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012086868360016103c49190610ae2565b9080926103d39392919061091a565b6040516103e1929190610b15565b604051809103902014610429576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161042090610b9d565b60405180910390fd5b61dead60405160200161043c9190610a66565b6040516020818303038152906040529150505b949350505050565b6001602052825f5260405f20602052815f5260405f20602052805f5260405f205f92509250509054906101000a900460ff1681565b5f6301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610518816104e4565b8114610522575f5ffd5b50565b5f813590506105338161050f565b92915050565b5f6020828403121561054e5761054d6104dc565b5b5f61055b84828501610525565b91505092915050565b5f8115159050919050565b61057881610564565b82525050565b5f6020820190506105915f83018461056f565b92915050565b5f819050919050565b6105a981610597565b81146105b3575f5ffd5b50565b5f813590506105c4816105a0565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105f3826105ca565b9050919050565b610603816105e9565b811461060d575f5ffd5b50565b5f8135905061061e816105fa565b92915050565b61062d81610564565b8114610637575f5ffd5b50565b5f8135905061064881610624565b92915050565b5f5f5f60608486031215610665576106646104dc565b5b5f610672868287016105b6565b935050602061068386828701610610565b92505060406106948682870161063a565b9150509250925092565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126106bf576106be61069e565b5b8235905067ffffffffffffffff8111156106dc576106db6106a2565b5b6020830191508360018202830111156106f8576106f76106a6565b5b9250929050565b5f5f5f5f60408587031215610717576107166104dc565b5b5f85013567ffffffffffffffff811115610734576107336104e0565b5b610740878288016106aa565b9450945050602085013567ffffffffffffffff811115610763576107626104e0565b5b61076f878288016106aa565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6107bf8261077d565b6107c98185610787565b93506107d9818560208601610797565b6107e2816107a5565b840191505092915050565b5f6020820190508181035f83015261080581846107b5565b905092915050565b5f5f5f60608486031215610824576108236104dc565b5b5f610831868287016105b6565b935050602061084286828701610610565b925050604061085386828701610610565b9150509250925092565b61086681610597565b82525050565b610875816105e9565b82525050565b5f60808201905061088e5f83018761085d565b61089b602083018661086c565b6108a8604083018561086c565b6108b5606083018461056f565b95945050505050565b5f81905092915050565b828183375f83830152505050565b5f6108e183856108be565b93506108ee8385846108c8565b82840190509392505050565b5f6109068284866108d6565b91508190509392505050565b5f5ffd5b5f5ffd5b5f5f8585111561092d5761092c610912565b5b8386111561093e5761093d610916565b5b6001850283019150848603905094509492505050565b5f82905092915050565b5f82821b905092915050565b5f6109758383610954565b826109808135610597565b925060208210156109c0576109bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8360200360080261095e565b831692505b505092915050565b5f82825260208201905092915050565b7f706172656e7420646f6d61696e206e6f742076616c69646174656420617070725f8201527f6f7072696174656c790000000000000000000000000000000000000000000000602082015250565b5f610a326029836109c8565b9150610a3d826109d8565b604082019050919050565b5f6020820190508181035f830152610a5f81610a26565b9050919050565b5f602082019050610a795f83018461086c565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610aec82610aac565b9150610af783610aac565b9250828201905080821115610b0f57610b0e610ab5565b5b92915050565b5f610b218284866108d6565b91508190509392505050565b7f737562646f6d61696e206e6f742076616c69646174656420617070726f7072695f8201527f6174656c79000000000000000000000000000000000000000000000000000000602082015250565b5f610b876025836109c8565b9150610b9282610b2d565b604082019050919050565b5f6020820190508181035f830152610bb481610b7b565b905091905056fea2646970667358221220bf35eed7cb3f414c286db6d220ff34e7427664433184989b1976b689865eafc464736f6c634300081d0033" # noqa: E501 +EXTENDED_RESOLVER_BYTECODE = "0x608060405234801561000f575f5ffd5b50604051610d0e380380610d0e833981810160405281019061003191906100e5565b805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610110565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100a38261007a565b9050919050565b5f6100b482610099565b9050919050565b6100c4816100aa565b81146100ce575f5ffd5b50565b5f815190506100df816100bb565b92915050565b5f602082840312156100fa576100f9610076565b5b5f610107848285016100d1565b91505092915050565b610bf18061011d5f395ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c806301ffc9a71461004e5780633e9ce7941461007e5780639061b9231461009a578063f86bc879146100ca575b5f5ffd5b61006860048036038101906100639190610539565b6100fa565b604051610075919061057e565b60405180910390f35b6100986004803603810190610093919061064e565b61015a565b005b6100b460048036038101906100af91906106ff565b61023a565b6040516100c191906107ed565b60405180910390f35b6100e460048036038101906100df919061080d565b610457565b6040516100f1919061057e565b60405180910390f35b5f639061b92360e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061015357506101528261048c565b5b9050919050565b8060015f8581526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df8333848460405161022d949392919061087b565b60405180910390a1505050565b60606040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012085856040516102899291906108fa565b60405180910390201480156102a2575060248383905010155b15610352577ff0a378cc2afe91730d0105e67d6bb037cc5b8b6bfec5b5962d9b637ff6497e555f1b83836004906024926102de9392919061091a565b906102e9919061096a565b14610329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032090610a48565b60405180910390fd5b61beef60405160200161033c9190610a66565b604051602081830303815290604052905061044f565b5f85855f81811061036657610365610a7f565b5b9050013560f81c60f81b60f81c60ff1690506040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012086868360016103c49190610ae2565b9080926103d39392919061091a565b6040516103e1929190610b15565b604051809103902014610429576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161042090610b9d565b60405180910390fd5b61dead60405160200161043c9190610a66565b6040516020818303038152906040529150505b949350505050565b6001602052825f5260405f20602052815f5260405f20602052805f5260405f205f92509250509054906101000a900460ff1681565b5f6301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610518816104e4565b8114610522575f5ffd5b50565b5f813590506105338161050f565b92915050565b5f6020828403121561054e5761054d6104dc565b5b5f61055b84828501610525565b91505092915050565b5f8115159050919050565b61057881610564565b82525050565b5f6020820190506105915f83018461056f565b92915050565b5f819050919050565b6105a981610597565b81146105b3575f5ffd5b50565b5f813590506105c4816105a0565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105f3826105ca565b9050919050565b610603816105e9565b811461060d575f5ffd5b50565b5f8135905061061e816105fa565b92915050565b61062d81610564565b8114610637575f5ffd5b50565b5f8135905061064881610624565b92915050565b5f5f5f60608486031215610665576106646104dc565b5b5f610672868287016105b6565b935050602061068386828701610610565b92505060406106948682870161063a565b9150509250925092565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126106bf576106be61069e565b5b8235905067ffffffffffffffff8111156106dc576106db6106a2565b5b6020830191508360018202830111156106f8576106f76106a6565b5b9250929050565b5f5f5f5f60408587031215610717576107166104dc565b5b5f85013567ffffffffffffffff811115610734576107336104e0565b5b610740878288016106aa565b9450945050602085013567ffffffffffffffff811115610763576107626104e0565b5b61076f878288016106aa565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6107bf8261077d565b6107c98185610787565b93506107d9818560208601610797565b6107e2816107a5565b840191505092915050565b5f6020820190508181035f83015261080581846107b5565b905092915050565b5f5f5f60608486031215610824576108236104dc565b5b5f610831868287016105b6565b935050602061084286828701610610565b925050604061085386828701610610565b9150509250925092565b61086681610597565b82525050565b610875816105e9565b82525050565b5f60808201905061088e5f83018761085d565b61089b602083018661086c565b6108a8604083018561086c565b6108b5606083018461056f565b95945050505050565b5f81905092915050565b828183375f83830152505050565b5f6108e183856108be565b93506108ee8385846108c8565b82840190509392505050565b5f6109068284866108d6565b91508190509392505050565b5f5ffd5b5f5ffd5b5f5f8585111561092d5761092c610912565b5b8386111561093e5761093d610916565b5b6001850283019150848603905094509492505050565b5f82905092915050565b5f82821b905092915050565b5f6109758383610954565b826109808135610597565b925060208210156109c0576109bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8360200360080261095e565b831692505b505092915050565b5f82825260208201905092915050565b7f706172656e7420646f6d61696e206e6f742076616c69646174656420617070725f8201527f6f7072696174656c790000000000000000000000000000000000000000000000602082015250565b5f610a326029836109c8565b9150610a3d826109d8565b604082019050919050565b5f6020820190508181035f830152610a5f81610a26565b9050919050565b5f602082019050610a795f83018461086c565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610aec82610aac565b9150610af783610aac565b9250828201905080821115610b0f57610b0e610ab5565b5b92915050565b5f610b218284866108d6565b91508190509392505050565b7f737562646f6d61696e206e6f742076616c69646174656420617070726f7072695f8201527f6174656c79000000000000000000000000000000000000000000000000000000602082015250565b5f610b876025836109c8565b9150610b9282610b2d565b604082019050919050565b5f6020820190508181035f830152610bb481610b7b565b905091905056fea264697066735822122091498a4fca0bd22837d270a021cf395acdf414968915cd266dcd8fad47ed15d864736f6c634300081e0033" # noqa: E501 +EXTENDED_RESOLVER_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061004a575f3560e01c806301ffc9a71461004e5780633e9ce7941461007e5780639061b9231461009a578063f86bc879146100ca575b5f5ffd5b61006860048036038101906100639190610539565b6100fa565b604051610075919061057e565b60405180910390f35b6100986004803603810190610093919061064e565b61015a565b005b6100b460048036038101906100af91906106ff565b61023a565b6040516100c191906107ed565b60405180910390f35b6100e460048036038101906100df919061080d565b610457565b6040516100f1919061057e565b60405180910390f35b5f639061b92360e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061015357506101528261048c565b5b9050919050565b8060015f8581526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fe1c5610a6e0cbe10764ecd182adcef1ec338dc4e199c99c32ce98f38e12791df8333848460405161022d949392919061087b565b60405180910390a1505050565b60606040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012085856040516102899291906108fa565b60405180910390201480156102a2575060248383905010155b15610352577ff0a378cc2afe91730d0105e67d6bb037cc5b8b6bfec5b5962d9b637ff6497e555f1b83836004906024926102de9392919061091a565b906102e9919061096a565b14610329576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032090610a48565b60405180910390fd5b61beef60405160200161033c9190610a66565b604051602081830303815290604052905061044f565b5f85855f81811061036657610365610a7f565b5b9050013560f81c60f81b60f81c60ff1690506040518060400160405280601781526020017f11657874656e6465642d7265736f6c76657203657468000000000000000000008152508051906020012086868360016103c49190610ae2565b9080926103d39392919061091a565b6040516103e1929190610b15565b604051809103902014610429576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161042090610b9d565b60405180910390fd5b61dead60405160200161043c9190610a66565b6040516020818303038152906040529150505b949350505050565b6001602052825f5260405f20602052815f5260405f20602052805f5260405f205f92509250509054906101000a900460ff1681565b5f6301ffc9a760e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610518816104e4565b8114610522575f5ffd5b50565b5f813590506105338161050f565b92915050565b5f6020828403121561054e5761054d6104dc565b5b5f61055b84828501610525565b91505092915050565b5f8115159050919050565b61057881610564565b82525050565b5f6020820190506105915f83018461056f565b92915050565b5f819050919050565b6105a981610597565b81146105b3575f5ffd5b50565b5f813590506105c4816105a0565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105f3826105ca565b9050919050565b610603816105e9565b811461060d575f5ffd5b50565b5f8135905061061e816105fa565b92915050565b61062d81610564565b8114610637575f5ffd5b50565b5f8135905061064881610624565b92915050565b5f5f5f60608486031215610665576106646104dc565b5b5f610672868287016105b6565b935050602061068386828701610610565b92505060406106948682870161063a565b9150509250925092565b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f8401126106bf576106be61069e565b5b8235905067ffffffffffffffff8111156106dc576106db6106a2565b5b6020830191508360018202830111156106f8576106f76106a6565b5b9250929050565b5f5f5f5f60408587031215610717576107166104dc565b5b5f85013567ffffffffffffffff811115610734576107336104e0565b5b610740878288016106aa565b9450945050602085013567ffffffffffffffff811115610763576107626104e0565b5b61076f878288016106aa565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6107bf8261077d565b6107c98185610787565b93506107d9818560208601610797565b6107e2816107a5565b840191505092915050565b5f6020820190508181035f83015261080581846107b5565b905092915050565b5f5f5f60608486031215610824576108236104dc565b5b5f610831868287016105b6565b935050602061084286828701610610565b925050604061085386828701610610565b9150509250925092565b61086681610597565b82525050565b610875816105e9565b82525050565b5f60808201905061088e5f83018761085d565b61089b602083018661086c565b6108a8604083018561086c565b6108b5606083018461056f565b95945050505050565b5f81905092915050565b828183375f83830152505050565b5f6108e183856108be565b93506108ee8385846108c8565b82840190509392505050565b5f6109068284866108d6565b91508190509392505050565b5f5ffd5b5f5ffd5b5f5f8585111561092d5761092c610912565b5b8386111561093e5761093d610916565b5b6001850283019150848603905094509492505050565b5f82905092915050565b5f82821b905092915050565b5f6109758383610954565b826109808135610597565b925060208210156109c0576109bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8360200360080261095e565b831692505b505092915050565b5f82825260208201905092915050565b7f706172656e7420646f6d61696e206e6f742076616c69646174656420617070725f8201527f6f7072696174656c790000000000000000000000000000000000000000000000602082015250565b5f610a326029836109c8565b9150610a3d826109d8565b604082019050919050565b5f6020820190508181035f830152610a5f81610a26565b9050919050565b5f602082019050610a795f83018461086c565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610aec82610aac565b9150610af783610aac565b9250828201905080821115610b0f57610b0e610ab5565b5b92915050565b5f610b218284866108d6565b91508190509392505050565b7f737562646f6d61696e206e6f742076616c69646174656420617070726f7072695f8201527f6174656c79000000000000000000000000000000000000000000000000000000602082015250565b5f610b876025836109c8565b9150610b9282610b2d565b604082019050919050565b5f6020820190508181035f830152610bb481610b7b565b905091905056fea264697066735822122091498a4fca0bd22837d270a021cf395acdf414968915cd266dcd8fad47ed15d864736f6c634300081e0033" # noqa: E501 EXTENDED_RESOLVER_ABI = [ { "inputs": [{"internalType": "contract ENS", "name": "_ens", "type": "address"}], diff --git a/web3/_utils/contract_sources/contract_data/fallback_function_contract.py b/web3/_utils/contract_sources/contract_data/fallback_function_contract.py index 2e5477f74f..7979258973 100644 --- a/web3/_utils/contract_sources/contract_data/fallback_function_contract.py +++ b/web3/_utils/contract_sources/contract_data/fallback_function_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/FallbackFunctionContract.sol:FallbackFunctionContract # noqa: E501 -FALLBACK_FUNCTION_CONTRACT_BYTECODE = "0x60806040525f5f8190555060b78060155f395ff3fe6080604052348015600e575f5ffd5b50600436106029575f3560e01c80633bc5de3014603257602a565b5b60015f819055005b6038604c565b60405160439190606a565b60405180910390f35b5f5f54905090565b5f819050919050565b6064816054565b82525050565b5f602082019050607b5f830184605d565b9291505056fea26469706673582212205532f9dfc9529531db763183d959a0acb2b3e0569420ceeead65e2867611d8f664736f6c634300081d0033" # noqa: E501 -FALLBACK_FUNCTION_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106029575f3560e01c80633bc5de3014603257602a565b5b60015f819055005b6038604c565b60405160439190606a565b60405180910390f35b5f5f54905090565b5f819050919050565b6064816054565b82525050565b5f602082019050607b5f830184605d565b9291505056fea26469706673582212205532f9dfc9529531db763183d959a0acb2b3e0569420ceeead65e2867611d8f664736f6c634300081d0033" # noqa: E501 +FALLBACK_FUNCTION_CONTRACT_BYTECODE = "0x60806040525f5f8190555060b78060155f395ff3fe6080604052348015600e575f5ffd5b50600436106029575f3560e01c80633bc5de3014603257602a565b5b60015f819055005b6038604c565b60405160439190606a565b60405180910390f35b5f5f54905090565b5f819050919050565b6064816054565b82525050565b5f602082019050607b5f830184605d565b9291505056fea264697066735822122046c6693c62c80acbe96048ed262cd69dc31f380a491d7c6dcd21dab372b0f49f64736f6c634300081e0033" # noqa: E501 +FALLBACK_FUNCTION_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106029575f3560e01c80633bc5de3014603257602a565b5b60015f819055005b6038604c565b60405160439190606a565b60405180910390f35b5f5f54905090565b5f819050919050565b6064816054565b82525050565b5f602082019050607b5f830184605d565b9291505056fea264697066735822122046c6693c62c80acbe96048ed262cd69dc31f380a491d7c6dcd21dab372b0f49f64736f6c634300081e0033" # noqa: E501 FALLBACK_FUNCTION_CONTRACT_ABI = [ {"inputs": [], "stateMutability": "payable", "type": "constructor"}, {"stateMutability": "nonpayable", "type": "fallback"}, diff --git a/web3/_utils/contract_sources/contract_data/function_name_tester_contract.py b/web3/_utils/contract_sources/contract_data/function_name_tester_contract.py index 6945326e3b..d7fc961503 100644 --- a/web3/_utils/contract_sources/contract_data/function_name_tester_contract.py +++ b/web3/_utils/contract_sources/contract_data/function_name_tester_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/FunctionNameTesterContract.sol:FunctionNameTesterContract # noqa: E501 -FUNCTION_NAME_TESTER_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5060dc80601a5f395ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063a044c987146034578063c5d7802e14604e575b5f5ffd5b603a6068565b60405160459190608f565b60405180910390f35b60546070565b604051605f9190608f565b60405180910390f35b5f6001905090565b5f5f905090565b5f8115159050919050565b6089816077565b82525050565b5f60208201905060a05f8301846082565b9291505056fea26469706673582212201d1ee508aecb63d82caa526ffa59266c74aa43b1549c5c1cd502e7f273136c6364736f6c634300081d0033" # noqa: E501 -FUNCTION_NAME_TESTER_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063a044c987146034578063c5d7802e14604e575b5f5ffd5b603a6068565b60405160459190608f565b60405180910390f35b60546070565b604051605f9190608f565b60405180910390f35b5f6001905090565b5f5f905090565b5f8115159050919050565b6089816077565b82525050565b5f60208201905060a05f8301846082565b9291505056fea26469706673582212201d1ee508aecb63d82caa526ffa59266c74aa43b1549c5c1cd502e7f273136c6364736f6c634300081d0033" # noqa: E501 +FUNCTION_NAME_TESTER_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5060dc80601a5f395ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063a044c987146034578063c5d7802e14604e575b5f5ffd5b603a6068565b60405160459190608f565b60405180910390f35b60546070565b604051605f9190608f565b60405180910390f35b5f6001905090565b5f5f905090565b5f8115159050919050565b6089816077565b82525050565b5f60208201905060a05f8301846082565b9291505056fea2646970667358221220e80d421a7d25249f02ba1ad2cb1bf575d771f76cd10c51edd44fcbfe3307088564736f6c634300081e0033" # noqa: E501 +FUNCTION_NAME_TESTER_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063a044c987146034578063c5d7802e14604e575b5f5ffd5b603a6068565b60405160459190608f565b60405180910390f35b60546070565b604051605f9190608f565b60405180910390f35b5f6001905090565b5f5f905090565b5f8115159050919050565b6089816077565b82525050565b5f60208201905060a05f8301846082565b9291505056fea2646970667358221220e80d421a7d25249f02ba1ad2cb1bf575d771f76cd10c51edd44fcbfe3307088564736f6c634300081e0033" # noqa: E501 FUNCTION_NAME_TESTER_CONTRACT_ABI = [ { "inputs": [], diff --git a/web3/_utils/contract_sources/contract_data/math_contract.py b/web3/_utils/contract_sources/contract_data/math_contract.py index 9152c4ccc5..1d0bfef96b 100644 --- a/web3/_utils/contract_sources/contract_data/math_contract.py +++ b/web3/_utils/contract_sources/contract_data/math_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/MathContract.sol:MathContract -MATH_CONTRACT_BYTECODE = "0x60806040525f5f553480156011575f5ffd5b5061052d8061001f5f395ff3fe608060405260043610610054575f3560e01c806316216f39146100585780635b34b9661461008257806361bc221a146100a05780636abbb3b4146100ca578063a5f3c23b146100fa578063dcf537b11461012a575b5f5ffd5b348015610063575f5ffd5b5061006c61015a565b604051610079919061024f565b60405180910390f35b61008a610162565b6040516100979190610280565b60405180910390f35b3480156100ab575f5ffd5b506100b46101b5565b6040516100c19190610280565b60405180910390f35b6100e460048036038101906100df91906102c7565b6101ba565b6040516100f19190610280565b60405180910390f35b610114600480360381019061010f919061031c565b61020d565b604051610121919061024f565b60405180910390f35b610144600480360381019061013f919061035a565b610222565b604051610151919061024f565b60405180910390f35b5f600d905090565b5f60015f5461017191906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c560016040516101a69190610427565b60405180910390a15f54905090565b5f5481565b5f815f546101c891906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c5826040516101fc9190610280565b60405180910390a15f549050919050565b5f818361021a9190610440565b905092915050565b5f6007826102309190610481565b9050919050565b5f819050919050565b61024981610237565b82525050565b5f6020820190506102625f830184610240565b92915050565b5f819050919050565b61027a81610268565b82525050565b5f6020820190506102935f830184610271565b92915050565b5f5ffd5b6102a681610268565b81146102b0575f5ffd5b50565b5f813590506102c18161029d565b92915050565b5f602082840312156102dc576102db610299565b5b5f6102e9848285016102b3565b91505092915050565b6102fb81610237565b8114610305575f5ffd5b50565b5f81359050610316816102f2565b92915050565b5f5f6040838503121561033257610331610299565b5b5f61033f85828601610308565b925050602061035085828601610308565b9150509250929050565b5f6020828403121561036f5761036e610299565b5b5f61037c84828501610308565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103bc82610268565b91506103c783610268565b92508282019050808211156103df576103de610385565b5b92915050565b5f819050919050565b5f819050919050565b5f61041161040c610407846103e5565b6103ee565b610268565b9050919050565b610421816103f7565b82525050565b5f60208201905061043a5f830184610418565b92915050565b5f61044a82610237565b915061045583610237565b92508282019050828112155f8312168382125f84121516171561047b5761047a610385565b5b92915050565b5f61048b82610237565b915061049683610237565b92508282026104a481610237565b91507f800000000000000000000000000000000000000000000000000000000000000084145f841216156104db576104da610385565b5b82820584148315176104f0576104ef610385565b5b509291505056fea2646970667358221220e032b1a9578c07f07a92319a3d74eb8a78222c7f4819237371dee238ecdfde6264736f6c634300081d0033" # noqa: E501 -MATH_CONTRACT_RUNTIME = "0x608060405260043610610054575f3560e01c806316216f39146100585780635b34b9661461008257806361bc221a146100a05780636abbb3b4146100ca578063a5f3c23b146100fa578063dcf537b11461012a575b5f5ffd5b348015610063575f5ffd5b5061006c61015a565b604051610079919061024f565b60405180910390f35b61008a610162565b6040516100979190610280565b60405180910390f35b3480156100ab575f5ffd5b506100b46101b5565b6040516100c19190610280565b60405180910390f35b6100e460048036038101906100df91906102c7565b6101ba565b6040516100f19190610280565b60405180910390f35b610114600480360381019061010f919061031c565b61020d565b604051610121919061024f565b60405180910390f35b610144600480360381019061013f919061035a565b610222565b604051610151919061024f565b60405180910390f35b5f600d905090565b5f60015f5461017191906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c560016040516101a69190610427565b60405180910390a15f54905090565b5f5481565b5f815f546101c891906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c5826040516101fc9190610280565b60405180910390a15f549050919050565b5f818361021a9190610440565b905092915050565b5f6007826102309190610481565b9050919050565b5f819050919050565b61024981610237565b82525050565b5f6020820190506102625f830184610240565b92915050565b5f819050919050565b61027a81610268565b82525050565b5f6020820190506102935f830184610271565b92915050565b5f5ffd5b6102a681610268565b81146102b0575f5ffd5b50565b5f813590506102c18161029d565b92915050565b5f602082840312156102dc576102db610299565b5b5f6102e9848285016102b3565b91505092915050565b6102fb81610237565b8114610305575f5ffd5b50565b5f81359050610316816102f2565b92915050565b5f5f6040838503121561033257610331610299565b5b5f61033f85828601610308565b925050602061035085828601610308565b9150509250929050565b5f6020828403121561036f5761036e610299565b5b5f61037c84828501610308565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103bc82610268565b91506103c783610268565b92508282019050808211156103df576103de610385565b5b92915050565b5f819050919050565b5f819050919050565b5f61041161040c610407846103e5565b6103ee565b610268565b9050919050565b610421816103f7565b82525050565b5f60208201905061043a5f830184610418565b92915050565b5f61044a82610237565b915061045583610237565b92508282019050828112155f8312168382125f84121516171561047b5761047a610385565b5b92915050565b5f61048b82610237565b915061049683610237565b92508282026104a481610237565b91507f800000000000000000000000000000000000000000000000000000000000000084145f841216156104db576104da610385565b5b82820584148315176104f0576104ef610385565b5b509291505056fea2646970667358221220e032b1a9578c07f07a92319a3d74eb8a78222c7f4819237371dee238ecdfde6264736f6c634300081d0033" # noqa: E501 +MATH_CONTRACT_BYTECODE = "0x60806040525f5f553480156011575f5ffd5b5061052d8061001f5f395ff3fe608060405260043610610054575f3560e01c806316216f39146100585780635b34b9661461008257806361bc221a146100a05780636abbb3b4146100ca578063a5f3c23b146100fa578063dcf537b11461012a575b5f5ffd5b348015610063575f5ffd5b5061006c61015a565b604051610079919061024f565b60405180910390f35b61008a610162565b6040516100979190610280565b60405180910390f35b3480156100ab575f5ffd5b506100b46101b5565b6040516100c19190610280565b60405180910390f35b6100e460048036038101906100df91906102c7565b6101ba565b6040516100f19190610280565b60405180910390f35b610114600480360381019061010f919061031c565b61020d565b604051610121919061024f565b60405180910390f35b610144600480360381019061013f919061035a565b610222565b604051610151919061024f565b60405180910390f35b5f600d905090565b5f60015f5461017191906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c560016040516101a69190610427565b60405180910390a15f54905090565b5f5481565b5f815f546101c891906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c5826040516101fc9190610280565b60405180910390a15f549050919050565b5f818361021a9190610440565b905092915050565b5f6007826102309190610481565b9050919050565b5f819050919050565b61024981610237565b82525050565b5f6020820190506102625f830184610240565b92915050565b5f819050919050565b61027a81610268565b82525050565b5f6020820190506102935f830184610271565b92915050565b5f5ffd5b6102a681610268565b81146102b0575f5ffd5b50565b5f813590506102c18161029d565b92915050565b5f602082840312156102dc576102db610299565b5b5f6102e9848285016102b3565b91505092915050565b6102fb81610237565b8114610305575f5ffd5b50565b5f81359050610316816102f2565b92915050565b5f5f6040838503121561033257610331610299565b5b5f61033f85828601610308565b925050602061035085828601610308565b9150509250929050565b5f6020828403121561036f5761036e610299565b5b5f61037c84828501610308565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103bc82610268565b91506103c783610268565b92508282019050808211156103df576103de610385565b5b92915050565b5f819050919050565b5f819050919050565b5f61041161040c610407846103e5565b6103ee565b610268565b9050919050565b610421816103f7565b82525050565b5f60208201905061043a5f830184610418565b92915050565b5f61044a82610237565b915061045583610237565b92508282019050828112155f8312168382125f84121516171561047b5761047a610385565b5b92915050565b5f61048b82610237565b915061049683610237565b92508282026104a481610237565b91507f800000000000000000000000000000000000000000000000000000000000000084145f841216156104db576104da610385565b5b82820584148315176104f0576104ef610385565b5b509291505056fea264697066735822122011a65cebc9a2456d3d12ae6d239cb90e576295a155544d2515af1db2cdc5c71a64736f6c634300081e0033" # noqa: E501 +MATH_CONTRACT_RUNTIME = "0x608060405260043610610054575f3560e01c806316216f39146100585780635b34b9661461008257806361bc221a146100a05780636abbb3b4146100ca578063a5f3c23b146100fa578063dcf537b11461012a575b5f5ffd5b348015610063575f5ffd5b5061006c61015a565b604051610079919061024f565b60405180910390f35b61008a610162565b6040516100979190610280565b60405180910390f35b3480156100ab575f5ffd5b506100b46101b5565b6040516100c19190610280565b60405180910390f35b6100e460048036038101906100df91906102c7565b6101ba565b6040516100f19190610280565b60405180910390f35b610114600480360381019061010f919061031c565b61020d565b604051610121919061024f565b60405180910390f35b610144600480360381019061013f919061035a565b610222565b604051610151919061024f565b60405180910390f35b5f600d905090565b5f60015f5461017191906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c560016040516101a69190610427565b60405180910390a15f54905090565b5f5481565b5f815f546101c891906103b2565b5f819055507f3496c3ede4ec3ab3686712aa1c238593ea6a42df83f98a5ec7df9834cfa577c5826040516101fc9190610280565b60405180910390a15f549050919050565b5f818361021a9190610440565b905092915050565b5f6007826102309190610481565b9050919050565b5f819050919050565b61024981610237565b82525050565b5f6020820190506102625f830184610240565b92915050565b5f819050919050565b61027a81610268565b82525050565b5f6020820190506102935f830184610271565b92915050565b5f5ffd5b6102a681610268565b81146102b0575f5ffd5b50565b5f813590506102c18161029d565b92915050565b5f602082840312156102dc576102db610299565b5b5f6102e9848285016102b3565b91505092915050565b6102fb81610237565b8114610305575f5ffd5b50565b5f81359050610316816102f2565b92915050565b5f5f6040838503121561033257610331610299565b5b5f61033f85828601610308565b925050602061035085828601610308565b9150509250929050565b5f6020828403121561036f5761036e610299565b5b5f61037c84828501610308565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6103bc82610268565b91506103c783610268565b92508282019050808211156103df576103de610385565b5b92915050565b5f819050919050565b5f819050919050565b5f61041161040c610407846103e5565b6103ee565b610268565b9050919050565b610421816103f7565b82525050565b5f60208201905061043a5f830184610418565b92915050565b5f61044a82610237565b915061045583610237565b92508282019050828112155f8312168382125f84121516171561047b5761047a610385565b5b92915050565b5f61048b82610237565b915061049683610237565b92508282026104a481610237565b91507f800000000000000000000000000000000000000000000000000000000000000084145f841216156104db576104da610385565b5b82820584148315176104f0576104ef610385565b5b509291505056fea264697066735822122011a65cebc9a2456d3d12ae6d239cb90e576295a155544d2515af1db2cdc5c71a64736f6c634300081e0033" # noqa: E501 MATH_CONTRACT_ABI = [ { "anonymous": False, diff --git a/web3/_utils/contract_sources/contract_data/offchain_lookup.py b/web3/_utils/contract_sources/contract_data/offchain_lookup.py index 0ec9c78de7..77159a6a83 100644 --- a/web3/_utils/contract_sources/contract_data/offchain_lookup.py +++ b/web3/_utils/contract_sources/contract_data/offchain_lookup.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/OffchainLookup.sol:OffchainLookup -OFFCHAIN_LOOKUP_BYTECODE = "0x608060405260405180604001604052806040518060600160405280602c815260200161105e602c913981526020016040518060400160405280601781526020017f68747470733a2f2f776562332e70792f676174657761790000000000000000008152508152505f906002610075929190610087565b50348015610081575f5ffd5b50610465565b828054828255905f5260205f209081019282156100cd579160200282015b828111156100cc5782518290816100bc9190610396565b50916020019190600101906100a5565b5b5090506100da91906100de565b5090565b5b808211156100fd575f81816100f49190610101565b506001016100df565b5090565b50805461010d906101bd565b5f825580601f1061011e575061013b565b601f0160209004905f5260205f209081019061013a919061013e565b5b50565b5b80821115610155575f815f90555060010161013f565b5090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806101d457607f821691505b6020821081036101e7576101e6610190565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026102497fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261020e565b610253868361020e565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61029761029261028d8461026b565b610274565b61026b565b9050919050565b5f819050919050565b6102b08361027d565b6102c46102bc8261029e565b84845461021a565b825550505050565b5f5f905090565b6102db6102cc565b6102e68184846102a7565b505050565b5b81811015610309576102fe5f826102d3565b6001810190506102ec565b5050565b601f82111561034e5761031f816101ed565b610328846101ff565b81016020851015610337578190505b61034b610343856101ff565b8301826102eb565b50505b505050565b5f82821c905092915050565b5f61036e5f1984600802610353565b1980831691505092915050565b5f610386838361035f565b9150826002028217905092915050565b61039f82610159565b67ffffffffffffffff8111156103b8576103b7610163565b5b6103c282546101bd565b6103cd82828561030d565b5f60209050601f8311600181146103fe575f84156103ec578287015190505b6103f6858261037b565b86555061045d565b601f19841661040c866101ed565b5f5b828110156104335784890151825560018201915060208501945060208101905061040e565b86831015610450578489015161044c601f89168261035f565b8355505b6001600288020188555050505b505050505050565b610bec806104725f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c806309a3c01b146100435780636337ed5814610061578063da96d05a14610091575b5f5ffd5b61004b6100c1565b60405161005891906103f2565b60405180910390f35b61007b60048036038101906100769190610484565b610110565b60405161008891906103f2565b60405180910390f35b6100ab60048036038101906100a691906104cf565b6101fc565b6040516100b891906103f2565b60405180910390f35b606080305f826309a3c01b60e01b846040517f556f1830000000000000000000000000000000000000000000000000000000008152600401610107959493929190610783565b60405180910390fd5b60605f83838101906101229190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af07581604051602001610156919061099c565b60405160208183030381529060405280519060200120146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a390610a0c565b60405180910390fd5b305f858563da96d05a60e01b88886040517f556f18300000000000000000000000000000000000000000000000000000000081526004016101f39796959493929190610a56565b60405180910390fd5b60605f858581019061020e9190610911565b90507faed76f463930323372899e36460e078e5292aac45f645bbe567be6fca83ede1081604051602001610242919061099c565b6040516020818303038152906040528051906020012014610298576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028f90610b30565b60405180910390fd5b5f84848101906102a89190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af075816040516020016102dc919061099c565b6040516020818303038152906040528051906020012014610332576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032990610b98565b60405180910390fd5b86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505092505050949350505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6103c482610382565b6103ce818561038c565b93506103de81856020860161039c565b6103e7816103aa565b840191505092915050565b5f6020820190508181035f83015261040a81846103ba565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f84011261044457610443610423565b5b8235905067ffffffffffffffff81111561046157610460610427565b5b60208301915083600182028301111561047d5761047c61042b565b5b9250929050565b5f5f6020838503121561049a5761049961041b565b5b5f83013567ffffffffffffffff8111156104b7576104b661041f565b5b6104c38582860161042f565b92509250509250929050565b5f5f5f5f604085870312156104e7576104e661041b565b5b5f85013567ffffffffffffffff8111156105045761050361041f565b5b6105108782880161042f565b9450945050602085013567ffffffffffffffff8111156105335761053261041f565b5b61053f8782880161042f565b925092505092959194509250565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105768261054d565b9050919050565b6105868161056c565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806105fc57607f821691505b60208210810361060f5761060e6105b8565b5b50919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f8154610643816105e5565b61064d8186610615565b9450600182165f8114610667576001811461067d576106af565b60ff1983168652811515602002860193506106af565b61068685610625565b5f5b838110156106a757815481890152600182019150602081019050610688565b808801955050505b50505092915050565b5f6106c38383610637565b905092915050565b5f600182019050919050565b5f6106e18261058c565b6106eb8185610596565b9350836020820285016106fd856105a6565b805f5b858110156107375784840389528161071885826106b8565b9450610723836106cb565b925060208a01995050600181019050610700565b50829750879550505050505092915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61077d81610749565b82525050565b5f60a0820190506107965f83018861057d565b81810360208301526107a881876106d7565b905081810360408301526107bc81866103ba565b90506107cb6060830185610774565b81810360808301526107dd81846103ba565b90509695505050505050565b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610823826103aa565b810181811067ffffffffffffffff82111715610842576108416107ed565b5b80604052505050565b5f610854610412565b9050610860828261081a565b919050565b5f67ffffffffffffffff82111561087f5761087e6107ed565b5b610888826103aa565b9050602081019050919050565b828183375f83830152505050565b5f6108b56108b084610865565b61084b565b9050828152602081018484840111156108d1576108d06107e9565b5b6108dc848285610895565b509392505050565b5f82601f8301126108f8576108f7610423565b5b81356109088482602086016108a3565b91505092915050565b5f602082840312156109265761092561041b565b5b5f82013567ffffffffffffffff8111156109435761094261041f565b5b61094f848285016108e4565b91505092915050565b5f81519050919050565b5f81905092915050565b5f61097682610958565b6109808185610962565b935061099081856020860161039c565b80840191505092915050565b5f6109a7828461096c565b915081905092915050565b5f82825260208201905092915050565b7f7465737420646174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f6109f6601c836109b2565b9150610a01826109c2565b602082019050919050565b5f6020820190508181035f830152610a23816109ea565b9050919050565b5f610a35838561038c565b9350610a42838584610895565b610a4b836103aa565b840190509392505050565b5f60a082019050610a695f83018a61057d565b8181036020830152610a7b81896106d7565b90508181036040830152610a90818789610a2a565b9050610a9f6060830186610774565b8181036080830152610ab2818486610a2a565b905098975050505050505050565b7f68747470207265717565737420726573756c742076616c69646174696f6e20665f8201527f61696c65642e0000000000000000000000000000000000000000000000000000602082015250565b5f610b1a6026836109b2565b9150610b2582610ac0565b604082019050919050565b5f6020820190508181035f830152610b4781610b0e565b9050919050565b7f6578747261446174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f610b82601c836109b2565b9150610b8d82610b4e565b602082019050919050565b5f6020820190508181035f830152610baf81610b76565b905091905056fea26469706673582212209ccea4f70dd9a070bd841b08e808868d3db4b17bf0c06f846b5dbf4c0a019d6c64736f6c634300081d003368747470733a2f2f776562332e70792f676174657761792f7b73656e6465727d2f7b646174617d2e6a736f6e" # noqa: E501 -OFFCHAIN_LOOKUP_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c806309a3c01b146100435780636337ed5814610061578063da96d05a14610091575b5f5ffd5b61004b6100c1565b60405161005891906103f2565b60405180910390f35b61007b60048036038101906100769190610484565b610110565b60405161008891906103f2565b60405180910390f35b6100ab60048036038101906100a691906104cf565b6101fc565b6040516100b891906103f2565b60405180910390f35b606080305f826309a3c01b60e01b846040517f556f1830000000000000000000000000000000000000000000000000000000008152600401610107959493929190610783565b60405180910390fd5b60605f83838101906101229190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af07581604051602001610156919061099c565b60405160208183030381529060405280519060200120146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a390610a0c565b60405180910390fd5b305f858563da96d05a60e01b88886040517f556f18300000000000000000000000000000000000000000000000000000000081526004016101f39796959493929190610a56565b60405180910390fd5b60605f858581019061020e9190610911565b90507faed76f463930323372899e36460e078e5292aac45f645bbe567be6fca83ede1081604051602001610242919061099c565b6040516020818303038152906040528051906020012014610298576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028f90610b30565b60405180910390fd5b5f84848101906102a89190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af075816040516020016102dc919061099c565b6040516020818303038152906040528051906020012014610332576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032990610b98565b60405180910390fd5b86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505092505050949350505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6103c482610382565b6103ce818561038c565b93506103de81856020860161039c565b6103e7816103aa565b840191505092915050565b5f6020820190508181035f83015261040a81846103ba565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f84011261044457610443610423565b5b8235905067ffffffffffffffff81111561046157610460610427565b5b60208301915083600182028301111561047d5761047c61042b565b5b9250929050565b5f5f6020838503121561049a5761049961041b565b5b5f83013567ffffffffffffffff8111156104b7576104b661041f565b5b6104c38582860161042f565b92509250509250929050565b5f5f5f5f604085870312156104e7576104e661041b565b5b5f85013567ffffffffffffffff8111156105045761050361041f565b5b6105108782880161042f565b9450945050602085013567ffffffffffffffff8111156105335761053261041f565b5b61053f8782880161042f565b925092505092959194509250565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105768261054d565b9050919050565b6105868161056c565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806105fc57607f821691505b60208210810361060f5761060e6105b8565b5b50919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f8154610643816105e5565b61064d8186610615565b9450600182165f8114610667576001811461067d576106af565b60ff1983168652811515602002860193506106af565b61068685610625565b5f5b838110156106a757815481890152600182019150602081019050610688565b808801955050505b50505092915050565b5f6106c38383610637565b905092915050565b5f600182019050919050565b5f6106e18261058c565b6106eb8185610596565b9350836020820285016106fd856105a6565b805f5b858110156107375784840389528161071885826106b8565b9450610723836106cb565b925060208a01995050600181019050610700565b50829750879550505050505092915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61077d81610749565b82525050565b5f60a0820190506107965f83018861057d565b81810360208301526107a881876106d7565b905081810360408301526107bc81866103ba565b90506107cb6060830185610774565b81810360808301526107dd81846103ba565b90509695505050505050565b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610823826103aa565b810181811067ffffffffffffffff82111715610842576108416107ed565b5b80604052505050565b5f610854610412565b9050610860828261081a565b919050565b5f67ffffffffffffffff82111561087f5761087e6107ed565b5b610888826103aa565b9050602081019050919050565b828183375f83830152505050565b5f6108b56108b084610865565b61084b565b9050828152602081018484840111156108d1576108d06107e9565b5b6108dc848285610895565b509392505050565b5f82601f8301126108f8576108f7610423565b5b81356109088482602086016108a3565b91505092915050565b5f602082840312156109265761092561041b565b5b5f82013567ffffffffffffffff8111156109435761094261041f565b5b61094f848285016108e4565b91505092915050565b5f81519050919050565b5f81905092915050565b5f61097682610958565b6109808185610962565b935061099081856020860161039c565b80840191505092915050565b5f6109a7828461096c565b915081905092915050565b5f82825260208201905092915050565b7f7465737420646174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f6109f6601c836109b2565b9150610a01826109c2565b602082019050919050565b5f6020820190508181035f830152610a23816109ea565b9050919050565b5f610a35838561038c565b9350610a42838584610895565b610a4b836103aa565b840190509392505050565b5f60a082019050610a695f83018a61057d565b8181036020830152610a7b81896106d7565b90508181036040830152610a90818789610a2a565b9050610a9f6060830186610774565b8181036080830152610ab2818486610a2a565b905098975050505050505050565b7f68747470207265717565737420726573756c742076616c69646174696f6e20665f8201527f61696c65642e0000000000000000000000000000000000000000000000000000602082015250565b5f610b1a6026836109b2565b9150610b2582610ac0565b604082019050919050565b5f6020820190508181035f830152610b4781610b0e565b9050919050565b7f6578747261446174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f610b82601c836109b2565b9150610b8d82610b4e565b602082019050919050565b5f6020820190508181035f830152610baf81610b76565b905091905056fea26469706673582212209ccea4f70dd9a070bd841b08e808868d3db4b17bf0c06f846b5dbf4c0a019d6c64736f6c634300081d0033" # noqa: E501 +OFFCHAIN_LOOKUP_BYTECODE = "0x608060405260405180604001604052806040518060600160405280602c815260200161105e602c913981526020016040518060400160405280601781526020017f68747470733a2f2f776562332e70792f676174657761790000000000000000008152508152505f906002610075929190610087565b50348015610081575f5ffd5b50610465565b828054828255905f5260205f209081019282156100cd579160200282015b828111156100cc5782518290816100bc9190610396565b50916020019190600101906100a5565b5b5090506100da91906100de565b5090565b5b808211156100fd575f81816100f49190610101565b506001016100df565b5090565b50805461010d906101bd565b5f825580601f1061011e575061013b565b601f0160209004905f5260205f209081019061013a919061013e565b5b50565b5b80821115610155575f815f90555060010161013f565b5090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806101d457607f821691505b6020821081036101e7576101e6610190565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026102497fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261020e565b610253868361020e565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61029761029261028d8461026b565b610274565b61026b565b9050919050565b5f819050919050565b6102b08361027d565b6102c46102bc8261029e565b84845461021a565b825550505050565b5f5f905090565b6102db6102cc565b6102e68184846102a7565b505050565b5b81811015610309576102fe5f826102d3565b6001810190506102ec565b5050565b601f82111561034e5761031f816101ed565b610328846101ff565b81016020851015610337578190505b61034b610343856101ff565b8301826102eb565b50505b505050565b5f82821c905092915050565b5f61036e5f1984600802610353565b1980831691505092915050565b5f610386838361035f565b9150826002028217905092915050565b61039f82610159565b67ffffffffffffffff8111156103b8576103b7610163565b5b6103c282546101bd565b6103cd82828561030d565b5f60209050601f8311600181146103fe575f84156103ec578287015190505b6103f6858261037b565b86555061045d565b601f19841661040c866101ed565b5f5b828110156104335784890151825560018201915060208501945060208101905061040e565b86831015610450578489015161044c601f89168261035f565b8355505b6001600288020188555050505b505050505050565b610bec806104725f395ff3fe608060405234801561000f575f5ffd5b506004361061003f575f3560e01c806309a3c01b146100435780636337ed5814610061578063da96d05a14610091575b5f5ffd5b61004b6100c1565b60405161005891906103f2565b60405180910390f35b61007b60048036038101906100769190610484565b610110565b60405161008891906103f2565b60405180910390f35b6100ab60048036038101906100a691906104cf565b6101fc565b6040516100b891906103f2565b60405180910390f35b606080305f826309a3c01b60e01b846040517f556f1830000000000000000000000000000000000000000000000000000000008152600401610107959493929190610783565b60405180910390fd5b60605f83838101906101229190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af07581604051602001610156919061099c565b60405160208183030381529060405280519060200120146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a390610a0c565b60405180910390fd5b305f858563da96d05a60e01b88886040517f556f18300000000000000000000000000000000000000000000000000000000081526004016101f39796959493929190610a56565b60405180910390fd5b60605f858581019061020e9190610911565b90507faed76f463930323372899e36460e078e5292aac45f645bbe567be6fca83ede1081604051602001610242919061099c565b6040516020818303038152906040528051906020012014610298576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028f90610b30565b60405180910390fd5b5f84848101906102a89190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af075816040516020016102dc919061099c565b6040516020818303038152906040528051906020012014610332576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032990610b98565b60405180910390fd5b86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505092505050949350505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6103c482610382565b6103ce818561038c565b93506103de81856020860161039c565b6103e7816103aa565b840191505092915050565b5f6020820190508181035f83015261040a81846103ba565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f84011261044457610443610423565b5b8235905067ffffffffffffffff81111561046157610460610427565b5b60208301915083600182028301111561047d5761047c61042b565b5b9250929050565b5f5f6020838503121561049a5761049961041b565b5b5f83013567ffffffffffffffff8111156104b7576104b661041f565b5b6104c38582860161042f565b92509250509250929050565b5f5f5f5f604085870312156104e7576104e661041b565b5b5f85013567ffffffffffffffff8111156105045761050361041f565b5b6105108782880161042f565b9450945050602085013567ffffffffffffffff8111156105335761053261041f565b5b61053f8782880161042f565b925092505092959194509250565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105768261054d565b9050919050565b6105868161056c565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806105fc57607f821691505b60208210810361060f5761060e6105b8565b5b50919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f8154610643816105e5565b61064d8186610615565b9450600182165f8114610667576001811461067d576106af565b60ff1983168652811515602002860193506106af565b61068685610625565b5f5b838110156106a757815481890152600182019150602081019050610688565b808801955050505b50505092915050565b5f6106c38383610637565b905092915050565b5f600182019050919050565b5f6106e18261058c565b6106eb8185610596565b9350836020820285016106fd856105a6565b805f5b858110156107375784840389528161071885826106b8565b9450610723836106cb565b925060208a01995050600181019050610700565b50829750879550505050505092915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61077d81610749565b82525050565b5f60a0820190506107965f83018861057d565b81810360208301526107a881876106d7565b905081810360408301526107bc81866103ba565b90506107cb6060830185610774565b81810360808301526107dd81846103ba565b90509695505050505050565b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610823826103aa565b810181811067ffffffffffffffff82111715610842576108416107ed565b5b80604052505050565b5f610854610412565b9050610860828261081a565b919050565b5f67ffffffffffffffff82111561087f5761087e6107ed565b5b610888826103aa565b9050602081019050919050565b828183375f83830152505050565b5f6108b56108b084610865565b61084b565b9050828152602081018484840111156108d1576108d06107e9565b5b6108dc848285610895565b509392505050565b5f82601f8301126108f8576108f7610423565b5b81356109088482602086016108a3565b91505092915050565b5f602082840312156109265761092561041b565b5b5f82013567ffffffffffffffff8111156109435761094261041f565b5b61094f848285016108e4565b91505092915050565b5f81519050919050565b5f81905092915050565b5f61097682610958565b6109808185610962565b935061099081856020860161039c565b80840191505092915050565b5f6109a7828461096c565b915081905092915050565b5f82825260208201905092915050565b7f7465737420646174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f6109f6601c836109b2565b9150610a01826109c2565b602082019050919050565b5f6020820190508181035f830152610a23816109ea565b9050919050565b5f610a35838561038c565b9350610a42838584610895565b610a4b836103aa565b840190509392505050565b5f60a082019050610a695f83018a61057d565b8181036020830152610a7b81896106d7565b90508181036040830152610a90818789610a2a565b9050610a9f6060830186610774565b8181036080830152610ab2818486610a2a565b905098975050505050505050565b7f68747470207265717565737420726573756c742076616c69646174696f6e20665f8201527f61696c65642e0000000000000000000000000000000000000000000000000000602082015250565b5f610b1a6026836109b2565b9150610b2582610ac0565b604082019050919050565b5f6020820190508181035f830152610b4781610b0e565b9050919050565b7f6578747261446174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f610b82601c836109b2565b9150610b8d82610b4e565b602082019050919050565b5f6020820190508181035f830152610baf81610b76565b905091905056fea2646970667358221220029be82598e02eb26c8cc4f7656db4919c9c779bb468c366f11ca5263eef888064736f6c634300081e003368747470733a2f2f776562332e70792f676174657761792f7b73656e6465727d2f7b646174617d2e6a736f6e" # noqa: E501 +OFFCHAIN_LOOKUP_RUNTIME = "0x608060405234801561000f575f5ffd5b506004361061003f575f3560e01c806309a3c01b146100435780636337ed5814610061578063da96d05a14610091575b5f5ffd5b61004b6100c1565b60405161005891906103f2565b60405180910390f35b61007b60048036038101906100769190610484565b610110565b60405161008891906103f2565b60405180910390f35b6100ab60048036038101906100a691906104cf565b6101fc565b6040516100b891906103f2565b60405180910390f35b606080305f826309a3c01b60e01b846040517f556f1830000000000000000000000000000000000000000000000000000000008152600401610107959493929190610783565b60405180910390fd5b60605f83838101906101229190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af07581604051602001610156919061099c565b60405160208183030381529060405280519060200120146101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a390610a0c565b60405180910390fd5b305f858563da96d05a60e01b88886040517f556f18300000000000000000000000000000000000000000000000000000000081526004016101f39796959493929190610a56565b60405180910390fd5b60605f858581019061020e9190610911565b90507faed76f463930323372899e36460e078e5292aac45f645bbe567be6fca83ede1081604051602001610242919061099c565b6040516020818303038152906040528051906020012014610298576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028f90610b30565b60405180910390fd5b5f84848101906102a89190610911565b90507fd9bdd1345ca2a00d0c1413137c1b2b1d0a35e5b0e11508f3b3eff856286af075816040516020016102dc919061099c565b6040516020818303038152906040528051906020012014610332576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161032990610b98565b60405180910390fd5b86868080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505092505050949350505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6103c482610382565b6103ce818561038c565b93506103de81856020860161039c565b6103e7816103aa565b840191505092915050565b5f6020820190508181035f83015261040a81846103ba565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f5f83601f84011261044457610443610423565b5b8235905067ffffffffffffffff81111561046157610460610427565b5b60208301915083600182028301111561047d5761047c61042b565b5b9250929050565b5f5f6020838503121561049a5761049961041b565b5b5f83013567ffffffffffffffff8111156104b7576104b661041f565b5b6104c38582860161042f565b92509250509250929050565b5f5f5f5f604085870312156104e7576104e661041b565b5b5f85013567ffffffffffffffff8111156105045761050361041f565b5b6105108782880161042f565b9450945050602085013567ffffffffffffffff8111156105335761053261041f565b5b61053f8782880161042f565b925092505092959194509250565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105768261054d565b9050919050565b6105868161056c565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806105fc57607f821691505b60208210810361060f5761060e6105b8565b5b50919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f8154610643816105e5565b61064d8186610615565b9450600182165f8114610667576001811461067d576106af565b60ff1983168652811515602002860193506106af565b61068685610625565b5f5b838110156106a757815481890152600182019150602081019050610688565b808801955050505b50505092915050565b5f6106c38383610637565b905092915050565b5f600182019050919050565b5f6106e18261058c565b6106eb8185610596565b9350836020820285016106fd856105a6565b805f5b858110156107375784840389528161071885826106b8565b9450610723836106cb565b925060208a01995050600181019050610700565b50829750879550505050505092915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61077d81610749565b82525050565b5f60a0820190506107965f83018861057d565b81810360208301526107a881876106d7565b905081810360408301526107bc81866103ba565b90506107cb6060830185610774565b81810360808301526107dd81846103ba565b90509695505050505050565b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610823826103aa565b810181811067ffffffffffffffff82111715610842576108416107ed565b5b80604052505050565b5f610854610412565b9050610860828261081a565b919050565b5f67ffffffffffffffff82111561087f5761087e6107ed565b5b610888826103aa565b9050602081019050919050565b828183375f83830152505050565b5f6108b56108b084610865565b61084b565b9050828152602081018484840111156108d1576108d06107e9565b5b6108dc848285610895565b509392505050565b5f82601f8301126108f8576108f7610423565b5b81356109088482602086016108a3565b91505092915050565b5f602082840312156109265761092561041b565b5b5f82013567ffffffffffffffff8111156109435761094261041f565b5b61094f848285016108e4565b91505092915050565b5f81519050919050565b5f81905092915050565b5f61097682610958565b6109808185610962565b935061099081856020860161039c565b80840191505092915050565b5f6109a7828461096c565b915081905092915050565b5f82825260208201905092915050565b7f7465737420646174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f6109f6601c836109b2565b9150610a01826109c2565b602082019050919050565b5f6020820190508181035f830152610a23816109ea565b9050919050565b5f610a35838561038c565b9350610a42838584610895565b610a4b836103aa565b840190509392505050565b5f60a082019050610a695f83018a61057d565b8181036020830152610a7b81896106d7565b90508181036040830152610a90818789610a2a565b9050610a9f6060830186610774565b8181036080830152610ab2818486610a2a565b905098975050505050505050565b7f68747470207265717565737420726573756c742076616c69646174696f6e20665f8201527f61696c65642e0000000000000000000000000000000000000000000000000000602082015250565b5f610b1a6026836109b2565b9150610b2582610ac0565b604082019050919050565b5f6020820190508181035f830152610b4781610b0e565b9050919050565b7f6578747261446174612076616c69646174696f6e206661696c65642e000000005f82015250565b5f610b82601c836109b2565b9150610b8d82610b4e565b602082019050919050565b5f6020820190508181035f830152610baf81610b76565b905091905056fea2646970667358221220029be82598e02eb26c8cc4f7656db4919c9c779bb468c366f11ca5263eef888064736f6c634300081e0033" # noqa: E501 OFFCHAIN_LOOKUP_ABI = [ { "inputs": [ diff --git a/web3/_utils/contract_sources/contract_data/offchain_resolver.py b/web3/_utils/contract_sources/contract_data/offchain_resolver.py index 64514ed05a..86a99dcbeb 100644 --- a/web3/_utils/contract_sources/contract_data/offchain_resolver.py +++ b/web3/_utils/contract_sources/contract_data/offchain_resolver.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/OffchainResolver.sol:OffchainResolver -OFFCHAIN_RESOLVER_BYTECODE = "0x608060405234801561000f575f5ffd5b506040516120893803806120898339818101604052810190610031919061057e565b815f9080519060200190610046929190610163565b505f5f90505b81518110156100d0576001805f84848151811061006c5761006b6105f4565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061004c565b506001805f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fab0b9cc3a46b568cb08d985497cde8ab7e18892d01f58db7dc7f0d2af859b2d78160405161015491906106d8565b60405180910390a150506109d7565b828054828255905f5260205f209081019282156101a9579160200282015b828111156101a85782518290816101989190610908565b5091602001919060010190610181565b5b5090506101b691906101ba565b5090565b5b808211156101d9575f81816101d091906101dd565b506001016101bb565b5090565b5080546101e99061072f565b5f825580601f106101fa5750610217565b601f0160209004905f5260205f2090810190610216919061021a565b5b50565b5b80821115610231575f815f90555060010161021b565b5090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102908261024a565b810181811067ffffffffffffffff821117156102af576102ae61025a565b5b80604052505050565b5f6102c1610235565b90506102cd8282610287565b919050565b5f67ffffffffffffffff8211156102ec576102eb61025a565b5b602082029050602081019050919050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff82111561031f5761031e61025a565b5b6103288261024a565b9050602081019050919050565b8281835e5f83830152505050565b5f61035561035084610305565b6102b8565b90508281526020810184848401111561037157610370610301565b5b61037c848285610335565b509392505050565b5f82601f83011261039857610397610246565b5b81516103a8848260208601610343565b91505092915050565b5f6103c36103be846102d2565b6102b8565b905080838252602082019050602084028301858111156103e6576103e56102fd565b5b835b8181101561042d57805167ffffffffffffffff81111561040b5761040a610246565b5b8086016104188982610384565b855260208501945050506020810190506103e8565b5050509392505050565b5f82601f83011261044b5761044a610246565b5b815161045b8482602086016103b1565b91505092915050565b5f67ffffffffffffffff82111561047e5761047d61025a565b5b602082029050602081019050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104b88261048f565b9050919050565b6104c8816104ae565b81146104d2575f5ffd5b50565b5f815190506104e3816104bf565b92915050565b5f6104fb6104f684610464565b6102b8565b9050808382526020820190506020840283018581111561051e5761051d6102fd565b5b835b81811015610547578061053388826104d5565b845260208401935050602081019050610520565b5050509392505050565b5f82601f83011261056557610564610246565b5b81516105758482602086016104e9565b91505092915050565b5f5f604083850312156105945761059361023e565b5b5f83015167ffffffffffffffff8111156105b1576105b0610242565b5b6105bd85828601610437565b925050602083015167ffffffffffffffff8111156105de576105dd610242565b5b6105ea85828601610551565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610653816104ae565b82525050565b5f610664838361064a565b60208301905092915050565b5f602082019050919050565b5f61068682610621565b610690818561062b565b935061069b8361063b565b805f5b838110156106cb5781516106b28882610659565b97506106bd83610670565b92505060018101905061069e565b5085935050505092915050565b5f6020820190508181035f8301526106f0818461067c565b905092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061074657607f821691505b60208210810361075957610758610702565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026107bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610780565b6107c58683610780565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6108096108046107ff846107dd565b6107e6565b6107dd565b9050919050565b5f819050919050565b610822836107ef565b61083661082e82610810565b84845461078c565b825550505050565b5f5f905090565b61084d61083e565b610858818484610819565b505050565b5b8181101561087b576108705f82610845565b60018101905061085e565b5050565b601f8211156108c0576108918161075f565b61089a84610771565b810160208510156108a9578190505b6108bd6108b585610771565b83018261085d565b50505b505050565b5f82821c905092915050565b5f6108e05f19846008026108c5565b1980831691505092915050565b5f6108f883836108d1565b9150826002028217905092915050565b610911826106f8565b67ffffffffffffffff81111561092a5761092961025a565b5b610934825461072f565b61093f82828561087f565b5f60209050601f831160018114610970575f841561095e578287015190505b61096885826108ed565b8655506109cf565b601f19841661097e8661075f565b5f5b828110156109a557848901518255600182019150602085019450602081019050610980565b868310156109c257848901516109be601f8916826108d1565b8355505b6001600288020188555050505b505050505050565b6116a5806109e45f395ff3fe608060405234801561000f575f5ffd5b5060043610610060575f3560e01c806301ffc9a7146100645780631dcfea0914610094578063736c0d5b146100c4578063796676be146100f45780639061b92314610124578063f4d4d2f814610154575b5f5ffd5b61007e600480360381019061007991906109a3565b610184565b60405161008b91906109e8565b60405180910390f35b6100ae60048036038101906100a99190610bd4565b6101fd565b6040516100bb9190610c88565b60405180910390f35b6100de60048036038101906100d99190610ca1565b610214565b6040516100eb91906109e8565b60405180910390f35b61010e60048036038101906101099190610cff565b610231565b60405161011b9190610d8a565b60405180910390f35b61013e60048036038101906101399190610e07565b6102d6565b60405161014b9190610ed7565b60405180910390f35b61016e60048036038101906101699190610e07565b6103a3565b60405161017b9190610ed7565b60405180910390f35b5f7f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806101f657506101f58261044d565b5b9050919050565b5f61020a858585856104b6565b9050949350505050565b6001602052805f5260405f205f915054906101000a900460ff1681565b5f818154811061023f575f80fd5b905f5260205f20015f91509050805461025790610f24565b80601f016020809104026020016040519081016040528092919081815260200182805461028390610f24565b80156102ce5780601f106102a5576101008083540402835291602001916102ce565b820191905f5260205f20905b8154815290600101906020018083116102b157829003601f168201915b505050505081565b60605f639061b92360e01b868686866040516024016102f89493929190610f80565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050305f8263f4d4d2f860e01b846040517f556f183000000000000000000000000000000000000000000000000000000000815260040161039a959493929190611137565b60405180910390fd5b60605f5f6103b3858589896104fc565b9150915060015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104379061120d565b60405180910390fd5b8092505050949350505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f8484848051906020012084805190602001206040516020016104dc9493929190611318565b604051602081830303815290604052805190602001209050949350505050565b5f60605f5f5f86868101906105119190611370565b9250925092505f61057061056a30858d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050886104b6565b83610585565b90508084955095505050505094509492505050565b5f5f5f61059285856105aa565b9150915061059f81610625565b819250505092915050565b5f5f60418351036105e7575f5f5f602086015192506040860151915060608601515f1a90506105db878285856107f0565b9450945050505061061e565b6040835103610616575f5f602085015191506040850151905061060b8683836108f1565b93509350505061061e565b5f6002915091505b9250929050565b5f6004811115610638576106376113f8565b5b81600481111561064b5761064a6113f8565b5b03156107ed5760016004811115610665576106646113f8565b5b816004811115610678576106776113f8565b5b036106b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106af9061146f565b60405180910390fd5b600260048111156106cc576106cb6113f8565b5b8160048111156106df576106de6113f8565b5b0361071f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610716906114d7565b60405180910390fd5b60036004811115610733576107326113f8565b5b816004811115610746576107456113f8565b5b03610786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077d90611565565b60405180910390fd5b600480811115610799576107986113f8565b5b8160048111156107ac576107ab6113f8565b5b036107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e3906115f3565b60405180910390fd5b5b50565b5f5f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0835f1c1115610828575f6003915091506108e8565b601b8560ff16141580156108405750601c8560ff1614155b15610851575f6004915091506108e8565b5f6001878787876040515f8152602001604052604051610874949392919061162c565b6020604051602081039080840390855afa158015610894573d5f5f3e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036108e0575f600192509250506108e8565b805f92509250505b94509492505050565b5f5f5f5f7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85169150601b8560ff1c01905061092f878288856107f0565b935093505050935093915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6109828161094e565b811461098c575f5ffd5b50565b5f8135905061099d81610979565b92915050565b5f602082840312156109b8576109b7610946565b5b5f6109c58482850161098f565b91505092915050565b5f8115159050919050565b6109e2816109ce565b82525050565b5f6020820190506109fb5f8301846109d9565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a2a82610a01565b9050919050565b610a3a81610a20565b8114610a44575f5ffd5b50565b5f81359050610a5581610a31565b92915050565b5f67ffffffffffffffff82169050919050565b610a7781610a5b565b8114610a81575f5ffd5b50565b5f81359050610a9281610a6e565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610ae682610aa0565b810181811067ffffffffffffffff82111715610b0557610b04610ab0565b5b80604052505050565b5f610b1761093d565b9050610b238282610add565b919050565b5f67ffffffffffffffff821115610b4257610b41610ab0565b5b610b4b82610aa0565b9050602081019050919050565b828183375f83830152505050565b5f610b78610b7384610b28565b610b0e565b905082815260208101848484011115610b9457610b93610a9c565b5b610b9f848285610b58565b509392505050565b5f82601f830112610bbb57610bba610a98565b5b8135610bcb848260208601610b66565b91505092915050565b5f5f5f5f60808587031215610bec57610beb610946565b5b5f610bf987828801610a47565b9450506020610c0a87828801610a84565b935050604085013567ffffffffffffffff811115610c2b57610c2a61094a565b5b610c3787828801610ba7565b925050606085013567ffffffffffffffff811115610c5857610c5761094a565b5b610c6487828801610ba7565b91505092959194509250565b5f819050919050565b610c8281610c70565b82525050565b5f602082019050610c9b5f830184610c79565b92915050565b5f60208284031215610cb657610cb5610946565b5b5f610cc384828501610a47565b91505092915050565b5f819050919050565b610cde81610ccc565b8114610ce8575f5ffd5b50565b5f81359050610cf981610cd5565b92915050565b5f60208284031215610d1457610d13610946565b5b5f610d2184828501610ceb565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610d5c82610d2a565b610d668185610d34565b9350610d76818560208601610d44565b610d7f81610aa0565b840191505092915050565b5f6020820190508181035f830152610da28184610d52565b905092915050565b5f5ffd5b5f5ffd5b5f5f83601f840112610dc757610dc6610a98565b5b8235905067ffffffffffffffff811115610de457610de3610daa565b5b602083019150836001820283011115610e0057610dff610dae565b5b9250929050565b5f5f5f5f60408587031215610e1f57610e1e610946565b5b5f85013567ffffffffffffffff811115610e3c57610e3b61094a565b5b610e4887828801610db2565b9450945050602085013567ffffffffffffffff811115610e6b57610e6a61094a565b5b610e7787828801610db2565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b5f610ea982610e85565b610eb38185610e8f565b9350610ec3818560208601610d44565b610ecc81610aa0565b840191505092915050565b5f6020820190508181035f830152610eef8184610e9f565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610f3b57607f821691505b602082108103610f4e57610f4d610ef7565b5b50919050565b5f610f5f8385610e8f565b9350610f6c838584610b58565b610f7583610aa0565b840190509392505050565b5f6040820190508181035f830152610f99818688610f54565b90508181036020830152610fae818486610f54565b905095945050505050565b610fc281610a20565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f815461102281610f24565b61102c8186610ff4565b9450600182165f8114611046576001811461105c5761108e565b60ff19831686528115156020028601935061108e565b61106585611004565b5f5b8381101561108657815481890152600182019150602081019050611067565b808801955050505b50505092915050565b5f6110a28383611016565b905092915050565b5f600182019050919050565b5f6110c082610fc8565b6110ca8185610fd2565b9350836020820285016110dc85610fe2565b805f5b85811015611116578484038952816110f78582611097565b9450611102836110aa565b925060208a019950506001810190506110df565b50829750879550505050505092915050565b6111318161094e565b82525050565b5f60a08201905061114a5f830188610fb9565b818103602083015261115c81876110b6565b905081810360408301526111708186610e9f565b905061117f6060830185611128565b81810360808301526111918184610e9f565b90509695505050505050565b7f5369676e617475726556657269666965723a20496e76616c6964207369676e615f8201527f7475726500000000000000000000000000000000000000000000000000000000602082015250565b5f6111f7602483610d34565b91506112028261119d565b604082019050919050565b5f6020820190508181035f830152611224816111eb565b9050919050565b5f81905092915050565b7f19000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61126960028361122b565b915061127482611235565b600282019050919050565b5f8160601b9050919050565b5f6112958261127f565b9050919050565b5f6112a68261128b565b9050919050565b6112be6112b982610a20565b61129c565b82525050565b5f8160c01b9050919050565b5f6112da826112c4565b9050919050565b6112f26112ed82610a5b565b6112d0565b82525050565b5f819050919050565b61131261130d82610c70565b6112f8565b82525050565b5f6113228261125d565b915061132e82876112ad565b60148201915061133e82866112e1565b60088201915061134e8285611301565b60208201915061135e8284611301565b60208201915081905095945050505050565b5f5f5f6060848603121561138757611386610946565b5b5f84013567ffffffffffffffff8111156113a4576113a361094a565b5b6113b086828701610ba7565b93505060206113c186828701610a84565b925050604084013567ffffffffffffffff8111156113e2576113e161094a565b5b6113ee86828701610ba7565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f45434453413a20696e76616c6964207369676e617475726500000000000000005f82015250565b5f611459601883610d34565b915061146482611425565b602082019050919050565b5f6020820190508181035f8301526114868161144d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e677468005f82015250565b5f6114c1601f83610d34565b91506114cc8261148d565b602082019050919050565b5f6020820190508181035f8301526114ee816114b5565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f61154f602283610d34565b915061155a826114f5565b604082019050919050565b5f6020820190508181035f83015261157c81611543565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f6115dd602283610d34565b91506115e882611583565b604082019050919050565b5f6020820190508181035f83015261160a816115d1565b9050919050565b5f60ff82169050919050565b61162681611611565b82525050565b5f60808201905061163f5f830187610c79565b61164c602083018661161d565b6116596040830185610c79565b6116666060830184610c79565b9594505050505056fea26469706673582212207962bec85a9dee057bbf9d7327050cacd975e4affbcb7b07243381eff45f322964736f6c634300081d0033" # noqa: E501 -OFFCHAIN_RESOLVER_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610060575f3560e01c806301ffc9a7146100645780631dcfea0914610094578063736c0d5b146100c4578063796676be146100f45780639061b92314610124578063f4d4d2f814610154575b5f5ffd5b61007e600480360381019061007991906109a3565b610184565b60405161008b91906109e8565b60405180910390f35b6100ae60048036038101906100a99190610bd4565b6101fd565b6040516100bb9190610c88565b60405180910390f35b6100de60048036038101906100d99190610ca1565b610214565b6040516100eb91906109e8565b60405180910390f35b61010e60048036038101906101099190610cff565b610231565b60405161011b9190610d8a565b60405180910390f35b61013e60048036038101906101399190610e07565b6102d6565b60405161014b9190610ed7565b60405180910390f35b61016e60048036038101906101699190610e07565b6103a3565b60405161017b9190610ed7565b60405180910390f35b5f7f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806101f657506101f58261044d565b5b9050919050565b5f61020a858585856104b6565b9050949350505050565b6001602052805f5260405f205f915054906101000a900460ff1681565b5f818154811061023f575f80fd5b905f5260205f20015f91509050805461025790610f24565b80601f016020809104026020016040519081016040528092919081815260200182805461028390610f24565b80156102ce5780601f106102a5576101008083540402835291602001916102ce565b820191905f5260205f20905b8154815290600101906020018083116102b157829003601f168201915b505050505081565b60605f639061b92360e01b868686866040516024016102f89493929190610f80565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050305f8263f4d4d2f860e01b846040517f556f183000000000000000000000000000000000000000000000000000000000815260040161039a959493929190611137565b60405180910390fd5b60605f5f6103b3858589896104fc565b9150915060015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104379061120d565b60405180910390fd5b8092505050949350505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f8484848051906020012084805190602001206040516020016104dc9493929190611318565b604051602081830303815290604052805190602001209050949350505050565b5f60605f5f5f86868101906105119190611370565b9250925092505f61057061056a30858d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050886104b6565b83610585565b90508084955095505050505094509492505050565b5f5f5f61059285856105aa565b9150915061059f81610625565b819250505092915050565b5f5f60418351036105e7575f5f5f602086015192506040860151915060608601515f1a90506105db878285856107f0565b9450945050505061061e565b6040835103610616575f5f602085015191506040850151905061060b8683836108f1565b93509350505061061e565b5f6002915091505b9250929050565b5f6004811115610638576106376113f8565b5b81600481111561064b5761064a6113f8565b5b03156107ed5760016004811115610665576106646113f8565b5b816004811115610678576106776113f8565b5b036106b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106af9061146f565b60405180910390fd5b600260048111156106cc576106cb6113f8565b5b8160048111156106df576106de6113f8565b5b0361071f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610716906114d7565b60405180910390fd5b60036004811115610733576107326113f8565b5b816004811115610746576107456113f8565b5b03610786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077d90611565565b60405180910390fd5b600480811115610799576107986113f8565b5b8160048111156107ac576107ab6113f8565b5b036107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e3906115f3565b60405180910390fd5b5b50565b5f5f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0835f1c1115610828575f6003915091506108e8565b601b8560ff16141580156108405750601c8560ff1614155b15610851575f6004915091506108e8565b5f6001878787876040515f8152602001604052604051610874949392919061162c565b6020604051602081039080840390855afa158015610894573d5f5f3e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036108e0575f600192509250506108e8565b805f92509250505b94509492505050565b5f5f5f5f7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85169150601b8560ff1c01905061092f878288856107f0565b935093505050935093915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6109828161094e565b811461098c575f5ffd5b50565b5f8135905061099d81610979565b92915050565b5f602082840312156109b8576109b7610946565b5b5f6109c58482850161098f565b91505092915050565b5f8115159050919050565b6109e2816109ce565b82525050565b5f6020820190506109fb5f8301846109d9565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a2a82610a01565b9050919050565b610a3a81610a20565b8114610a44575f5ffd5b50565b5f81359050610a5581610a31565b92915050565b5f67ffffffffffffffff82169050919050565b610a7781610a5b565b8114610a81575f5ffd5b50565b5f81359050610a9281610a6e565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610ae682610aa0565b810181811067ffffffffffffffff82111715610b0557610b04610ab0565b5b80604052505050565b5f610b1761093d565b9050610b238282610add565b919050565b5f67ffffffffffffffff821115610b4257610b41610ab0565b5b610b4b82610aa0565b9050602081019050919050565b828183375f83830152505050565b5f610b78610b7384610b28565b610b0e565b905082815260208101848484011115610b9457610b93610a9c565b5b610b9f848285610b58565b509392505050565b5f82601f830112610bbb57610bba610a98565b5b8135610bcb848260208601610b66565b91505092915050565b5f5f5f5f60808587031215610bec57610beb610946565b5b5f610bf987828801610a47565b9450506020610c0a87828801610a84565b935050604085013567ffffffffffffffff811115610c2b57610c2a61094a565b5b610c3787828801610ba7565b925050606085013567ffffffffffffffff811115610c5857610c5761094a565b5b610c6487828801610ba7565b91505092959194509250565b5f819050919050565b610c8281610c70565b82525050565b5f602082019050610c9b5f830184610c79565b92915050565b5f60208284031215610cb657610cb5610946565b5b5f610cc384828501610a47565b91505092915050565b5f819050919050565b610cde81610ccc565b8114610ce8575f5ffd5b50565b5f81359050610cf981610cd5565b92915050565b5f60208284031215610d1457610d13610946565b5b5f610d2184828501610ceb565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610d5c82610d2a565b610d668185610d34565b9350610d76818560208601610d44565b610d7f81610aa0565b840191505092915050565b5f6020820190508181035f830152610da28184610d52565b905092915050565b5f5ffd5b5f5ffd5b5f5f83601f840112610dc757610dc6610a98565b5b8235905067ffffffffffffffff811115610de457610de3610daa565b5b602083019150836001820283011115610e0057610dff610dae565b5b9250929050565b5f5f5f5f60408587031215610e1f57610e1e610946565b5b5f85013567ffffffffffffffff811115610e3c57610e3b61094a565b5b610e4887828801610db2565b9450945050602085013567ffffffffffffffff811115610e6b57610e6a61094a565b5b610e7787828801610db2565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b5f610ea982610e85565b610eb38185610e8f565b9350610ec3818560208601610d44565b610ecc81610aa0565b840191505092915050565b5f6020820190508181035f830152610eef8184610e9f565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610f3b57607f821691505b602082108103610f4e57610f4d610ef7565b5b50919050565b5f610f5f8385610e8f565b9350610f6c838584610b58565b610f7583610aa0565b840190509392505050565b5f6040820190508181035f830152610f99818688610f54565b90508181036020830152610fae818486610f54565b905095945050505050565b610fc281610a20565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f815461102281610f24565b61102c8186610ff4565b9450600182165f8114611046576001811461105c5761108e565b60ff19831686528115156020028601935061108e565b61106585611004565b5f5b8381101561108657815481890152600182019150602081019050611067565b808801955050505b50505092915050565b5f6110a28383611016565b905092915050565b5f600182019050919050565b5f6110c082610fc8565b6110ca8185610fd2565b9350836020820285016110dc85610fe2565b805f5b85811015611116578484038952816110f78582611097565b9450611102836110aa565b925060208a019950506001810190506110df565b50829750879550505050505092915050565b6111318161094e565b82525050565b5f60a08201905061114a5f830188610fb9565b818103602083015261115c81876110b6565b905081810360408301526111708186610e9f565b905061117f6060830185611128565b81810360808301526111918184610e9f565b90509695505050505050565b7f5369676e617475726556657269666965723a20496e76616c6964207369676e615f8201527f7475726500000000000000000000000000000000000000000000000000000000602082015250565b5f6111f7602483610d34565b91506112028261119d565b604082019050919050565b5f6020820190508181035f830152611224816111eb565b9050919050565b5f81905092915050565b7f19000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61126960028361122b565b915061127482611235565b600282019050919050565b5f8160601b9050919050565b5f6112958261127f565b9050919050565b5f6112a68261128b565b9050919050565b6112be6112b982610a20565b61129c565b82525050565b5f8160c01b9050919050565b5f6112da826112c4565b9050919050565b6112f26112ed82610a5b565b6112d0565b82525050565b5f819050919050565b61131261130d82610c70565b6112f8565b82525050565b5f6113228261125d565b915061132e82876112ad565b60148201915061133e82866112e1565b60088201915061134e8285611301565b60208201915061135e8284611301565b60208201915081905095945050505050565b5f5f5f6060848603121561138757611386610946565b5b5f84013567ffffffffffffffff8111156113a4576113a361094a565b5b6113b086828701610ba7565b93505060206113c186828701610a84565b925050604084013567ffffffffffffffff8111156113e2576113e161094a565b5b6113ee86828701610ba7565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f45434453413a20696e76616c6964207369676e617475726500000000000000005f82015250565b5f611459601883610d34565b915061146482611425565b602082019050919050565b5f6020820190508181035f8301526114868161144d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e677468005f82015250565b5f6114c1601f83610d34565b91506114cc8261148d565b602082019050919050565b5f6020820190508181035f8301526114ee816114b5565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f61154f602283610d34565b915061155a826114f5565b604082019050919050565b5f6020820190508181035f83015261157c81611543565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f6115dd602283610d34565b91506115e882611583565b604082019050919050565b5f6020820190508181035f83015261160a816115d1565b9050919050565b5f60ff82169050919050565b61162681611611565b82525050565b5f60808201905061163f5f830187610c79565b61164c602083018661161d565b6116596040830185610c79565b6116666060830184610c79565b9594505050505056fea26469706673582212207962bec85a9dee057bbf9d7327050cacd975e4affbcb7b07243381eff45f322964736f6c634300081d0033" # noqa: E501 +OFFCHAIN_RESOLVER_BYTECODE = "0x608060405234801561000f575f5ffd5b506040516120893803806120898339818101604052810190610031919061057e565b815f9080519060200190610046929190610163565b505f5f90505b81518110156100d0576001805f84848151811061006c5761006b6105f4565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061004c565b506001805f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055507fab0b9cc3a46b568cb08d985497cde8ab7e18892d01f58db7dc7f0d2af859b2d78160405161015491906106d8565b60405180910390a150506109d7565b828054828255905f5260205f209081019282156101a9579160200282015b828111156101a85782518290816101989190610908565b5091602001919060010190610181565b5b5090506101b691906101ba565b5090565b5b808211156101d9575f81816101d091906101dd565b506001016101bb565b5090565b5080546101e99061072f565b5f825580601f106101fa5750610217565b601f0160209004905f5260205f2090810190610216919061021a565b5b50565b5b80821115610231575f815f90555060010161021b565b5090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6102908261024a565b810181811067ffffffffffffffff821117156102af576102ae61025a565b5b80604052505050565b5f6102c1610235565b90506102cd8282610287565b919050565b5f67ffffffffffffffff8211156102ec576102eb61025a565b5b602082029050602081019050919050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff82111561031f5761031e61025a565b5b6103288261024a565b9050602081019050919050565b8281835e5f83830152505050565b5f61035561035084610305565b6102b8565b90508281526020810184848401111561037157610370610301565b5b61037c848285610335565b509392505050565b5f82601f83011261039857610397610246565b5b81516103a8848260208601610343565b91505092915050565b5f6103c36103be846102d2565b6102b8565b905080838252602082019050602084028301858111156103e6576103e56102fd565b5b835b8181101561042d57805167ffffffffffffffff81111561040b5761040a610246565b5b8086016104188982610384565b855260208501945050506020810190506103e8565b5050509392505050565b5f82601f83011261044b5761044a610246565b5b815161045b8482602086016103b1565b91505092915050565b5f67ffffffffffffffff82111561047e5761047d61025a565b5b602082029050602081019050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104b88261048f565b9050919050565b6104c8816104ae565b81146104d2575f5ffd5b50565b5f815190506104e3816104bf565b92915050565b5f6104fb6104f684610464565b6102b8565b9050808382526020820190506020840283018581111561051e5761051d6102fd565b5b835b81811015610547578061053388826104d5565b845260208401935050602081019050610520565b5050509392505050565b5f82601f83011261056557610564610246565b5b81516105758482602086016104e9565b91505092915050565b5f5f604083850312156105945761059361023e565b5b5f83015167ffffffffffffffff8111156105b1576105b0610242565b5b6105bd85828601610437565b925050602083015167ffffffffffffffff8111156105de576105dd610242565b5b6105ea85828601610551565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610653816104ae565b82525050565b5f610664838361064a565b60208301905092915050565b5f602082019050919050565b5f61068682610621565b610690818561062b565b935061069b8361063b565b805f5b838110156106cb5781516106b28882610659565b97506106bd83610670565b92505060018101905061069e565b5085935050505092915050565b5f6020820190508181035f8301526106f0818461067c565b905092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061074657607f821691505b60208210810361075957610758610702565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026107bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610780565b6107c58683610780565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6108096108046107ff846107dd565b6107e6565b6107dd565b9050919050565b5f819050919050565b610822836107ef565b61083661082e82610810565b84845461078c565b825550505050565b5f5f905090565b61084d61083e565b610858818484610819565b505050565b5b8181101561087b576108705f82610845565b60018101905061085e565b5050565b601f8211156108c0576108918161075f565b61089a84610771565b810160208510156108a9578190505b6108bd6108b585610771565b83018261085d565b50505b505050565b5f82821c905092915050565b5f6108e05f19846008026108c5565b1980831691505092915050565b5f6108f883836108d1565b9150826002028217905092915050565b610911826106f8565b67ffffffffffffffff81111561092a5761092961025a565b5b610934825461072f565b61093f82828561087f565b5f60209050601f831160018114610970575f841561095e578287015190505b61096885826108ed565b8655506109cf565b601f19841661097e8661075f565b5f5b828110156109a557848901518255600182019150602085019450602081019050610980565b868310156109c257848901516109be601f8916826108d1565b8355505b6001600288020188555050505b505050505050565b6116a5806109e45f395ff3fe608060405234801561000f575f5ffd5b5060043610610060575f3560e01c806301ffc9a7146100645780631dcfea0914610094578063736c0d5b146100c4578063796676be146100f45780639061b92314610124578063f4d4d2f814610154575b5f5ffd5b61007e600480360381019061007991906109a3565b610184565b60405161008b91906109e8565b60405180910390f35b6100ae60048036038101906100a99190610bd4565b6101fd565b6040516100bb9190610c88565b60405180910390f35b6100de60048036038101906100d99190610ca1565b610214565b6040516100eb91906109e8565b60405180910390f35b61010e60048036038101906101099190610cff565b610231565b60405161011b9190610d8a565b60405180910390f35b61013e60048036038101906101399190610e07565b6102d6565b60405161014b9190610ed7565b60405180910390f35b61016e60048036038101906101699190610e07565b6103a3565b60405161017b9190610ed7565b60405180910390f35b5f7f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806101f657506101f58261044d565b5b9050919050565b5f61020a858585856104b6565b9050949350505050565b6001602052805f5260405f205f915054906101000a900460ff1681565b5f818154811061023f575f80fd5b905f5260205f20015f91509050805461025790610f24565b80601f016020809104026020016040519081016040528092919081815260200182805461028390610f24565b80156102ce5780601f106102a5576101008083540402835291602001916102ce565b820191905f5260205f20905b8154815290600101906020018083116102b157829003601f168201915b505050505081565b60605f639061b92360e01b868686866040516024016102f89493929190610f80565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050305f8263f4d4d2f860e01b846040517f556f183000000000000000000000000000000000000000000000000000000000815260040161039a959493929190611137565b60405180910390fd5b60605f5f6103b3858589896104fc565b9150915060015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104379061120d565b60405180910390fd5b8092505050949350505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f8484848051906020012084805190602001206040516020016104dc9493929190611318565b604051602081830303815290604052805190602001209050949350505050565b5f60605f5f5f86868101906105119190611370565b9250925092505f61057061056a30858d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050886104b6565b83610585565b90508084955095505050505094509492505050565b5f5f5f61059285856105aa565b9150915061059f81610625565b819250505092915050565b5f5f60418351036105e7575f5f5f602086015192506040860151915060608601515f1a90506105db878285856107f0565b9450945050505061061e565b6040835103610616575f5f602085015191506040850151905061060b8683836108f1565b93509350505061061e565b5f6002915091505b9250929050565b5f6004811115610638576106376113f8565b5b81600481111561064b5761064a6113f8565b5b03156107ed5760016004811115610665576106646113f8565b5b816004811115610678576106776113f8565b5b036106b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106af9061146f565b60405180910390fd5b600260048111156106cc576106cb6113f8565b5b8160048111156106df576106de6113f8565b5b0361071f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610716906114d7565b60405180910390fd5b60036004811115610733576107326113f8565b5b816004811115610746576107456113f8565b5b03610786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077d90611565565b60405180910390fd5b600480811115610799576107986113f8565b5b8160048111156107ac576107ab6113f8565b5b036107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e3906115f3565b60405180910390fd5b5b50565b5f5f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0835f1c1115610828575f6003915091506108e8565b601b8560ff16141580156108405750601c8560ff1614155b15610851575f6004915091506108e8565b5f6001878787876040515f8152602001604052604051610874949392919061162c565b6020604051602081039080840390855afa158015610894573d5f5f3e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036108e0575f600192509250506108e8565b805f92509250505b94509492505050565b5f5f5f5f7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85169150601b8560ff1c01905061092f878288856107f0565b935093505050935093915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6109828161094e565b811461098c575f5ffd5b50565b5f8135905061099d81610979565b92915050565b5f602082840312156109b8576109b7610946565b5b5f6109c58482850161098f565b91505092915050565b5f8115159050919050565b6109e2816109ce565b82525050565b5f6020820190506109fb5f8301846109d9565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a2a82610a01565b9050919050565b610a3a81610a20565b8114610a44575f5ffd5b50565b5f81359050610a5581610a31565b92915050565b5f67ffffffffffffffff82169050919050565b610a7781610a5b565b8114610a81575f5ffd5b50565b5f81359050610a9281610a6e565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610ae682610aa0565b810181811067ffffffffffffffff82111715610b0557610b04610ab0565b5b80604052505050565b5f610b1761093d565b9050610b238282610add565b919050565b5f67ffffffffffffffff821115610b4257610b41610ab0565b5b610b4b82610aa0565b9050602081019050919050565b828183375f83830152505050565b5f610b78610b7384610b28565b610b0e565b905082815260208101848484011115610b9457610b93610a9c565b5b610b9f848285610b58565b509392505050565b5f82601f830112610bbb57610bba610a98565b5b8135610bcb848260208601610b66565b91505092915050565b5f5f5f5f60808587031215610bec57610beb610946565b5b5f610bf987828801610a47565b9450506020610c0a87828801610a84565b935050604085013567ffffffffffffffff811115610c2b57610c2a61094a565b5b610c3787828801610ba7565b925050606085013567ffffffffffffffff811115610c5857610c5761094a565b5b610c6487828801610ba7565b91505092959194509250565b5f819050919050565b610c8281610c70565b82525050565b5f602082019050610c9b5f830184610c79565b92915050565b5f60208284031215610cb657610cb5610946565b5b5f610cc384828501610a47565b91505092915050565b5f819050919050565b610cde81610ccc565b8114610ce8575f5ffd5b50565b5f81359050610cf981610cd5565b92915050565b5f60208284031215610d1457610d13610946565b5b5f610d2184828501610ceb565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610d5c82610d2a565b610d668185610d34565b9350610d76818560208601610d44565b610d7f81610aa0565b840191505092915050565b5f6020820190508181035f830152610da28184610d52565b905092915050565b5f5ffd5b5f5ffd5b5f5f83601f840112610dc757610dc6610a98565b5b8235905067ffffffffffffffff811115610de457610de3610daa565b5b602083019150836001820283011115610e0057610dff610dae565b5b9250929050565b5f5f5f5f60408587031215610e1f57610e1e610946565b5b5f85013567ffffffffffffffff811115610e3c57610e3b61094a565b5b610e4887828801610db2565b9450945050602085013567ffffffffffffffff811115610e6b57610e6a61094a565b5b610e7787828801610db2565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b5f610ea982610e85565b610eb38185610e8f565b9350610ec3818560208601610d44565b610ecc81610aa0565b840191505092915050565b5f6020820190508181035f830152610eef8184610e9f565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610f3b57607f821691505b602082108103610f4e57610f4d610ef7565b5b50919050565b5f610f5f8385610e8f565b9350610f6c838584610b58565b610f7583610aa0565b840190509392505050565b5f6040820190508181035f830152610f99818688610f54565b90508181036020830152610fae818486610f54565b905095945050505050565b610fc281610a20565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f815461102281610f24565b61102c8186610ff4565b9450600182165f8114611046576001811461105c5761108e565b60ff19831686528115156020028601935061108e565b61106585611004565b5f5b8381101561108657815481890152600182019150602081019050611067565b808801955050505b50505092915050565b5f6110a28383611016565b905092915050565b5f600182019050919050565b5f6110c082610fc8565b6110ca8185610fd2565b9350836020820285016110dc85610fe2565b805f5b85811015611116578484038952816110f78582611097565b9450611102836110aa565b925060208a019950506001810190506110df565b50829750879550505050505092915050565b6111318161094e565b82525050565b5f60a08201905061114a5f830188610fb9565b818103602083015261115c81876110b6565b905081810360408301526111708186610e9f565b905061117f6060830185611128565b81810360808301526111918184610e9f565b90509695505050505050565b7f5369676e617475726556657269666965723a20496e76616c6964207369676e615f8201527f7475726500000000000000000000000000000000000000000000000000000000602082015250565b5f6111f7602483610d34565b91506112028261119d565b604082019050919050565b5f6020820190508181035f830152611224816111eb565b9050919050565b5f81905092915050565b7f19000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61126960028361122b565b915061127482611235565b600282019050919050565b5f8160601b9050919050565b5f6112958261127f565b9050919050565b5f6112a68261128b565b9050919050565b6112be6112b982610a20565b61129c565b82525050565b5f8160c01b9050919050565b5f6112da826112c4565b9050919050565b6112f26112ed82610a5b565b6112d0565b82525050565b5f819050919050565b61131261130d82610c70565b6112f8565b82525050565b5f6113228261125d565b915061132e82876112ad565b60148201915061133e82866112e1565b60088201915061134e8285611301565b60208201915061135e8284611301565b60208201915081905095945050505050565b5f5f5f6060848603121561138757611386610946565b5b5f84013567ffffffffffffffff8111156113a4576113a361094a565b5b6113b086828701610ba7565b93505060206113c186828701610a84565b925050604084013567ffffffffffffffff8111156113e2576113e161094a565b5b6113ee86828701610ba7565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f45434453413a20696e76616c6964207369676e617475726500000000000000005f82015250565b5f611459601883610d34565b915061146482611425565b602082019050919050565b5f6020820190508181035f8301526114868161144d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e677468005f82015250565b5f6114c1601f83610d34565b91506114cc8261148d565b602082019050919050565b5f6020820190508181035f8301526114ee816114b5565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f61154f602283610d34565b915061155a826114f5565b604082019050919050565b5f6020820190508181035f83015261157c81611543565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f6115dd602283610d34565b91506115e882611583565b604082019050919050565b5f6020820190508181035f83015261160a816115d1565b9050919050565b5f60ff82169050919050565b61162681611611565b82525050565b5f60808201905061163f5f830187610c79565b61164c602083018661161d565b6116596040830185610c79565b6116666060830184610c79565b9594505050505056fea26469706673582212200f30e8cadf2ee200a775865a981874b6f90ac80f61699819be6c7475dcd4becd64736f6c634300081e0033" # noqa: E501 +OFFCHAIN_RESOLVER_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610060575f3560e01c806301ffc9a7146100645780631dcfea0914610094578063736c0d5b146100c4578063796676be146100f45780639061b92314610124578063f4d4d2f814610154575b5f5ffd5b61007e600480360381019061007991906109a3565b610184565b60405161008b91906109e8565b60405180910390f35b6100ae60048036038101906100a99190610bd4565b6101fd565b6040516100bb9190610c88565b60405180910390f35b6100de60048036038101906100d99190610ca1565b610214565b6040516100eb91906109e8565b60405180910390f35b61010e60048036038101906101099190610cff565b610231565b60405161011b9190610d8a565b60405180910390f35b61013e60048036038101906101399190610e07565b6102d6565b60405161014b9190610ed7565b60405180910390f35b61016e60048036038101906101699190610e07565b6103a3565b60405161017b9190610ed7565b60405180910390f35b5f7f9061b923000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806101f657506101f58261044d565b5b9050919050565b5f61020a858585856104b6565b9050949350505050565b6001602052805f5260405f205f915054906101000a900460ff1681565b5f818154811061023f575f80fd5b905f5260205f20015f91509050805461025790610f24565b80601f016020809104026020016040519081016040528092919081815260200182805461028390610f24565b80156102ce5780601f106102a5576101008083540402835291602001916102ce565b820191905f5260205f20905b8154815290600101906020018083116102b157829003601f168201915b505050505081565b60605f639061b92360e01b868686866040516024016102f89493929190610f80565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050509050305f8263f4d4d2f860e01b846040517f556f183000000000000000000000000000000000000000000000000000000000815260040161039a959493929190611137565b60405180910390fd5b60605f5f6103b3858589896104fc565b9150915060015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16610440576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104379061120d565b60405180910390fd5b8092505050949350505050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f8484848051906020012084805190602001206040516020016104dc9493929190611318565b604051602081830303815290604052805190602001209050949350505050565b5f60605f5f5f86868101906105119190611370565b9250925092505f61057061056a30858d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050886104b6565b83610585565b90508084955095505050505094509492505050565b5f5f5f61059285856105aa565b9150915061059f81610625565b819250505092915050565b5f5f60418351036105e7575f5f5f602086015192506040860151915060608601515f1a90506105db878285856107f0565b9450945050505061061e565b6040835103610616575f5f602085015191506040850151905061060b8683836108f1565b93509350505061061e565b5f6002915091505b9250929050565b5f6004811115610638576106376113f8565b5b81600481111561064b5761064a6113f8565b5b03156107ed5760016004811115610665576106646113f8565b5b816004811115610678576106776113f8565b5b036106b8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106af9061146f565b60405180910390fd5b600260048111156106cc576106cb6113f8565b5b8160048111156106df576106de6113f8565b5b0361071f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610716906114d7565b60405180910390fd5b60036004811115610733576107326113f8565b5b816004811115610746576107456113f8565b5b03610786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077d90611565565b60405180910390fd5b600480811115610799576107986113f8565b5b8160048111156107ac576107ab6113f8565b5b036107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e3906115f3565b60405180910390fd5b5b50565b5f5f7f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0835f1c1115610828575f6003915091506108e8565b601b8560ff16141580156108405750601c8560ff1614155b15610851575f6004915091506108e8565b5f6001878787876040515f8152602001604052604051610874949392919061162c565b6020604051602081039080840390855afa158015610894573d5f5f3e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036108e0575f600192509250506108e8565b805f92509250505b94509492505050565b5f5f5f5f7f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85169150601b8560ff1c01905061092f878288856107f0565b935093505050935093915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6109828161094e565b811461098c575f5ffd5b50565b5f8135905061099d81610979565b92915050565b5f602082840312156109b8576109b7610946565b5b5f6109c58482850161098f565b91505092915050565b5f8115159050919050565b6109e2816109ce565b82525050565b5f6020820190506109fb5f8301846109d9565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a2a82610a01565b9050919050565b610a3a81610a20565b8114610a44575f5ffd5b50565b5f81359050610a5581610a31565b92915050565b5f67ffffffffffffffff82169050919050565b610a7781610a5b565b8114610a81575f5ffd5b50565b5f81359050610a9281610a6e565b92915050565b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610ae682610aa0565b810181811067ffffffffffffffff82111715610b0557610b04610ab0565b5b80604052505050565b5f610b1761093d565b9050610b238282610add565b919050565b5f67ffffffffffffffff821115610b4257610b41610ab0565b5b610b4b82610aa0565b9050602081019050919050565b828183375f83830152505050565b5f610b78610b7384610b28565b610b0e565b905082815260208101848484011115610b9457610b93610a9c565b5b610b9f848285610b58565b509392505050565b5f82601f830112610bbb57610bba610a98565b5b8135610bcb848260208601610b66565b91505092915050565b5f5f5f5f60808587031215610bec57610beb610946565b5b5f610bf987828801610a47565b9450506020610c0a87828801610a84565b935050604085013567ffffffffffffffff811115610c2b57610c2a61094a565b5b610c3787828801610ba7565b925050606085013567ffffffffffffffff811115610c5857610c5761094a565b5b610c6487828801610ba7565b91505092959194509250565b5f819050919050565b610c8281610c70565b82525050565b5f602082019050610c9b5f830184610c79565b92915050565b5f60208284031215610cb657610cb5610946565b5b5f610cc384828501610a47565b91505092915050565b5f819050919050565b610cde81610ccc565b8114610ce8575f5ffd5b50565b5f81359050610cf981610cd5565b92915050565b5f60208284031215610d1457610d13610946565b5b5f610d2184828501610ceb565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610d5c82610d2a565b610d668185610d34565b9350610d76818560208601610d44565b610d7f81610aa0565b840191505092915050565b5f6020820190508181035f830152610da28184610d52565b905092915050565b5f5ffd5b5f5ffd5b5f5f83601f840112610dc757610dc6610a98565b5b8235905067ffffffffffffffff811115610de457610de3610daa565b5b602083019150836001820283011115610e0057610dff610dae565b5b9250929050565b5f5f5f5f60408587031215610e1f57610e1e610946565b5b5f85013567ffffffffffffffff811115610e3c57610e3b61094a565b5b610e4887828801610db2565b9450945050602085013567ffffffffffffffff811115610e6b57610e6a61094a565b5b610e7787828801610db2565b925092505092959194509250565b5f81519050919050565b5f82825260208201905092915050565b5f610ea982610e85565b610eb38185610e8f565b9350610ec3818560208601610d44565b610ecc81610aa0565b840191505092915050565b5f6020820190508181035f830152610eef8184610e9f565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610f3b57607f821691505b602082108103610f4e57610f4d610ef7565b5b50919050565b5f610f5f8385610e8f565b9350610f6c838584610b58565b610f7583610aa0565b840190509392505050565b5f6040820190508181035f830152610f99818688610f54565b90508181036020830152610fae818486610f54565b905095945050505050565b610fc281610a20565b82525050565b5f81549050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f82825260208201905092915050565b5f819050815f5260205f209050919050565b5f815461102281610f24565b61102c8186610ff4565b9450600182165f8114611046576001811461105c5761108e565b60ff19831686528115156020028601935061108e565b61106585611004565b5f5b8381101561108657815481890152600182019150602081019050611067565b808801955050505b50505092915050565b5f6110a28383611016565b905092915050565b5f600182019050919050565b5f6110c082610fc8565b6110ca8185610fd2565b9350836020820285016110dc85610fe2565b805f5b85811015611116578484038952816110f78582611097565b9450611102836110aa565b925060208a019950506001810190506110df565b50829750879550505050505092915050565b6111318161094e565b82525050565b5f60a08201905061114a5f830188610fb9565b818103602083015261115c81876110b6565b905081810360408301526111708186610e9f565b905061117f6060830185611128565b81810360808301526111918184610e9f565b90509695505050505050565b7f5369676e617475726556657269666965723a20496e76616c6964207369676e615f8201527f7475726500000000000000000000000000000000000000000000000000000000602082015250565b5f6111f7602483610d34565b91506112028261119d565b604082019050919050565b5f6020820190508181035f830152611224816111eb565b9050919050565b5f81905092915050565b7f19000000000000000000000000000000000000000000000000000000000000005f82015250565b5f61126960028361122b565b915061127482611235565b600282019050919050565b5f8160601b9050919050565b5f6112958261127f565b9050919050565b5f6112a68261128b565b9050919050565b6112be6112b982610a20565b61129c565b82525050565b5f8160c01b9050919050565b5f6112da826112c4565b9050919050565b6112f26112ed82610a5b565b6112d0565b82525050565b5f819050919050565b61131261130d82610c70565b6112f8565b82525050565b5f6113228261125d565b915061132e82876112ad565b60148201915061133e82866112e1565b60088201915061134e8285611301565b60208201915061135e8284611301565b60208201915081905095945050505050565b5f5f5f6060848603121561138757611386610946565b5b5f84013567ffffffffffffffff8111156113a4576113a361094a565b5b6113b086828701610ba7565b93505060206113c186828701610a84565b925050604084013567ffffffffffffffff8111156113e2576113e161094a565b5b6113ee86828701610ba7565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f45434453413a20696e76616c6964207369676e617475726500000000000000005f82015250565b5f611459601883610d34565b915061146482611425565b602082019050919050565b5f6020820190508181035f8301526114868161144d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e677468005f82015250565b5f6114c1601f83610d34565b91506114cc8261148d565b602082019050919050565b5f6020820190508181035f8301526114ee816114b5565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f61154f602283610d34565b915061155a826114f5565b604082019050919050565b5f6020820190508181035f83015261157c81611543565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f6115dd602283610d34565b91506115e882611583565b604082019050919050565b5f6020820190508181035f83015261160a816115d1565b9050919050565b5f60ff82169050919050565b61162681611611565b82525050565b5f60808201905061163f5f830187610c79565b61164c602083018661161d565b6116596040830185610c79565b6116666060830184610c79565b9594505050505056fea26469706673582212200f30e8cadf2ee200a775865a981874b6f90ac80f61699819be6c7475dcd4becd64736f6c634300081e0033" # noqa: E501 OFFCHAIN_RESOLVER_ABI = [ { "inputs": [ diff --git a/web3/_utils/contract_sources/contract_data/panic_errors_contract.py b/web3/_utils/contract_sources/contract_data/panic_errors_contract.py index de5f0085bd..897ea32088 100644 --- a/web3/_utils/contract_sources/contract_data/panic_errors_contract.py +++ b/web3/_utils/contract_sources/contract_data/panic_errors_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/PanicErrorsContract.sol:PanicErrorsContract -PANIC_ERRORS_CONTRACT_BYTECODE = "0x60806040525f67ffffffffffffffff81111561001e5761001d61018f565b5b60405190808252806020026020018201604052801561005157816020015b606081526020019060019003908161003c5790505b505f90805190602001906100669291906100bd565b506040518060400160405280600381526020017f6162630000000000000000000000000000000000000000000000000000000000815250600190816100ab91906103cc565b503480156100b7575f5ffd5b50610574565b828054828255905f5260205f20908101928215610103579160200282015b828111156101025782518290816100f291906104a5565b50916020019190600101906100db565b5b5090506101109190610114565b5090565b5b80821115610133575f818161012a9190610137565b50600101610115565b5090565b508054610143906101f3565b5f825580601f106101545750610171565b601f0160209004905f5260205f20908101906101709190610174565b5b50565b5b8082111561018b575f815f905550600101610175565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061020a57607f821691505b60208210810361021d5761021c6101c6565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261027f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610244565b6102898683610244565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6102cd6102c86102c3846102a1565b6102aa565b6102a1565b9050919050565b5f819050919050565b6102e6836102b3565b6102fa6102f2826102d4565b848454610250565b825550505050565b5f5f905090565b610311610302565b61031c8184846102dd565b505050565b5b8181101561033f576103345f82610309565b600181019050610322565b5050565b601f8211156103845761035581610223565b61035e84610235565b8101602085101561036d578190505b61038161037985610235565b830182610321565b50505b505050565b5f82821c905092915050565b5f6103a45f1984600802610389565b1980831691505092915050565b5f6103bc8383610395565b9150826002028217905092915050565b6103d5826101bc565b67ffffffffffffffff8111156103ee576103ed61018f565b5b6103f882546101f3565b610403828285610343565b5f60209050601f831160018114610434575f8415610422578287015190505b61042c85826103b1565b865550610493565b601f19841661044286610223565b5f5b8281101561046957848901518255600182019150602085019450602081019050610444565b868310156104865784890151610482601f891682610395565b8355505b6001600288020188555050505b505050505050565b5f81519050919050565b6104ae8261049b565b67ffffffffffffffff8111156104c7576104c661018f565b5b6104d182546101f3565b6104dc828285610343565b5f60209050601f83116001811461050d575f84156104fb578287015190505b61050585826103b1565b86555061056c565b601f19841661051b86610223565b5f5b828110156105425784890151825560018201915060208501945060208101905061051d565b8683101561055f578489015161055b601f891682610395565b8355505b6001600288020188555050505b505050505050565b610990806105815f395ff3fe608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c80638e5ab2d21161006f5780638e5ab2d214610118578063946c05b214610122578063a56dfe4a1461012c578063b6a3bfb11461014a578063c2eb2ebb14610166578063fc430d5c14610170576100b2565b80630c55699c146100b65780633124bba4146100d45780633b447353146100de578063554c0809146100e85780636407fe2c146100f25780636fff525e146100fc575b5f5ffd5b6100be6101a0565b6040516100cb919061065e565b60405180910390f35b6100dc61022c565b005b6100e661024b565b005b6100f06102bf565b005b6100fa6102d4565b005b610116600480360381019061011191906106b5565b6102e4565b005b6101206102fd565b005b61012a61032b565b005b610134610355565b604051610141919061065e565b60405180910390f35b610164600480360381019061015f9190610713565b6103e1565b005b61016e6103f5565b005b61018a60048036038101906101859190610713565b6104e7565b604051610197919061065e565b60405180910390f35b600180546101ad9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546101d99061076b565b80156102245780601f106101fb57610100808354040283529160200191610224565b820191905f5260205f20905b81548152906001019060200180831161020757829003601f168201915b505050505081565b5f6001815481106102405761023f61079b565b5b905f5260205f205050565b5f7f080000000000000000000000000000000000000000000000000000000000000090505f8167ffffffffffffffff81111561028a576102896107c8565b5b6040519080825280602002602001820160405280156102b85781602001602082028036833780820191505090505b5090505050565b5f5f905080806102ce90610822565b91505050565b5f6102e2576102e1610849565b5b565b5f815f8111156102f7576102f6610876565b5b90505050565b5f80548061030e5761030d6108a3565b5b600190038181905f5260205f20015f610327919061058c565b9055565b61035360035f9054906101000a900480156105c9021767ffffffffffffffff1663ffffffff16565b565b600280546103629061076b565b80601f016020809104026020016040519081016040528092919081815260200182805461038e9061076b565b80156103d95780601f106103b0576101008083540402835291602001916103d9565b820191905f5260205f20905b8154815290600101906020018083116103bc57829003601f168201915b505050505081565b5f8160056103ef91906108fd565b90505050565b604060015560025f610407919061058c565b60018054806104159061076b565b80610447577f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b601f81115f811461045f5760018114610481576104de565b6001826021036101000a036001830392506002830284821916179350506104de565b835f5260205f2082602081146104c757601f6001850316602060018603048301925082546001826020036101000a038181191691508185556002880397505050506104db565b81545f835560ff1981169050603e81179550505b50505b50818355505050565b5f81815481106104f5575f80fd5b905f5260205f20015f91509050805461050d9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546105399061076b565b80156105845780601f1061055b57610100808354040283529160200191610584565b820191905f5260205f20905b81548152906001019060200180831161056757829003601f168201915b505050505081565b5080546105989061076b565b5f825580601f106105a957506105c6565b601f0160209004905f5260205f20908101906105c591906105d3565b5b50565b6105d161092d565b565b5b808211156105ea575f815f9055506001016105d4565b5090565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610630826105ee565b61063a81856105f8565b935061064a818560208601610608565b61065381610616565b840191505092915050565b5f6020820190508181035f8301526106768184610626565b905092915050565b5f5ffd5b5f819050919050565b61069481610682565b811461069e575f5ffd5b50565b5f813590506106af8161068b565b92915050565b5f602082840312156106ca576106c961067e565b5b5f6106d7848285016106a1565b91505092915050565b5f819050919050565b6106f2816106e0565b81146106fc575f5ffd5b50565b5f8135905061070d816106e9565b92915050565b5f602082840312156107285761072761067e565b5b5f610735848285016106ff565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061078257607f821691505b6020821081036107955761079461073e565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61082c826106e0565b91505f820361083e5761083d6107f5565b5b600182039050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610907826106e0565b9150610912836106e0565b925082610922576109216108d0565b5b828204905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffdfea2646970667358221220123a6c49636a6588e5251a1aeb887ffc6d9eede6069eb3e8140dcaeb7e24824264736f6c634300081d0033" # noqa: E501 -PANIC_ERRORS_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c80638e5ab2d21161006f5780638e5ab2d214610118578063946c05b214610122578063a56dfe4a1461012c578063b6a3bfb11461014a578063c2eb2ebb14610166578063fc430d5c14610170576100b2565b80630c55699c146100b65780633124bba4146100d45780633b447353146100de578063554c0809146100e85780636407fe2c146100f25780636fff525e146100fc575b5f5ffd5b6100be6101a0565b6040516100cb919061065e565b60405180910390f35b6100dc61022c565b005b6100e661024b565b005b6100f06102bf565b005b6100fa6102d4565b005b610116600480360381019061011191906106b5565b6102e4565b005b6101206102fd565b005b61012a61032b565b005b610134610355565b604051610141919061065e565b60405180910390f35b610164600480360381019061015f9190610713565b6103e1565b005b61016e6103f5565b005b61018a60048036038101906101859190610713565b6104e7565b604051610197919061065e565b60405180910390f35b600180546101ad9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546101d99061076b565b80156102245780601f106101fb57610100808354040283529160200191610224565b820191905f5260205f20905b81548152906001019060200180831161020757829003601f168201915b505050505081565b5f6001815481106102405761023f61079b565b5b905f5260205f205050565b5f7f080000000000000000000000000000000000000000000000000000000000000090505f8167ffffffffffffffff81111561028a576102896107c8565b5b6040519080825280602002602001820160405280156102b85781602001602082028036833780820191505090505b5090505050565b5f5f905080806102ce90610822565b91505050565b5f6102e2576102e1610849565b5b565b5f815f8111156102f7576102f6610876565b5b90505050565b5f80548061030e5761030d6108a3565b5b600190038181905f5260205f20015f610327919061058c565b9055565b61035360035f9054906101000a900480156105c9021767ffffffffffffffff1663ffffffff16565b565b600280546103629061076b565b80601f016020809104026020016040519081016040528092919081815260200182805461038e9061076b565b80156103d95780601f106103b0576101008083540402835291602001916103d9565b820191905f5260205f20905b8154815290600101906020018083116103bc57829003601f168201915b505050505081565b5f8160056103ef91906108fd565b90505050565b604060015560025f610407919061058c565b60018054806104159061076b565b80610447577f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b601f81115f811461045f5760018114610481576104de565b6001826021036101000a036001830392506002830284821916179350506104de565b835f5260205f2082602081146104c757601f6001850316602060018603048301925082546001826020036101000a038181191691508185556002880397505050506104db565b81545f835560ff1981169050603e81179550505b50505b50818355505050565b5f81815481106104f5575f80fd5b905f5260205f20015f91509050805461050d9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546105399061076b565b80156105845780601f1061055b57610100808354040283529160200191610584565b820191905f5260205f20905b81548152906001019060200180831161056757829003601f168201915b505050505081565b5080546105989061076b565b5f825580601f106105a957506105c6565b601f0160209004905f5260205f20908101906105c591906105d3565b5b50565b6105d161092d565b565b5b808211156105ea575f815f9055506001016105d4565b5090565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610630826105ee565b61063a81856105f8565b935061064a818560208601610608565b61065381610616565b840191505092915050565b5f6020820190508181035f8301526106768184610626565b905092915050565b5f5ffd5b5f819050919050565b61069481610682565b811461069e575f5ffd5b50565b5f813590506106af8161068b565b92915050565b5f602082840312156106ca576106c961067e565b5b5f6106d7848285016106a1565b91505092915050565b5f819050919050565b6106f2816106e0565b81146106fc575f5ffd5b50565b5f8135905061070d816106e9565b92915050565b5f602082840312156107285761072761067e565b5b5f610735848285016106ff565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061078257607f821691505b6020821081036107955761079461073e565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61082c826106e0565b91505f820361083e5761083d6107f5565b5b600182039050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610907826106e0565b9150610912836106e0565b925082610922576109216108d0565b5b828204905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffdfea2646970667358221220123a6c49636a6588e5251a1aeb887ffc6d9eede6069eb3e8140dcaeb7e24824264736f6c634300081d0033" # noqa: E501 +PANIC_ERRORS_CONTRACT_BYTECODE = "0x60806040525f67ffffffffffffffff81111561001e5761001d61018f565b5b60405190808252806020026020018201604052801561005157816020015b606081526020019060019003908161003c5790505b505f90805190602001906100669291906100bd565b506040518060400160405280600381526020017f6162630000000000000000000000000000000000000000000000000000000000815250600190816100ab91906103cc565b503480156100b7575f5ffd5b50610574565b828054828255905f5260205f20908101928215610103579160200282015b828111156101025782518290816100f291906104a5565b50916020019190600101906100db565b5b5090506101109190610114565b5090565b5b80821115610133575f818161012a9190610137565b50600101610115565b5090565b508054610143906101f3565b5f825580601f106101545750610171565b601f0160209004905f5260205f20908101906101709190610174565b5b50565b5b8082111561018b575f815f905550600101610175565b5090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061020a57607f821691505b60208210810361021d5761021c6101c6565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261027f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610244565b6102898683610244565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6102cd6102c86102c3846102a1565b6102aa565b6102a1565b9050919050565b5f819050919050565b6102e6836102b3565b6102fa6102f2826102d4565b848454610250565b825550505050565b5f5f905090565b610311610302565b61031c8184846102dd565b505050565b5b8181101561033f576103345f82610309565b600181019050610322565b5050565b601f8211156103845761035581610223565b61035e84610235565b8101602085101561036d578190505b61038161037985610235565b830182610321565b50505b505050565b5f82821c905092915050565b5f6103a45f1984600802610389565b1980831691505092915050565b5f6103bc8383610395565b9150826002028217905092915050565b6103d5826101bc565b67ffffffffffffffff8111156103ee576103ed61018f565b5b6103f882546101f3565b610403828285610343565b5f60209050601f831160018114610434575f8415610422578287015190505b61042c85826103b1565b865550610493565b601f19841661044286610223565b5f5b8281101561046957848901518255600182019150602085019450602081019050610444565b868310156104865784890151610482601f891682610395565b8355505b6001600288020188555050505b505050505050565b5f81519050919050565b6104ae8261049b565b67ffffffffffffffff8111156104c7576104c661018f565b5b6104d182546101f3565b6104dc828285610343565b5f60209050601f83116001811461050d575f84156104fb578287015190505b61050585826103b1565b86555061056c565b601f19841661051b86610223565b5f5b828110156105425784890151825560018201915060208501945060208101905061051d565b8683101561055f578489015161055b601f891682610395565b8355505b6001600288020188555050505b505050505050565b610990806105815f395ff3fe608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c80638e5ab2d21161006f5780638e5ab2d214610118578063946c05b214610122578063a56dfe4a1461012c578063b6a3bfb11461014a578063c2eb2ebb14610166578063fc430d5c14610170576100b2565b80630c55699c146100b65780633124bba4146100d45780633b447353146100de578063554c0809146100e85780636407fe2c146100f25780636fff525e146100fc575b5f5ffd5b6100be6101a0565b6040516100cb919061065e565b60405180910390f35b6100dc61022c565b005b6100e661024b565b005b6100f06102bf565b005b6100fa6102d4565b005b610116600480360381019061011191906106b5565b6102e4565b005b6101206102fd565b005b61012a61032b565b005b610134610355565b604051610141919061065e565b60405180910390f35b610164600480360381019061015f9190610713565b6103e1565b005b61016e6103f5565b005b61018a60048036038101906101859190610713565b6104e7565b604051610197919061065e565b60405180910390f35b600180546101ad9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546101d99061076b565b80156102245780601f106101fb57610100808354040283529160200191610224565b820191905f5260205f20905b81548152906001019060200180831161020757829003601f168201915b505050505081565b5f6001815481106102405761023f61079b565b5b905f5260205f205050565b5f7f080000000000000000000000000000000000000000000000000000000000000090505f8167ffffffffffffffff81111561028a576102896107c8565b5b6040519080825280602002602001820160405280156102b85781602001602082028036833780820191505090505b5090505050565b5f5f905080806102ce90610822565b91505050565b5f6102e2576102e1610849565b5b565b5f815f8111156102f7576102f6610876565b5b90505050565b5f80548061030e5761030d6108a3565b5b600190038181905f5260205f20015f610327919061058c565b9055565b61035360035f9054906101000a900480156105c9021767ffffffffffffffff1663ffffffff16565b565b600280546103629061076b565b80601f016020809104026020016040519081016040528092919081815260200182805461038e9061076b565b80156103d95780601f106103b0576101008083540402835291602001916103d9565b820191905f5260205f20905b8154815290600101906020018083116103bc57829003601f168201915b505050505081565b5f8160056103ef91906108fd565b90505050565b604060015560025f610407919061058c565b60018054806104159061076b565b80610447577f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b601f81115f811461045f5760018114610481576104de565b6001826021036101000a036001830392506002830284821916179350506104de565b835f5260205f2082602081146104c757601f6001850316602060018603048301925082546001826020036101000a038181191691508185556002880397505050506104db565b81545f835560ff1981169050603e81179550505b50505b50818355505050565b5f81815481106104f5575f80fd5b905f5260205f20015f91509050805461050d9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546105399061076b565b80156105845780601f1061055b57610100808354040283529160200191610584565b820191905f5260205f20905b81548152906001019060200180831161056757829003601f168201915b505050505081565b5080546105989061076b565b5f825580601f106105a957506105c6565b601f0160209004905f5260205f20908101906105c591906105d3565b5b50565b6105d161092d565b565b5b808211156105ea575f815f9055506001016105d4565b5090565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610630826105ee565b61063a81856105f8565b935061064a818560208601610608565b61065381610616565b840191505092915050565b5f6020820190508181035f8301526106768184610626565b905092915050565b5f5ffd5b5f819050919050565b61069481610682565b811461069e575f5ffd5b50565b5f813590506106af8161068b565b92915050565b5f602082840312156106ca576106c961067e565b5b5f6106d7848285016106a1565b91505092915050565b5f819050919050565b6106f2816106e0565b81146106fc575f5ffd5b50565b5f8135905061070d816106e9565b92915050565b5f602082840312156107285761072761067e565b5b5f610735848285016106ff565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061078257607f821691505b6020821081036107955761079461073e565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61082c826106e0565b91505f820361083e5761083d6107f5565b5b600182039050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610907826106e0565b9150610912836106e0565b925082610922576109216108d0565b5b828204905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffdfea26469706673582212204171ea044bdab54fb9f772923ea05ce4bed278fbc8ad7dcae1c768f2ab5fbb6f64736f6c634300081e0033" # noqa: E501 +PANIC_ERRORS_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b50600436106100b2575f3560e01c80638e5ab2d21161006f5780638e5ab2d214610118578063946c05b214610122578063a56dfe4a1461012c578063b6a3bfb11461014a578063c2eb2ebb14610166578063fc430d5c14610170576100b2565b80630c55699c146100b65780633124bba4146100d45780633b447353146100de578063554c0809146100e85780636407fe2c146100f25780636fff525e146100fc575b5f5ffd5b6100be6101a0565b6040516100cb919061065e565b60405180910390f35b6100dc61022c565b005b6100e661024b565b005b6100f06102bf565b005b6100fa6102d4565b005b610116600480360381019061011191906106b5565b6102e4565b005b6101206102fd565b005b61012a61032b565b005b610134610355565b604051610141919061065e565b60405180910390f35b610164600480360381019061015f9190610713565b6103e1565b005b61016e6103f5565b005b61018a60048036038101906101859190610713565b6104e7565b604051610197919061065e565b60405180910390f35b600180546101ad9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546101d99061076b565b80156102245780601f106101fb57610100808354040283529160200191610224565b820191905f5260205f20905b81548152906001019060200180831161020757829003601f168201915b505050505081565b5f6001815481106102405761023f61079b565b5b905f5260205f205050565b5f7f080000000000000000000000000000000000000000000000000000000000000090505f8167ffffffffffffffff81111561028a576102896107c8565b5b6040519080825280602002602001820160405280156102b85781602001602082028036833780820191505090505b5090505050565b5f5f905080806102ce90610822565b91505050565b5f6102e2576102e1610849565b5b565b5f815f8111156102f7576102f6610876565b5b90505050565b5f80548061030e5761030d6108a3565b5b600190038181905f5260205f20015f610327919061058c565b9055565b61035360035f9054906101000a900480156105c9021767ffffffffffffffff1663ffffffff16565b565b600280546103629061076b565b80601f016020809104026020016040519081016040528092919081815260200182805461038e9061076b565b80156103d95780601f106103b0576101008083540402835291602001916103d9565b820191905f5260205f20905b8154815290600101906020018083116103bc57829003601f168201915b505050505081565b5f8160056103ef91906108fd565b90505050565b604060015560025f610407919061058c565b60018054806104159061076b565b80610447577f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b601f81115f811461045f5760018114610481576104de565b6001826021036101000a036001830392506002830284821916179350506104de565b835f5260205f2082602081146104c757601f6001850316602060018603048301925082546001826020036101000a038181191691508185556002880397505050506104db565b81545f835560ff1981169050603e81179550505b50505b50818355505050565b5f81815481106104f5575f80fd5b905f5260205f20015f91509050805461050d9061076b565b80601f01602080910402602001604051908101604052809291908181526020018280546105399061076b565b80156105845780601f1061055b57610100808354040283529160200191610584565b820191905f5260205f20905b81548152906001019060200180831161056757829003601f168201915b505050505081565b5080546105989061076b565b5f825580601f106105a957506105c6565b601f0160209004905f5260205f20908101906105c591906105d3565b5b50565b6105d161092d565b565b5b808211156105ea575f815f9055506001016105d4565b5090565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f610630826105ee565b61063a81856105f8565b935061064a818560208601610608565b61065381610616565b840191505092915050565b5f6020820190508181035f8301526106768184610626565b905092915050565b5f5ffd5b5f819050919050565b61069481610682565b811461069e575f5ffd5b50565b5f813590506106af8161068b565b92915050565b5f602082840312156106ca576106c961067e565b5b5f6106d7848285016106a1565b91505092915050565b5f819050919050565b6106f2816106e0565b81146106fc575f5ffd5b50565b5f8135905061070d816106e9565b92915050565b5f602082840312156107285761072761067e565b5b5f610735848285016106ff565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061078257607f821691505b6020821081036107955761079461073e565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61082c826106e0565b91505f820361083e5761083d6107f5565b5b600182039050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610907826106e0565b9150610912836106e0565b925082610922576109216108d0565b5b828204905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52605160045260245ffdfea26469706673582212204171ea044bdab54fb9f772923ea05ce4bed278fbc8ad7dcae1c768f2ab5fbb6f64736f6c634300081e0033" # noqa: E501 PANIC_ERRORS_CONTRACT_ABI = [ { "inputs": [{"internalType": "uint256", "name": "", "type": "uint256"}], diff --git a/web3/_utils/contract_sources/contract_data/payable_tester.py b/web3/_utils/contract_sources/contract_data/payable_tester.py index 4ab1a51d30..bb2a97b7c3 100644 --- a/web3/_utils/contract_sources/contract_data/payable_tester.py +++ b/web3/_utils/contract_sources/contract_data/payable_tester.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/PayableTester.sol:PayableTesterContract -PAYABLE_TESTER_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5060e78061001b5f395ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063c6803622146034578063e4cb8f5c14604e575b5f5ffd5b603a6056565b60405160459190609a565b60405180910390f35b60546067565b005b5f5f9054906101000a900460ff1681565b60015f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b6094816082565b82525050565b5f60208201905060ab5f830184608d565b9291505056fea26469706673582212203c4748ac0aaaa49de4266f416ae5a2c1843bc45747a81bceb8379b774c67b56e64736f6c634300081d0033" # noqa: E501 -PAYABLE_TESTER_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063c6803622146034578063e4cb8f5c14604e575b5f5ffd5b603a6056565b60405160459190609a565b60405180910390f35b60546067565b005b5f5f9054906101000a900460ff1681565b60015f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b6094816082565b82525050565b5f60208201905060ab5f830184608d565b9291505056fea26469706673582212203c4748ac0aaaa49de4266f416ae5a2c1843bc45747a81bceb8379b774c67b56e64736f6c634300081d0033" # noqa: E501 +PAYABLE_TESTER_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5060e78061001b5f395ff3fe6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063c6803622146034578063e4cb8f5c14604e575b5f5ffd5b603a6056565b60405160459190609a565b60405180910390f35b60546067565b005b5f5f9054906101000a900460ff1681565b60015f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b6094816082565b82525050565b5f60208201905060ab5f830184608d565b9291505056fea2646970667358221220a9b00e8591f184642b3b3dfbbe6465e7a6ad284ba74537a9e2445f737666c8a364736f6c634300081e0033" # noqa: E501 +PAYABLE_TESTER_CONTRACT_RUNTIME = "0x6080604052348015600e575f5ffd5b50600436106030575f3560e01c8063c6803622146034578063e4cb8f5c14604e575b5f5ffd5b603a6056565b60405160459190609a565b60405180910390f35b60546067565b005b5f5f9054906101000a900460ff1681565b60015f5f6101000a81548160ff021916908315150217905550565b5f8115159050919050565b6094816082565b82525050565b5f60208201905060ab5f830184608d565b9291505056fea2646970667358221220a9b00e8591f184642b3b3dfbbe6465e7a6ad284ba74537a9e2445f737666c8a364736f6c634300081e0033" # noqa: E501 PAYABLE_TESTER_CONTRACT_ABI = [ { "inputs": [], diff --git a/web3/_utils/contract_sources/contract_data/receive_function_contracts.py b/web3/_utils/contract_sources/contract_data/receive_function_contracts.py index ebbad84e8f..90ebeb8afa 100644 --- a/web3/_utils/contract_sources/contract_data/receive_function_contracts.py +++ b/web3/_utils/contract_sources/contract_data/receive_function_contracts.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/ReceiveFunctionContracts.sol:ReceiveFunctionContract # noqa: E501 -RECEIVE_FUNCTION_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061076d8061001c5f395ff3fe60806040526004361061002c575f3560e01c80635d3a1f9d146100bb578063e00fe2eb146100f757610076565b36610076576040518060400160405280600781526020017f72656365697665000000000000000000000000000000000000000000000000008152505f9081610074919061048b565b005b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f90816100b9919061048b565b005b3480156100c6575f5ffd5b506100e160048036038101906100dc919061067a565b610121565b6040516100ee9190610717565b60405180910390f35b348015610102575f5ffd5b5061010b6101bf565b6040516101189190610717565b60405180910390f35b6060815f9081610131919061048b565b805461013c906102b2565b80601f0160208091040260200160405190810160405280929190818152602001828054610168906102b2565b80156101b35780601f1061018a576101008083540402835291602001916101b3565b820191905f5260205f20905b81548152906001019060200180831161019657829003601f168201915b50505050509050919050565b60605f80546101cd906102b2565b80601f01602080910402602001604051908101604052809291908181526020018280546101f9906102b2565b80156102445780601f1061021b57610100808354040283529160200191610244565b820191905f5260205f20905b81548152906001019060200180831161022757829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102c957607f821691505b6020821081036102dc576102db610285565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261033e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610303565b6103488683610303565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61038c61038761038284610360565b610369565b610360565b9050919050565b5f819050919050565b6103a583610372565b6103b96103b182610393565b84845461030f565b825550505050565b5f5f905090565b6103d06103c1565b6103db81848461039c565b505050565b5b818110156103fe576103f35f826103c8565b6001810190506103e1565b5050565b601f82111561044357610414816102e2565b61041d846102f4565b8101602085101561042c578190505b610440610438856102f4565b8301826103e0565b50505b505050565b5f82821c905092915050565b5f6104635f1984600802610448565b1980831691505092915050565b5f61047b8383610454565b9150826002028217905092915050565b6104948261024e565b67ffffffffffffffff8111156104ad576104ac610258565b5b6104b782546102b2565b6104c2828285610402565b5f60209050601f8311600181146104f3575f84156104e1578287015190505b6104eb8582610470565b865550610552565b601f198416610501866102e2565b5f5b8281101561052857848901518255600182019150602085019450602081019050610503565b868310156105455784890151610541601f891682610454565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b61058c82610573565b810181811067ffffffffffffffff821117156105ab576105aa610258565b5b80604052505050565b5f6105bd61055a565b90506105c98282610583565b919050565b5f67ffffffffffffffff8211156105e8576105e7610258565b5b6105f182610573565b9050602081019050919050565b828183375f83830152505050565b5f61061e610619846105ce565b6105b4565b90508281526020810184848401111561063a5761063961056f565b5b6106458482856105fe565b509392505050565b5f82601f8301126106615761066061056b565b5b813561067184826020860161060c565b91505092915050565b5f6020828403121561068f5761068e610563565b5b5f82013567ffffffffffffffff8111156106ac576106ab610567565b5b6106b88482850161064d565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6106e98261024e565b6106f381856106c1565b93506107038185602086016106d1565b61070c81610573565b840191505092915050565b5f6020820190508181035f83015261072f81846106df565b90509291505056fea26469706673582212202e196f7d4daa8963a4cba3b73c73bf6ac5473bbaf28ea765b542d82232eb8cd464736f6c634300081d0033" # noqa: E501 -RECEIVE_FUNCTION_CONTRACT_RUNTIME = "0x60806040526004361061002c575f3560e01c80635d3a1f9d146100bb578063e00fe2eb146100f757610076565b36610076576040518060400160405280600781526020017f72656365697665000000000000000000000000000000000000000000000000008152505f9081610074919061048b565b005b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f90816100b9919061048b565b005b3480156100c6575f5ffd5b506100e160048036038101906100dc919061067a565b610121565b6040516100ee9190610717565b60405180910390f35b348015610102575f5ffd5b5061010b6101bf565b6040516101189190610717565b60405180910390f35b6060815f9081610131919061048b565b805461013c906102b2565b80601f0160208091040260200160405190810160405280929190818152602001828054610168906102b2565b80156101b35780601f1061018a576101008083540402835291602001916101b3565b820191905f5260205f20905b81548152906001019060200180831161019657829003601f168201915b50505050509050919050565b60605f80546101cd906102b2565b80601f01602080910402602001604051908101604052809291908181526020018280546101f9906102b2565b80156102445780601f1061021b57610100808354040283529160200191610244565b820191905f5260205f20905b81548152906001019060200180831161022757829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102c957607f821691505b6020821081036102dc576102db610285565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261033e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610303565b6103488683610303565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61038c61038761038284610360565b610369565b610360565b9050919050565b5f819050919050565b6103a583610372565b6103b96103b182610393565b84845461030f565b825550505050565b5f5f905090565b6103d06103c1565b6103db81848461039c565b505050565b5b818110156103fe576103f35f826103c8565b6001810190506103e1565b5050565b601f82111561044357610414816102e2565b61041d846102f4565b8101602085101561042c578190505b610440610438856102f4565b8301826103e0565b50505b505050565b5f82821c905092915050565b5f6104635f1984600802610448565b1980831691505092915050565b5f61047b8383610454565b9150826002028217905092915050565b6104948261024e565b67ffffffffffffffff8111156104ad576104ac610258565b5b6104b782546102b2565b6104c2828285610402565b5f60209050601f8311600181146104f3575f84156104e1578287015190505b6104eb8582610470565b865550610552565b601f198416610501866102e2565b5f5b8281101561052857848901518255600182019150602085019450602081019050610503565b868310156105455784890151610541601f891682610454565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b61058c82610573565b810181811067ffffffffffffffff821117156105ab576105aa610258565b5b80604052505050565b5f6105bd61055a565b90506105c98282610583565b919050565b5f67ffffffffffffffff8211156105e8576105e7610258565b5b6105f182610573565b9050602081019050919050565b828183375f83830152505050565b5f61061e610619846105ce565b6105b4565b90508281526020810184848401111561063a5761063961056f565b5b6106458482856105fe565b509392505050565b5f82601f8301126106615761066061056b565b5b813561067184826020860161060c565b91505092915050565b5f6020828403121561068f5761068e610563565b5b5f82013567ffffffffffffffff8111156106ac576106ab610567565b5b6106b88482850161064d565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6106e98261024e565b6106f381856106c1565b93506107038185602086016106d1565b61070c81610573565b840191505092915050565b5f6020820190508181035f83015261072f81846106df565b90509291505056fea26469706673582212202e196f7d4daa8963a4cba3b73c73bf6ac5473bbaf28ea765b542d82232eb8cd464736f6c634300081d0033" # noqa: E501 +RECEIVE_FUNCTION_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061076d8061001c5f395ff3fe60806040526004361061002c575f3560e01c80635d3a1f9d146100bb578063e00fe2eb146100f757610076565b36610076576040518060400160405280600781526020017f72656365697665000000000000000000000000000000000000000000000000008152505f9081610074919061048b565b005b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f90816100b9919061048b565b005b3480156100c6575f5ffd5b506100e160048036038101906100dc919061067a565b610121565b6040516100ee9190610717565b60405180910390f35b348015610102575f5ffd5b5061010b6101bf565b6040516101189190610717565b60405180910390f35b6060815f9081610131919061048b565b805461013c906102b2565b80601f0160208091040260200160405190810160405280929190818152602001828054610168906102b2565b80156101b35780601f1061018a576101008083540402835291602001916101b3565b820191905f5260205f20905b81548152906001019060200180831161019657829003601f168201915b50505050509050919050565b60605f80546101cd906102b2565b80601f01602080910402602001604051908101604052809291908181526020018280546101f9906102b2565b80156102445780601f1061021b57610100808354040283529160200191610244565b820191905f5260205f20905b81548152906001019060200180831161022757829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102c957607f821691505b6020821081036102dc576102db610285565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261033e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610303565b6103488683610303565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61038c61038761038284610360565b610369565b610360565b9050919050565b5f819050919050565b6103a583610372565b6103b96103b182610393565b84845461030f565b825550505050565b5f5f905090565b6103d06103c1565b6103db81848461039c565b505050565b5b818110156103fe576103f35f826103c8565b6001810190506103e1565b5050565b601f82111561044357610414816102e2565b61041d846102f4565b8101602085101561042c578190505b610440610438856102f4565b8301826103e0565b50505b505050565b5f82821c905092915050565b5f6104635f1984600802610448565b1980831691505092915050565b5f61047b8383610454565b9150826002028217905092915050565b6104948261024e565b67ffffffffffffffff8111156104ad576104ac610258565b5b6104b782546102b2565b6104c2828285610402565b5f60209050601f8311600181146104f3575f84156104e1578287015190505b6104eb8582610470565b865550610552565b601f198416610501866102e2565b5f5b8281101561052857848901518255600182019150602085019450602081019050610503565b868310156105455784890151610541601f891682610454565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b61058c82610573565b810181811067ffffffffffffffff821117156105ab576105aa610258565b5b80604052505050565b5f6105bd61055a565b90506105c98282610583565b919050565b5f67ffffffffffffffff8211156105e8576105e7610258565b5b6105f182610573565b9050602081019050919050565b828183375f83830152505050565b5f61061e610619846105ce565b6105b4565b90508281526020810184848401111561063a5761063961056f565b5b6106458482856105fe565b509392505050565b5f82601f8301126106615761066061056b565b5b813561067184826020860161060c565b91505092915050565b5f6020828403121561068f5761068e610563565b5b5f82013567ffffffffffffffff8111156106ac576106ab610567565b5b6106b88482850161064d565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6106e98261024e565b6106f381856106c1565b93506107038185602086016106d1565b61070c81610573565b840191505092915050565b5f6020820190508181035f83015261072f81846106df565b90509291505056fea2646970667358221220838a5744d5c70fa48b5d3d06020d3825a03e7845033c1a3f012abb3151c97f7064736f6c634300081e0033" # noqa: E501 +RECEIVE_FUNCTION_CONTRACT_RUNTIME = "0x60806040526004361061002c575f3560e01c80635d3a1f9d146100bb578063e00fe2eb146100f757610076565b36610076576040518060400160405280600781526020017f72656365697665000000000000000000000000000000000000000000000000008152505f9081610074919061048b565b005b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f90816100b9919061048b565b005b3480156100c6575f5ffd5b506100e160048036038101906100dc919061067a565b610121565b6040516100ee9190610717565b60405180910390f35b348015610102575f5ffd5b5061010b6101bf565b6040516101189190610717565b60405180910390f35b6060815f9081610131919061048b565b805461013c906102b2565b80601f0160208091040260200160405190810160405280929190818152602001828054610168906102b2565b80156101b35780601f1061018a576101008083540402835291602001916101b3565b820191905f5260205f20905b81548152906001019060200180831161019657829003601f168201915b50505050509050919050565b60605f80546101cd906102b2565b80601f01602080910402602001604051908101604052809291908181526020018280546101f9906102b2565b80156102445780601f1061021b57610100808354040283529160200191610244565b820191905f5260205f20905b81548152906001019060200180831161022757829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102c957607f821691505b6020821081036102dc576102db610285565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261033e7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610303565b6103488683610303565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61038c61038761038284610360565b610369565b610360565b9050919050565b5f819050919050565b6103a583610372565b6103b96103b182610393565b84845461030f565b825550505050565b5f5f905090565b6103d06103c1565b6103db81848461039c565b505050565b5b818110156103fe576103f35f826103c8565b6001810190506103e1565b5050565b601f82111561044357610414816102e2565b61041d846102f4565b8101602085101561042c578190505b610440610438856102f4565b8301826103e0565b50505b505050565b5f82821c905092915050565b5f6104635f1984600802610448565b1980831691505092915050565b5f61047b8383610454565b9150826002028217905092915050565b6104948261024e565b67ffffffffffffffff8111156104ad576104ac610258565b5b6104b782546102b2565b6104c2828285610402565b5f60209050601f8311600181146104f3575f84156104e1578287015190505b6104eb8582610470565b865550610552565b601f198416610501866102e2565b5f5b8281101561052857848901518255600182019150602085019450602081019050610503565b868310156105455784890151610541601f891682610454565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b61058c82610573565b810181811067ffffffffffffffff821117156105ab576105aa610258565b5b80604052505050565b5f6105bd61055a565b90506105c98282610583565b919050565b5f67ffffffffffffffff8211156105e8576105e7610258565b5b6105f182610573565b9050602081019050919050565b828183375f83830152505050565b5f61061e610619846105ce565b6105b4565b90508281526020810184848401111561063a5761063961056f565b5b6106458482856105fe565b509392505050565b5f82601f8301126106615761066061056b565b5b813561067184826020860161060c565b91505092915050565b5f6020828403121561068f5761068e610563565b5b5f82013567ffffffffffffffff8111156106ac576106ab610567565b5b6106b88482850161064d565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f6106e98261024e565b6106f381856106c1565b93506107038185602086016106d1565b61070c81610573565b840191505092915050565b5f6020820190508181035f83015261072f81846106df565b90509291505056fea2646970667358221220838a5744d5c70fa48b5d3d06020d3825a03e7845033c1a3f012abb3151c97f7064736f6c634300081e0033" # noqa: E501 RECEIVE_FUNCTION_CONTRACT_ABI = [ {"stateMutability": "payable", "type": "fallback"}, { @@ -32,8 +32,8 @@ # source: web3/_utils/contract_sources/ReceiveFunctionContracts.sol:NoReceiveFunctionContract # noqa: E501 -NO_RECEIVE_FUNCTION_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506107188061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610038575f3560e01c80635d3a1f9d1461007e578063e00fe2eb146100ae57610039565b5b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f908161007c9190610436565b005b61009860048036038101906100939190610625565b6100cc565b6040516100a591906106c2565b60405180910390f35b6100b661016a565b6040516100c391906106c2565b60405180910390f35b6060815f90816100dc9190610436565b80546100e79061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101139061025d565b801561015e5780601f106101355761010080835404028352916020019161015e565b820191905f5260205f20905b81548152906001019060200180831161014157829003601f168201915b50505050509050919050565b60605f80546101789061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101a49061025d565b80156101ef5780601f106101c6576101008083540402835291602001916101ef565b820191905f5260205f20905b8154815290600101906020018083116101d257829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061027457607f821691505b60208210810361028757610286610230565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026102e97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102ae565b6102f386836102ae565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61033761033261032d8461030b565b610314565b61030b565b9050919050565b5f819050919050565b6103508361031d565b61036461035c8261033e565b8484546102ba565b825550505050565b5f5f905090565b61037b61036c565b610386818484610347565b505050565b5b818110156103a95761039e5f82610373565b60018101905061038c565b5050565b601f8211156103ee576103bf8161028d565b6103c88461029f565b810160208510156103d7578190505b6103eb6103e38561029f565b83018261038b565b50505b505050565b5f82821c905092915050565b5f61040e5f19846008026103f3565b1980831691505092915050565b5f61042683836103ff565b9150826002028217905092915050565b61043f826101f9565b67ffffffffffffffff81111561045857610457610203565b5b610462825461025d565b61046d8282856103ad565b5f60209050601f83116001811461049e575f841561048c578287015190505b610496858261041b565b8655506104fd565b601f1984166104ac8661028d565b5f5b828110156104d3578489015182556001820191506020850194506020810190506104ae565b868310156104f057848901516104ec601f8916826103ff565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b6105378261051e565b810181811067ffffffffffffffff8211171561055657610555610203565b5b80604052505050565b5f610568610505565b9050610574828261052e565b919050565b5f67ffffffffffffffff82111561059357610592610203565b5b61059c8261051e565b9050602081019050919050565b828183375f83830152505050565b5f6105c96105c484610579565b61055f565b9050828152602081018484840111156105e5576105e461051a565b5b6105f08482856105a9565b509392505050565b5f82601f83011261060c5761060b610516565b5b813561061c8482602086016105b7565b91505092915050565b5f6020828403121561063a5761063961050e565b5b5f82013567ffffffffffffffff81111561065757610656610512565b5b610663848285016105f8565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610694826101f9565b61069e818561066c565b93506106ae81856020860161067c565b6106b78161051e565b840191505092915050565b5f6020820190508181035f8301526106da818461068a565b90509291505056fea2646970667358221220b661ac6d671fa40754272d842aecbb0b440cdfe89fedd4c77bd7cf0d692d32c464736f6c634300081d0033" # noqa: E501 -NO_RECEIVE_FUNCTION_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610038575f3560e01c80635d3a1f9d1461007e578063e00fe2eb146100ae57610039565b5b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f908161007c9190610436565b005b61009860048036038101906100939190610625565b6100cc565b6040516100a591906106c2565b60405180910390f35b6100b661016a565b6040516100c391906106c2565b60405180910390f35b6060815f90816100dc9190610436565b80546100e79061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101139061025d565b801561015e5780601f106101355761010080835404028352916020019161015e565b820191905f5260205f20905b81548152906001019060200180831161014157829003601f168201915b50505050509050919050565b60605f80546101789061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101a49061025d565b80156101ef5780601f106101c6576101008083540402835291602001916101ef565b820191905f5260205f20905b8154815290600101906020018083116101d257829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061027457607f821691505b60208210810361028757610286610230565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026102e97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102ae565b6102f386836102ae565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61033761033261032d8461030b565b610314565b61030b565b9050919050565b5f819050919050565b6103508361031d565b61036461035c8261033e565b8484546102ba565b825550505050565b5f5f905090565b61037b61036c565b610386818484610347565b505050565b5b818110156103a95761039e5f82610373565b60018101905061038c565b5050565b601f8211156103ee576103bf8161028d565b6103c88461029f565b810160208510156103d7578190505b6103eb6103e38561029f565b83018261038b565b50505b505050565b5f82821c905092915050565b5f61040e5f19846008026103f3565b1980831691505092915050565b5f61042683836103ff565b9150826002028217905092915050565b61043f826101f9565b67ffffffffffffffff81111561045857610457610203565b5b610462825461025d565b61046d8282856103ad565b5f60209050601f83116001811461049e575f841561048c578287015190505b610496858261041b565b8655506104fd565b601f1984166104ac8661028d565b5f5b828110156104d3578489015182556001820191506020850194506020810190506104ae565b868310156104f057848901516104ec601f8916826103ff565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b6105378261051e565b810181811067ffffffffffffffff8211171561055657610555610203565b5b80604052505050565b5f610568610505565b9050610574828261052e565b919050565b5f67ffffffffffffffff82111561059357610592610203565b5b61059c8261051e565b9050602081019050919050565b828183375f83830152505050565b5f6105c96105c484610579565b61055f565b9050828152602081018484840111156105e5576105e461051a565b5b6105f08482856105a9565b509392505050565b5f82601f83011261060c5761060b610516565b5b813561061c8482602086016105b7565b91505092915050565b5f6020828403121561063a5761063961050e565b5b5f82013567ffffffffffffffff81111561065757610656610512565b5b610663848285016105f8565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610694826101f9565b61069e818561066c565b93506106ae81856020860161067c565b6106b78161051e565b840191505092915050565b5f6020820190508181035f8301526106da818461068a565b90509291505056fea2646970667358221220b661ac6d671fa40754272d842aecbb0b440cdfe89fedd4c77bd7cf0d692d32c464736f6c634300081d0033" # noqa: E501 +NO_RECEIVE_FUNCTION_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b506107188061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610038575f3560e01c80635d3a1f9d1461007e578063e00fe2eb146100ae57610039565b5b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f908161007c9190610436565b005b61009860048036038101906100939190610625565b6100cc565b6040516100a591906106c2565b60405180910390f35b6100b661016a565b6040516100c391906106c2565b60405180910390f35b6060815f90816100dc9190610436565b80546100e79061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101139061025d565b801561015e5780601f106101355761010080835404028352916020019161015e565b820191905f5260205f20905b81548152906001019060200180831161014157829003601f168201915b50505050509050919050565b60605f80546101789061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101a49061025d565b80156101ef5780601f106101c6576101008083540402835291602001916101ef565b820191905f5260205f20905b8154815290600101906020018083116101d257829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061027457607f821691505b60208210810361028757610286610230565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026102e97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102ae565b6102f386836102ae565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61033761033261032d8461030b565b610314565b61030b565b9050919050565b5f819050919050565b6103508361031d565b61036461035c8261033e565b8484546102ba565b825550505050565b5f5f905090565b61037b61036c565b610386818484610347565b505050565b5b818110156103a95761039e5f82610373565b60018101905061038c565b5050565b601f8211156103ee576103bf8161028d565b6103c88461029f565b810160208510156103d7578190505b6103eb6103e38561029f565b83018261038b565b50505b505050565b5f82821c905092915050565b5f61040e5f19846008026103f3565b1980831691505092915050565b5f61042683836103ff565b9150826002028217905092915050565b61043f826101f9565b67ffffffffffffffff81111561045857610457610203565b5b610462825461025d565b61046d8282856103ad565b5f60209050601f83116001811461049e575f841561048c578287015190505b610496858261041b565b8655506104fd565b601f1984166104ac8661028d565b5f5b828110156104d3578489015182556001820191506020850194506020810190506104ae565b868310156104f057848901516104ec601f8916826103ff565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b6105378261051e565b810181811067ffffffffffffffff8211171561055657610555610203565b5b80604052505050565b5f610568610505565b9050610574828261052e565b919050565b5f67ffffffffffffffff82111561059357610592610203565b5b61059c8261051e565b9050602081019050919050565b828183375f83830152505050565b5f6105c96105c484610579565b61055f565b9050828152602081018484840111156105e5576105e461051a565b5b6105f08482856105a9565b509392505050565b5f82601f83011261060c5761060b610516565b5b813561061c8482602086016105b7565b91505092915050565b5f6020828403121561063a5761063961050e565b5b5f82013567ffffffffffffffff81111561065757610656610512565b5b610663848285016105f8565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610694826101f9565b61069e818561066c565b93506106ae81856020860161067c565b6106b78161051e565b840191505092915050565b5f6020820190508181035f8301526106da818461068a565b90509291505056fea26469706673582212209768bc0c518f9f30f85e9a2aa2d59494907bf2411e4588944c18481ac9c320d764736f6c634300081e0033" # noqa: E501 +NO_RECEIVE_FUNCTION_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610038575f3560e01c80635d3a1f9d1461007e578063e00fe2eb146100ae57610039565b5b6040518060400160405280600881526020017f66616c6c6261636b0000000000000000000000000000000000000000000000008152505f908161007c9190610436565b005b61009860048036038101906100939190610625565b6100cc565b6040516100a591906106c2565b60405180910390f35b6100b661016a565b6040516100c391906106c2565b60405180910390f35b6060815f90816100dc9190610436565b80546100e79061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101139061025d565b801561015e5780601f106101355761010080835404028352916020019161015e565b820191905f5260205f20905b81548152906001019060200180831161014157829003601f168201915b50505050509050919050565b60605f80546101789061025d565b80601f01602080910402602001604051908101604052809291908181526020018280546101a49061025d565b80156101ef5780601f106101c6576101008083540402835291602001916101ef565b820191905f5260205f20905b8154815290600101906020018083116101d257829003601f168201915b5050505050905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061027457607f821691505b60208210810361028757610286610230565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026102e97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102ae565b6102f386836102ae565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61033761033261032d8461030b565b610314565b61030b565b9050919050565b5f819050919050565b6103508361031d565b61036461035c8261033e565b8484546102ba565b825550505050565b5f5f905090565b61037b61036c565b610386818484610347565b505050565b5b818110156103a95761039e5f82610373565b60018101905061038c565b5050565b601f8211156103ee576103bf8161028d565b6103c88461029f565b810160208510156103d7578190505b6103eb6103e38561029f565b83018261038b565b50505b505050565b5f82821c905092915050565b5f61040e5f19846008026103f3565b1980831691505092915050565b5f61042683836103ff565b9150826002028217905092915050565b61043f826101f9565b67ffffffffffffffff81111561045857610457610203565b5b610462825461025d565b61046d8282856103ad565b5f60209050601f83116001811461049e575f841561048c578287015190505b610496858261041b565b8655506104fd565b601f1984166104ac8661028d565b5f5b828110156104d3578489015182556001820191506020850194506020810190506104ae565b868310156104f057848901516104ec601f8916826103ff565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b6105378261051e565b810181811067ffffffffffffffff8211171561055657610555610203565b5b80604052505050565b5f610568610505565b9050610574828261052e565b919050565b5f67ffffffffffffffff82111561059357610592610203565b5b61059c8261051e565b9050602081019050919050565b828183375f83830152505050565b5f6105c96105c484610579565b61055f565b9050828152602081018484840111156105e5576105e461051a565b5b6105f08482856105a9565b509392505050565b5f82601f83011261060c5761060b610516565b5b813561061c8482602086016105b7565b91505092915050565b5f6020828403121561063a5761063961050e565b5b5f82013567ffffffffffffffff81111561065757610656610512565b5b610663848285016105f8565b91505092915050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610694826101f9565b61069e818561066c565b93506106ae81856020860161067c565b6106b78161051e565b840191505092915050565b5f6020820190508181035f8301526106da818461068a565b90509291505056fea26469706673582212209768bc0c518f9f30f85e9a2aa2d59494907bf2411e4588944c18481ac9c320d764736f6c634300081e0033" # noqa: E501 NO_RECEIVE_FUNCTION_CONTRACT_ABI = [ {"stateMutability": "nonpayable", "type": "fallback"}, { diff --git a/web3/_utils/contract_sources/contract_data/reflector_contracts.py b/web3/_utils/contract_sources/contract_data/reflector_contracts.py index 3a5af99849..e76b718a78 100644 --- a/web3/_utils/contract_sources/contract_data/reflector_contracts.py +++ b/web3/_utils/contract_sources/contract_data/reflector_contracts.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/ReflectorContracts.sol:AddressReflectorContract -ADDRESS_REFLECTOR_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061040d8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610034575f3560e01c80630b816c1614610038578063c04d11fc14610068575b5f5ffd5b610052600480360381019061004d9190610116565b610098565b60405161005f9190610150565b60405180910390f35b610082600480360381019061007d91906102b9565b6100a1565b60405161008f91906103b7565b60405180910390f35b5f819050919050565b6060819050919050565b5f604051905090565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100e5826100bc565b9050919050565b6100f5816100db565b81146100ff575f5ffd5b50565b5f81359050610110816100ec565b92915050565b5f6020828403121561012b5761012a6100b4565b5b5f61013884828501610102565b91505092915050565b61014a816100db565b82525050565b5f6020820190506101635f830184610141565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101b38261016d565b810181811067ffffffffffffffff821117156101d2576101d161017d565b5b80604052505050565b5f6101e46100ab565b90506101f082826101aa565b919050565b5f67ffffffffffffffff82111561020f5761020e61017d565b5b602082029050602081019050919050565b5f5ffd5b5f610236610231846101f5565b6101db565b9050808382526020820190506020840283018581111561025957610258610220565b5b835b81811015610282578061026e8882610102565b84526020840193505060208101905061025b565b5050509392505050565b5f82601f8301126102a05761029f610169565b5b81356102b0848260208601610224565b91505092915050565b5f602082840312156102ce576102cd6100b4565b5b5f82013567ffffffffffffffff8111156102eb576102ea6100b8565b5b6102f78482850161028c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610332816100db565b82525050565b5f6103438383610329565b60208301905092915050565b5f602082019050919050565b5f61036582610300565b61036f818561030a565b935061037a8361031a565b805f5b838110156103aa5781516103918882610338565b975061039c8361034f565b92505060018101905061037d565b5085935050505092915050565b5f6020820190508181035f8301526103cf818461035b565b90509291505056fea2646970667358221220f2911377c0a0f0bcf0001ca2ebc893cf7f1defda7446f640dc7ce06bb7aef7d164736f6c634300081d0033" # noqa: E501 -ADDRESS_REFLECTOR_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610034575f3560e01c80630b816c1614610038578063c04d11fc14610068575b5f5ffd5b610052600480360381019061004d9190610116565b610098565b60405161005f9190610150565b60405180910390f35b610082600480360381019061007d91906102b9565b6100a1565b60405161008f91906103b7565b60405180910390f35b5f819050919050565b6060819050919050565b5f604051905090565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100e5826100bc565b9050919050565b6100f5816100db565b81146100ff575f5ffd5b50565b5f81359050610110816100ec565b92915050565b5f6020828403121561012b5761012a6100b4565b5b5f61013884828501610102565b91505092915050565b61014a816100db565b82525050565b5f6020820190506101635f830184610141565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101b38261016d565b810181811067ffffffffffffffff821117156101d2576101d161017d565b5b80604052505050565b5f6101e46100ab565b90506101f082826101aa565b919050565b5f67ffffffffffffffff82111561020f5761020e61017d565b5b602082029050602081019050919050565b5f5ffd5b5f610236610231846101f5565b6101db565b9050808382526020820190506020840283018581111561025957610258610220565b5b835b81811015610282578061026e8882610102565b84526020840193505060208101905061025b565b5050509392505050565b5f82601f8301126102a05761029f610169565b5b81356102b0848260208601610224565b91505092915050565b5f602082840312156102ce576102cd6100b4565b5b5f82013567ffffffffffffffff8111156102eb576102ea6100b8565b5b6102f78482850161028c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610332816100db565b82525050565b5f6103438383610329565b60208301905092915050565b5f602082019050919050565b5f61036582610300565b61036f818561030a565b935061037a8361031a565b805f5b838110156103aa5781516103918882610338565b975061039c8361034f565b92505060018101905061037d565b5085935050505092915050565b5f6020820190508181035f8301526103cf818461035b565b90509291505056fea2646970667358221220f2911377c0a0f0bcf0001ca2ebc893cf7f1defda7446f640dc7ce06bb7aef7d164736f6c634300081d0033" # noqa: E501 +ADDRESS_REFLECTOR_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061040d8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610034575f3560e01c80630b816c1614610038578063c04d11fc14610068575b5f5ffd5b610052600480360381019061004d9190610116565b610098565b60405161005f9190610150565b60405180910390f35b610082600480360381019061007d91906102b9565b6100a1565b60405161008f91906103b7565b60405180910390f35b5f819050919050565b6060819050919050565b5f604051905090565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100e5826100bc565b9050919050565b6100f5816100db565b81146100ff575f5ffd5b50565b5f81359050610110816100ec565b92915050565b5f6020828403121561012b5761012a6100b4565b5b5f61013884828501610102565b91505092915050565b61014a816100db565b82525050565b5f6020820190506101635f830184610141565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101b38261016d565b810181811067ffffffffffffffff821117156101d2576101d161017d565b5b80604052505050565b5f6101e46100ab565b90506101f082826101aa565b919050565b5f67ffffffffffffffff82111561020f5761020e61017d565b5b602082029050602081019050919050565b5f5ffd5b5f610236610231846101f5565b6101db565b9050808382526020820190506020840283018581111561025957610258610220565b5b835b81811015610282578061026e8882610102565b84526020840193505060208101905061025b565b5050509392505050565b5f82601f8301126102a05761029f610169565b5b81356102b0848260208601610224565b91505092915050565b5f602082840312156102ce576102cd6100b4565b5b5f82013567ffffffffffffffff8111156102eb576102ea6100b8565b5b6102f78482850161028c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610332816100db565b82525050565b5f6103438383610329565b60208301905092915050565b5f602082019050919050565b5f61036582610300565b61036f818561030a565b935061037a8361031a565b805f5b838110156103aa5781516103918882610338565b975061039c8361034f565b92505060018101905061037d565b5085935050505092915050565b5f6020820190508181035f8301526103cf818461035b565b90509291505056fea264697066735822122009f600775ae570ad2217d53d261d8bbad526d8a48aa30d3ccd54d2823eb0c82c64736f6c634300081e0033" # noqa: E501 +ADDRESS_REFLECTOR_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610034575f3560e01c80630b816c1614610038578063c04d11fc14610068575b5f5ffd5b610052600480360381019061004d9190610116565b610098565b60405161005f9190610150565b60405180910390f35b610082600480360381019061007d91906102b9565b6100a1565b60405161008f91906103b7565b60405180910390f35b5f819050919050565b6060819050919050565b5f604051905090565b5f5ffd5b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100e5826100bc565b9050919050565b6100f5816100db565b81146100ff575f5ffd5b50565b5f81359050610110816100ec565b92915050565b5f6020828403121561012b5761012a6100b4565b5b5f61013884828501610102565b91505092915050565b61014a816100db565b82525050565b5f6020820190506101635f830184610141565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6101b38261016d565b810181811067ffffffffffffffff821117156101d2576101d161017d565b5b80604052505050565b5f6101e46100ab565b90506101f082826101aa565b919050565b5f67ffffffffffffffff82111561020f5761020e61017d565b5b602082029050602081019050919050565b5f5ffd5b5f610236610231846101f5565b6101db565b9050808382526020820190506020840283018581111561025957610258610220565b5b835b81811015610282578061026e8882610102565b84526020840193505060208101905061025b565b5050509392505050565b5f82601f8301126102a05761029f610169565b5b81356102b0848260208601610224565b91505092915050565b5f602082840312156102ce576102cd6100b4565b5b5f82013567ffffffffffffffff8111156102eb576102ea6100b8565b5b6102f78482850161028c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610332816100db565b82525050565b5f6103438383610329565b60208301905092915050565b5f602082019050919050565b5f61036582610300565b61036f818561030a565b935061037a8361031a565b805f5b838110156103aa5781516103918882610338565b975061039c8361034f565b92505060018101905061037d565b5085935050505092915050565b5f6020820190508181035f8301526103cf818461035b565b90509291505056fea264697066735822122009f600775ae570ad2217d53d261d8bbad526d8a48aa30d3ccd54d2823eb0c82c64736f6c634300081e0033" # noqa: E501 ADDRESS_REFLECTOR_CONTRACT_ABI = [ { "inputs": [{"internalType": "address", "name": "arg", "type": "address"}], diff --git a/web3/_utils/contract_sources/contract_data/revert_contract.py b/web3/_utils/contract_sources/contract_data/revert_contract.py index 2493e96543..6ae7dbb55b 100644 --- a/web3/_utils/contract_sources/contract_data/revert_contract.py +++ b/web3/_utils/contract_sources/contract_data/revert_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/RevertContract.sol:RevertContract -REVERT_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061029c8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c8063185c38a414610059578063bc53eca814610063578063c06a97cb1461006d578063d67e4b8414610077578063e766d49814610095575b5f5ffd5b61006161009f565b005b61006b6100da565b005b610075610115565b005b61007f610119565b60405161008c919061016d565b60405180910390f35b61009d610121565b005b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100d1906101e0565b60405180910390fd5b6040517f9553947a00000000000000000000000000000000000000000000000000000000815260040161010c90610248565b60405180910390fd5b5f5ffd5b5f6001905090565b6040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8115159050919050565b61016781610153565b82525050565b5f6020820190506101805f83018461015e565b92915050565b5f82825260208201905092915050565b7f46756e6374696f6e20686173206265656e2072657665727465642e00000000005f82015250565b5f6101ca601b83610186565b91506101d582610196565b602082019050919050565b5f6020820190508181035f8301526101f7816101be565b9050919050565b7f596f7520617265206e6f7420617574686f72697a6564000000000000000000005f82015250565b5f610232601683610186565b915061023d826101fe565b602082019050919050565b5f6020820190508181035f83015261025f81610226565b905091905056fea264697066735822122054ad0bb8b5d29deb1ebc722f27ca39b297d24c3e0a8b77436983b7ae57b7c0e964736f6c634300081d0033" # noqa: E501 -REVERT_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610055575f3560e01c8063185c38a414610059578063bc53eca814610063578063c06a97cb1461006d578063d67e4b8414610077578063e766d49814610095575b5f5ffd5b61006161009f565b005b61006b6100da565b005b610075610115565b005b61007f610119565b60405161008c919061016d565b60405180910390f35b61009d610121565b005b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100d1906101e0565b60405180910390fd5b6040517f9553947a00000000000000000000000000000000000000000000000000000000815260040161010c90610248565b60405180910390fd5b5f5ffd5b5f6001905090565b6040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8115159050919050565b61016781610153565b82525050565b5f6020820190506101805f83018461015e565b92915050565b5f82825260208201905092915050565b7f46756e6374696f6e20686173206265656e2072657665727465642e00000000005f82015250565b5f6101ca601b83610186565b91506101d582610196565b602082019050919050565b5f6020820190508181035f8301526101f7816101be565b9050919050565b7f596f7520617265206e6f7420617574686f72697a6564000000000000000000005f82015250565b5f610232601683610186565b915061023d826101fe565b602082019050919050565b5f6020820190508181035f83015261025f81610226565b905091905056fea264697066735822122054ad0bb8b5d29deb1ebc722f27ca39b297d24c3e0a8b77436983b7ae57b7c0e964736f6c634300081d0033" # noqa: E501 +REVERT_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061029c8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c8063185c38a414610059578063bc53eca814610063578063c06a97cb1461006d578063d67e4b8414610077578063e766d49814610095575b5f5ffd5b61006161009f565b005b61006b6100da565b005b610075610115565b005b61007f610119565b60405161008c919061016d565b60405180910390f35b61009d610121565b005b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100d1906101e0565b60405180910390fd5b6040517f9553947a00000000000000000000000000000000000000000000000000000000815260040161010c90610248565b60405180910390fd5b5f5ffd5b5f6001905090565b6040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8115159050919050565b61016781610153565b82525050565b5f6020820190506101805f83018461015e565b92915050565b5f82825260208201905092915050565b7f46756e6374696f6e20686173206265656e2072657665727465642e00000000005f82015250565b5f6101ca601b83610186565b91506101d582610196565b602082019050919050565b5f6020820190508181035f8301526101f7816101be565b9050919050565b7f596f7520617265206e6f7420617574686f72697a6564000000000000000000005f82015250565b5f610232601683610186565b915061023d826101fe565b602082019050919050565b5f6020820190508181035f83015261025f81610226565b905091905056fea26469706673582212202d8ccc055c01870a6d80c5aa5526a92e31b542448b7077752700fe921dea786864736f6c634300081e0033" # noqa: E501 +REVERT_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610055575f3560e01c8063185c38a414610059578063bc53eca814610063578063c06a97cb1461006d578063d67e4b8414610077578063e766d49814610095575b5f5ffd5b61006161009f565b005b61006b6100da565b005b610075610115565b005b61007f610119565b60405161008c919061016d565b60405180910390f35b61009d610121565b005b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100d1906101e0565b60405180910390fd5b6040517f9553947a00000000000000000000000000000000000000000000000000000000815260040161010c90610248565b60405180910390fd5b5f5ffd5b5f6001905090565b6040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8115159050919050565b61016781610153565b82525050565b5f6020820190506101805f83018461015e565b92915050565b5f82825260208201905092915050565b7f46756e6374696f6e20686173206265656e2072657665727465642e00000000005f82015250565b5f6101ca601b83610186565b91506101d582610196565b602082019050919050565b5f6020820190508181035f8301526101f7816101be565b9050919050565b7f596f7520617265206e6f7420617574686f72697a6564000000000000000000005f82015250565b5f610232601683610186565b915061023d826101fe565b602082019050919050565b5f6020820190508181035f83015261025f81610226565b905091905056fea26469706673582212202d8ccc055c01870a6d80c5aa5526a92e31b542448b7077752700fe921dea786864736f6c634300081e0033" # noqa: E501 REVERT_CONTRACT_ABI = [ {"inputs": [], "name": "Unauthorized", "type": "error"}, { diff --git a/web3/_utils/contract_sources/contract_data/simple_resolver.py b/web3/_utils/contract_sources/contract_data/simple_resolver.py index a42842dc4e..cd480f839c 100644 --- a/web3/_utils/contract_sources/contract_data/simple_resolver.py +++ b/web3/_utils/contract_sources/contract_data/simple_resolver.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/SimpleResolver.sol:SimpleResolver -SIMPLE_RESOLVER_BYTECODE = "0x6080604052348015600e575f5ffd5b506102758061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610034575f3560e01c806301ffc9a7146100385780633b3b57de14610068575b5f5ffd5b610052600480360381019061004d919061012b565b610098565b60405161005f9190610170565b60405180910390f35b610082600480360381019061007d91906101bc565b6100c9565b60405161008f9190610226565b60405180910390f35b5f633b3b57de60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f309050919050565b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61010a816100d6565b8114610114575f5ffd5b50565b5f8135905061012581610101565b92915050565b5f602082840312156101405761013f6100d2565b5b5f61014d84828501610117565b91505092915050565b5f8115159050919050565b61016a81610156565b82525050565b5f6020820190506101835f830184610161565b92915050565b5f819050919050565b61019b81610189565b81146101a5575f5ffd5b50565b5f813590506101b681610192565b92915050565b5f602082840312156101d1576101d06100d2565b5b5f6101de848285016101a8565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610210826101e7565b9050919050565b61022081610206565b82525050565b5f6020820190506102395f830184610217565b9291505056fea26469706673582212207097b48b4ea723908890de3da35a05eb681bddc9c976233229065f0657132b0164736f6c634300081d0033" # noqa: E501 -SIMPLE_RESOLVER_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610034575f3560e01c806301ffc9a7146100385780633b3b57de14610068575b5f5ffd5b610052600480360381019061004d919061012b565b610098565b60405161005f9190610170565b60405180910390f35b610082600480360381019061007d91906101bc565b6100c9565b60405161008f9190610226565b60405180910390f35b5f633b3b57de60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f309050919050565b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61010a816100d6565b8114610114575f5ffd5b50565b5f8135905061012581610101565b92915050565b5f602082840312156101405761013f6100d2565b5b5f61014d84828501610117565b91505092915050565b5f8115159050919050565b61016a81610156565b82525050565b5f6020820190506101835f830184610161565b92915050565b5f819050919050565b61019b81610189565b81146101a5575f5ffd5b50565b5f813590506101b681610192565b92915050565b5f602082840312156101d1576101d06100d2565b5b5f6101de848285016101a8565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610210826101e7565b9050919050565b61022081610206565b82525050565b5f6020820190506102395f830184610217565b9291505056fea26469706673582212207097b48b4ea723908890de3da35a05eb681bddc9c976233229065f0657132b0164736f6c634300081d0033" # noqa: E501 +SIMPLE_RESOLVER_BYTECODE = "0x6080604052348015600e575f5ffd5b506102758061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610034575f3560e01c806301ffc9a7146100385780633b3b57de14610068575b5f5ffd5b610052600480360381019061004d919061012b565b610098565b60405161005f9190610170565b60405180910390f35b610082600480360381019061007d91906101bc565b6100c9565b60405161008f9190610226565b60405180910390f35b5f633b3b57de60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f309050919050565b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61010a816100d6565b8114610114575f5ffd5b50565b5f8135905061012581610101565b92915050565b5f602082840312156101405761013f6100d2565b5b5f61014d84828501610117565b91505092915050565b5f8115159050919050565b61016a81610156565b82525050565b5f6020820190506101835f830184610161565b92915050565b5f819050919050565b61019b81610189565b81146101a5575f5ffd5b50565b5f813590506101b681610192565b92915050565b5f602082840312156101d1576101d06100d2565b5b5f6101de848285016101a8565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610210826101e7565b9050919050565b61022081610206565b82525050565b5f6020820190506102395f830184610217565b9291505056fea26469706673582212205cf7ee37a56d482fe0f5c4387f62bcd4ba469c14d8f69485c72014a1fa02f2e464736f6c634300081e0033" # noqa: E501 +SIMPLE_RESOLVER_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610034575f3560e01c806301ffc9a7146100385780633b3b57de14610068575b5f5ffd5b610052600480360381019061004d919061012b565b610098565b60405161005f9190610170565b60405180910390f35b610082600480360381019061007d91906101bc565b6100c9565b60405161008f9190610226565b60405180910390f35b5f633b3b57de60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f309050919050565b5f5ffd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61010a816100d6565b8114610114575f5ffd5b50565b5f8135905061012581610101565b92915050565b5f602082840312156101405761013f6100d2565b5b5f61014d84828501610117565b91505092915050565b5f8115159050919050565b61016a81610156565b82525050565b5f6020820190506101835f830184610161565b92915050565b5f819050919050565b61019b81610189565b81146101a5575f5ffd5b50565b5f813590506101b681610192565b92915050565b5f602082840312156101d1576101d06100d2565b5b5f6101de848285016101a8565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610210826101e7565b9050919050565b61022081610206565b82525050565b5f6020820190506102395f830184610217565b9291505056fea26469706673582212205cf7ee37a56d482fe0f5c4387f62bcd4ba469c14d8f69485c72014a1fa02f2e464736f6c634300081e0033" # noqa: E501 SIMPLE_RESOLVER_ABI = [ { "inputs": [{"internalType": "bytes32", "name": "nodeID", "type": "bytes32"}], diff --git a/web3/_utils/contract_sources/contract_data/storage_contract.py b/web3/_utils/contract_sources/contract_data/storage_contract.py index 3cc9eda9fd..7c6ff59506 100644 --- a/web3/_utils/contract_sources/contract_data/storage_contract.py +++ b/web3/_utils/contract_sources/contract_data/storage_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/StorageContract.sol:StorageContract -STORAGE_CONTRACT_BYTECODE = "0x60806040525f5f5560018055600280556040518060400160405280600581526020017f74687265650000000000000000000000000000000000000000000000000000008152506003908161005391906102e7565b506040518060400160405280600481526020017f666f757200000000000000000000000000000000000000000000000000000000815250600490816100989190610418565b503480156100a4575f5ffd5b506104e7565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061012557607f821691505b602082108103610138576101376100e1565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261019a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261015f565b6101a4868361015f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6101e86101e36101de846101bc565b6101c5565b6101bc565b9050919050565b5f819050919050565b610201836101ce565b61021561020d826101ef565b84845461016b565b825550505050565b5f5f905090565b61022c61021d565b6102378184846101f8565b505050565b5b8181101561025a5761024f5f82610224565b60018101905061023d565b5050565b601f82111561029f576102708161013e565b61027984610150565b81016020851015610288578190505b61029c61029485610150565b83018261023c565b50505b505050565b5f82821c905092915050565b5f6102bf5f19846008026102a4565b1980831691505092915050565b5f6102d783836102b0565b9150826002028217905092915050565b6102f0826100aa565b67ffffffffffffffff811115610309576103086100b4565b5b610313825461010e565b61031e82828561025e565b5f60209050601f83116001811461034f575f841561033d578287015190505b61034785826102cc565b8655506103ae565b601f19841661035d8661013e565b5f5b828110156103845784890151825560018201915060208501945060208101905061035f565b868310156103a1578489015161039d601f8916826102b0565b8355505b6001600288020188555050505b505050505050565b5f81519050919050565b5f819050815f5260205f209050919050565b601f821115610413576103e4816103c0565b6103ed84610150565b810160208510156103fc578190505b61041061040885610150565b83018261023c565b50505b505050565b610421826103b6565b67ffffffffffffffff81111561043a576104396100b4565b5b610444825461010e565b61044f8282856103d2565b5f60209050601f831160018114610480575f841561046e578287015190505b61047885826102cc565b8655506104df565b601f19841661048e866103c0565b5f5b828110156104b557848901518255600182019150602085019450602081019050610490565b868310156104d257848901516104ce601f8916826102b0565b8355505b6001600288020188555050505b505050505050565b6103de806104f45f395ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80631f457cb5146100595780633850c7bd146100775780634a9a010914610095578063924fe315146100b3578063d987e6b5146100d1575b5f5ffd5b6100616100ef565b60405161006e9190610230565b60405180910390f35b61007f6100f5565b60405161008c9190610230565b60405180910390f35b61009d6100fa565b6040516100aa91906102b9565b60405180910390f35b6100bb610186565b6040516100c8919061032b565b60405180910390f35b6100d9610212565b6040516100e69190610230565b60405180910390f35b60015481565b5f5481565b6004805461010790610378565b80601f016020809104026020016040519081016040528092919081815260200182805461013390610378565b801561017e5780601f106101555761010080835404028352916020019161017e565b820191905f5260205f20905b81548152906001019060200180831161016157829003601f168201915b505050505081565b6003805461019390610378565b80601f01602080910402602001604051908101604052809291908181526020018280546101bf90610378565b801561020a5780601f106101e15761010080835404028352916020019161020a565b820191905f5260205f20905b8154815290600101906020018083116101ed57829003601f168201915b505050505081565b60025481565b5f819050919050565b61022a81610218565b82525050565b5f6020820190506102435f830184610221565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61028b82610249565b6102958185610253565b93506102a5818560208601610263565b6102ae81610271565b840191505092915050565b5f6020820190508181035f8301526102d18184610281565b905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f6102fd826102d9565b61030781856102e3565b9350610317818560208601610263565b61032081610271565b840191505092915050565b5f6020820190508181035f83015261034381846102f3565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061038f57607f821691505b6020821081036103a2576103a161034b565b5b5091905056fea264697066735822122016dd5fe548bae4bf8d8cb1654fcf2c19472a4459f6e9dde210abe9e0d72f00e364736f6c634300081d0033" # noqa: E501 -STORAGE_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80631f457cb5146100595780633850c7bd146100775780634a9a010914610095578063924fe315146100b3578063d987e6b5146100d1575b5f5ffd5b6100616100ef565b60405161006e9190610230565b60405180910390f35b61007f6100f5565b60405161008c9190610230565b60405180910390f35b61009d6100fa565b6040516100aa91906102b9565b60405180910390f35b6100bb610186565b6040516100c8919061032b565b60405180910390f35b6100d9610212565b6040516100e69190610230565b60405180910390f35b60015481565b5f5481565b6004805461010790610378565b80601f016020809104026020016040519081016040528092919081815260200182805461013390610378565b801561017e5780601f106101555761010080835404028352916020019161017e565b820191905f5260205f20905b81548152906001019060200180831161016157829003601f168201915b505050505081565b6003805461019390610378565b80601f01602080910402602001604051908101604052809291908181526020018280546101bf90610378565b801561020a5780601f106101e15761010080835404028352916020019161020a565b820191905f5260205f20905b8154815290600101906020018083116101ed57829003601f168201915b505050505081565b60025481565b5f819050919050565b61022a81610218565b82525050565b5f6020820190506102435f830184610221565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61028b82610249565b6102958185610253565b93506102a5818560208601610263565b6102ae81610271565b840191505092915050565b5f6020820190508181035f8301526102d18184610281565b905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f6102fd826102d9565b61030781856102e3565b9350610317818560208601610263565b61032081610271565b840191505092915050565b5f6020820190508181035f83015261034381846102f3565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061038f57607f821691505b6020821081036103a2576103a161034b565b5b5091905056fea264697066735822122016dd5fe548bae4bf8d8cb1654fcf2c19472a4459f6e9dde210abe9e0d72f00e364736f6c634300081d0033" # noqa: E501 +STORAGE_CONTRACT_BYTECODE = "0x60806040525f5f5560018055600280556040518060400160405280600581526020017f74687265650000000000000000000000000000000000000000000000000000008152506003908161005391906102e7565b506040518060400160405280600481526020017f666f757200000000000000000000000000000000000000000000000000000000815250600490816100989190610418565b503480156100a4575f5ffd5b506104e7565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061012557607f821691505b602082108103610138576101376100e1565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261019a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261015f565b6101a4868361015f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6101e86101e36101de846101bc565b6101c5565b6101bc565b9050919050565b5f819050919050565b610201836101ce565b61021561020d826101ef565b84845461016b565b825550505050565b5f5f905090565b61022c61021d565b6102378184846101f8565b505050565b5b8181101561025a5761024f5f82610224565b60018101905061023d565b5050565b601f82111561029f576102708161013e565b61027984610150565b81016020851015610288578190505b61029c61029485610150565b83018261023c565b50505b505050565b5f82821c905092915050565b5f6102bf5f19846008026102a4565b1980831691505092915050565b5f6102d783836102b0565b9150826002028217905092915050565b6102f0826100aa565b67ffffffffffffffff811115610309576103086100b4565b5b610313825461010e565b61031e82828561025e565b5f60209050601f83116001811461034f575f841561033d578287015190505b61034785826102cc565b8655506103ae565b601f19841661035d8661013e565b5f5b828110156103845784890151825560018201915060208501945060208101905061035f565b868310156103a1578489015161039d601f8916826102b0565b8355505b6001600288020188555050505b505050505050565b5f81519050919050565b5f819050815f5260205f209050919050565b601f821115610413576103e4816103c0565b6103ed84610150565b810160208510156103fc578190505b61041061040885610150565b83018261023c565b50505b505050565b610421826103b6565b67ffffffffffffffff81111561043a576104396100b4565b5b610444825461010e565b61044f8282856103d2565b5f60209050601f831160018114610480575f841561046e578287015190505b61047885826102cc565b8655506104df565b601f19841661048e866103c0565b5f5b828110156104b557848901518255600182019150602085019450602081019050610490565b868310156104d257848901516104ce601f8916826102b0565b8355505b6001600288020188555050505b505050505050565b6103de806104f45f395ff3fe608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80631f457cb5146100595780633850c7bd146100775780634a9a010914610095578063924fe315146100b3578063d987e6b5146100d1575b5f5ffd5b6100616100ef565b60405161006e9190610230565b60405180910390f35b61007f6100f5565b60405161008c9190610230565b60405180910390f35b61009d6100fa565b6040516100aa91906102b9565b60405180910390f35b6100bb610186565b6040516100c8919061032b565b60405180910390f35b6100d9610212565b6040516100e69190610230565b60405180910390f35b60015481565b5f5481565b6004805461010790610378565b80601f016020809104026020016040519081016040528092919081815260200182805461013390610378565b801561017e5780601f106101555761010080835404028352916020019161017e565b820191905f5260205f20905b81548152906001019060200180831161016157829003601f168201915b505050505081565b6003805461019390610378565b80601f01602080910402602001604051908101604052809291908181526020018280546101bf90610378565b801561020a5780601f106101e15761010080835404028352916020019161020a565b820191905f5260205f20905b8154815290600101906020018083116101ed57829003601f168201915b505050505081565b60025481565b5f819050919050565b61022a81610218565b82525050565b5f6020820190506102435f830184610221565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61028b82610249565b6102958185610253565b93506102a5818560208601610263565b6102ae81610271565b840191505092915050565b5f6020820190508181035f8301526102d18184610281565b905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f6102fd826102d9565b61030781856102e3565b9350610317818560208601610263565b61032081610271565b840191505092915050565b5f6020820190508181035f83015261034381846102f3565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061038f57607f821691505b6020821081036103a2576103a161034b565b5b5091905056fea26469706673582212200eb6f59ca49bcaca2e053475392d2aca99e18fc25cc0b30e81436c83b1217c8d64736f6c634300081e0033" # noqa: E501 +STORAGE_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610055575f3560e01c80631f457cb5146100595780633850c7bd146100775780634a9a010914610095578063924fe315146100b3578063d987e6b5146100d1575b5f5ffd5b6100616100ef565b60405161006e9190610230565b60405180910390f35b61007f6100f5565b60405161008c9190610230565b60405180910390f35b61009d6100fa565b6040516100aa91906102b9565b60405180910390f35b6100bb610186565b6040516100c8919061032b565b60405180910390f35b6100d9610212565b6040516100e69190610230565b60405180910390f35b60015481565b5f5481565b6004805461010790610378565b80601f016020809104026020016040519081016040528092919081815260200182805461013390610378565b801561017e5780601f106101555761010080835404028352916020019161017e565b820191905f5260205f20905b81548152906001019060200180831161016157829003601f168201915b505050505081565b6003805461019390610378565b80601f01602080910402602001604051908101604052809291908181526020018280546101bf90610378565b801561020a5780601f106101e15761010080835404028352916020019161020a565b820191905f5260205f20905b8154815290600101906020018083116101ed57829003601f168201915b505050505081565b60025481565b5f819050919050565b61022a81610218565b82525050565b5f6020820190506102435f830184610221565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61028b82610249565b6102958185610253565b93506102a5818560208601610263565b6102ae81610271565b840191505092915050565b5f6020820190508181035f8301526102d18184610281565b905092915050565b5f81519050919050565b5f82825260208201905092915050565b5f6102fd826102d9565b61030781856102e3565b9350610317818560208601610263565b61032081610271565b840191505092915050565b5f6020820190508181035f83015261034381846102f3565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061038f57607f821691505b6020821081036103a2576103a161034b565b5b5091905056fea26469706673582212200eb6f59ca49bcaca2e053475392d2aca99e18fc25cc0b30e81436c83b1217c8d64736f6c634300081e0033" # noqa: E501 STORAGE_CONTRACT_ABI = [ { "inputs": [], diff --git a/web3/_utils/contract_sources/contract_data/string_contract.py b/web3/_utils/contract_sources/contract_data/string_contract.py index 275a1d1752..1c69f36446 100644 --- a/web3/_utils/contract_sources/contract_data/string_contract.py +++ b/web3/_utils/contract_sources/contract_data/string_contract.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/StringContract.sol:StringContract -STRING_CONTRACT_BYTECODE = "0x608060405234801561000f575f5ffd5b50604051610c1a380380610c1a83398181016040528101906100319190610193565b805f908161003f91906103ea565b50506104b9565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100a58261005f565b810181811067ffffffffffffffff821117156100c4576100c361006f565b5b80604052505050565b5f6100d6610046565b90506100e2828261009c565b919050565b5f67ffffffffffffffff8211156101015761010061006f565b5b61010a8261005f565b9050602081019050919050565b8281835e5f83830152505050565b5f610137610132846100e7565b6100cd565b9050828152602081018484840111156101535761015261005b565b5b61015e848285610117565b509392505050565b5f82601f83011261017a57610179610057565b5b815161018a848260208601610125565b91505092915050565b5f602082840312156101a8576101a761004f565b5b5f82015167ffffffffffffffff8111156101c5576101c4610053565b5b6101d184828501610166565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061022857607f821691505b60208210810361023b5761023a6101e4565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261029d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610262565b6102a78683610262565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6102eb6102e66102e1846102bf565b6102c8565b6102bf565b9050919050565b5f819050919050565b610304836102d1565b610318610310826102f2565b84845461026e565b825550505050565b5f5f905090565b61032f610320565b61033a8184846102fb565b505050565b5b8181101561035d576103525f82610327565b600181019050610340565b5050565b601f8211156103a25761037381610241565b61037c84610253565b8101602085101561038b578190505b61039f61039785610253565b83018261033f565b50505b505050565b5f82821c905092915050565b5f6103c25f19846008026103a7565b1980831691505092915050565b5f6103da83836103b3565b9150826002028217905092915050565b6103f3826101da565b67ffffffffffffffff81111561040c5761040b61006f565b5b6104168254610211565b610421828285610361565b5f60209050601f831160018114610452575f8415610440578287015190505b61044a85826103cf565b8655506104b1565b601f19841661046086610241565b5f5b8281101561048757848901518255600182019150602085019450602081019050610462565b868310156104a457848901516104a0601f8916826103b3565b8355505b6001600288020188555050505b505050505050565b610754806104c65f395ff3fe608060405260043610610037575f3560e01c806320965255146100995780633fa4f245146100b757806393a09352146100e157610038565b5b348015610043575f5ffd5b505f36606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050509050915050805190602001f35b6100a1610109565b6040516100ae91906102a5565b60405180910390f35b3480156100c2575f5ffd5b506100cb610198565b6040516100d891906102a5565b60405180910390f35b3480156100ec575f5ffd5b5061010760048036038101906101029190610402565b610223565b005b60605f805461011790610476565b80601f016020809104026020016040519081016040528092919081815260200182805461014390610476565b801561018e5780601f106101655761010080835404028352916020019161018e565b820191905f5260205f20905b81548152906001019060200180831161017157829003601f168201915b5050505050905090565b5f80546101a490610476565b80601f01602080910402602001604051908101604052809291908181526020018280546101d090610476565b801561021b5780601f106101f25761010080835404028352916020019161021b565b820191905f5260205f20905b8154815290600101906020018083116101fe57829003601f168201915b505050505081565b805f9081610231919061064f565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61027782610235565b610281818561023f565b935061029181856020860161024f565b61029a8161025d565b840191505092915050565b5f6020820190508181035f8301526102bd818461026d565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103148261025d565b810181811067ffffffffffffffff82111715610333576103326102de565b5b80604052505050565b5f6103456102c5565b9050610351828261030b565b919050565b5f67ffffffffffffffff8211156103705761036f6102de565b5b6103798261025d565b9050602081019050919050565b828183375f83830152505050565b5f6103a66103a184610356565b61033c565b9050828152602081018484840111156103c2576103c16102da565b5b6103cd848285610386565b509392505050565b5f82601f8301126103e9576103e86102d6565b5b81356103f9848260208601610394565b91505092915050565b5f60208284031215610417576104166102ce565b5b5f82013567ffffffffffffffff811115610434576104336102d2565b5b610440848285016103d5565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061048d57607f821691505b6020821081036104a05761049f610449565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826104c7565b61050c86836104c7565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61055061054b61054684610524565b61052d565b610524565b9050919050565b5f819050919050565b61056983610536565b61057d61057582610557565b8484546104d3565b825550505050565b5f5f905090565b610594610585565b61059f818484610560565b505050565b5b818110156105c2576105b75f8261058c565b6001810190506105a5565b5050565b601f821115610607576105d8816104a6565b6105e1846104b8565b810160208510156105f0578190505b6106046105fc856104b8565b8301826105a4565b50505b505050565b5f82821c905092915050565b5f6106275f198460080261060c565b1980831691505092915050565b5f61063f8383610618565b9150826002028217905092915050565b61065882610235565b67ffffffffffffffff811115610671576106706102de565b5b61067b8254610476565b6106868282856105c6565b5f60209050601f8311600181146106b7575f84156106a5578287015190505b6106af8582610634565b865550610716565b601f1984166106c5866104a6565b5f5b828110156106ec578489015182556001820191506020850194506020810190506106c7565b868310156107095784890151610705601f891682610618565b8355505b6001600288020188555050505b50505050505056fea264697066735822122057cfad9927863e77e0346ce71b093edd9bde029ffc5a2d9589f5ec615f8d6a1764736f6c634300081d0033" # noqa: E501 -STRING_CONTRACT_RUNTIME = "0x608060405260043610610037575f3560e01c806320965255146100995780633fa4f245146100b757806393a09352146100e157610038565b5b348015610043575f5ffd5b505f36606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050509050915050805190602001f35b6100a1610109565b6040516100ae91906102a5565b60405180910390f35b3480156100c2575f5ffd5b506100cb610198565b6040516100d891906102a5565b60405180910390f35b3480156100ec575f5ffd5b5061010760048036038101906101029190610402565b610223565b005b60605f805461011790610476565b80601f016020809104026020016040519081016040528092919081815260200182805461014390610476565b801561018e5780601f106101655761010080835404028352916020019161018e565b820191905f5260205f20905b81548152906001019060200180831161017157829003601f168201915b5050505050905090565b5f80546101a490610476565b80601f01602080910402602001604051908101604052809291908181526020018280546101d090610476565b801561021b5780601f106101f25761010080835404028352916020019161021b565b820191905f5260205f20905b8154815290600101906020018083116101fe57829003601f168201915b505050505081565b805f9081610231919061064f565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61027782610235565b610281818561023f565b935061029181856020860161024f565b61029a8161025d565b840191505092915050565b5f6020820190508181035f8301526102bd818461026d565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103148261025d565b810181811067ffffffffffffffff82111715610333576103326102de565b5b80604052505050565b5f6103456102c5565b9050610351828261030b565b919050565b5f67ffffffffffffffff8211156103705761036f6102de565b5b6103798261025d565b9050602081019050919050565b828183375f83830152505050565b5f6103a66103a184610356565b61033c565b9050828152602081018484840111156103c2576103c16102da565b5b6103cd848285610386565b509392505050565b5f82601f8301126103e9576103e86102d6565b5b81356103f9848260208601610394565b91505092915050565b5f60208284031215610417576104166102ce565b5b5f82013567ffffffffffffffff811115610434576104336102d2565b5b610440848285016103d5565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061048d57607f821691505b6020821081036104a05761049f610449565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826104c7565b61050c86836104c7565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61055061054b61054684610524565b61052d565b610524565b9050919050565b5f819050919050565b61056983610536565b61057d61057582610557565b8484546104d3565b825550505050565b5f5f905090565b610594610585565b61059f818484610560565b505050565b5b818110156105c2576105b75f8261058c565b6001810190506105a5565b5050565b601f821115610607576105d8816104a6565b6105e1846104b8565b810160208510156105f0578190505b6106046105fc856104b8565b8301826105a4565b50505b505050565b5f82821c905092915050565b5f6106275f198460080261060c565b1980831691505092915050565b5f61063f8383610618565b9150826002028217905092915050565b61065882610235565b67ffffffffffffffff811115610671576106706102de565b5b61067b8254610476565b6106868282856105c6565b5f60209050601f8311600181146106b7575f84156106a5578287015190505b6106af8582610634565b865550610716565b601f1984166106c5866104a6565b5f5b828110156106ec578489015182556001820191506020850194506020810190506106c7565b868310156107095784890151610705601f891682610618565b8355505b6001600288020188555050505b50505050505056fea264697066735822122057cfad9927863e77e0346ce71b093edd9bde029ffc5a2d9589f5ec615f8d6a1764736f6c634300081d0033" # noqa: E501 +STRING_CONTRACT_BYTECODE = "0x608060405234801561000f575f5ffd5b50604051610c1a380380610c1a83398181016040528101906100319190610193565b805f908161003f91906103ea565b50506104b9565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100a58261005f565b810181811067ffffffffffffffff821117156100c4576100c361006f565b5b80604052505050565b5f6100d6610046565b90506100e2828261009c565b919050565b5f67ffffffffffffffff8211156101015761010061006f565b5b61010a8261005f565b9050602081019050919050565b8281835e5f83830152505050565b5f610137610132846100e7565b6100cd565b9050828152602081018484840111156101535761015261005b565b5b61015e848285610117565b509392505050565b5f82601f83011261017a57610179610057565b5b815161018a848260208601610125565b91505092915050565b5f602082840312156101a8576101a761004f565b5b5f82015167ffffffffffffffff8111156101c5576101c4610053565b5b6101d184828501610166565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061022857607f821691505b60208210810361023b5761023a6101e4565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261029d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610262565b6102a78683610262565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6102eb6102e66102e1846102bf565b6102c8565b6102bf565b9050919050565b5f819050919050565b610304836102d1565b610318610310826102f2565b84845461026e565b825550505050565b5f5f905090565b61032f610320565b61033a8184846102fb565b505050565b5b8181101561035d576103525f82610327565b600181019050610340565b5050565b601f8211156103a25761037381610241565b61037c84610253565b8101602085101561038b578190505b61039f61039785610253565b83018261033f565b50505b505050565b5f82821c905092915050565b5f6103c25f19846008026103a7565b1980831691505092915050565b5f6103da83836103b3565b9150826002028217905092915050565b6103f3826101da565b67ffffffffffffffff81111561040c5761040b61006f565b5b6104168254610211565b610421828285610361565b5f60209050601f831160018114610452575f8415610440578287015190505b61044a85826103cf565b8655506104b1565b601f19841661046086610241565b5f5b8281101561048757848901518255600182019150602085019450602081019050610462565b868310156104a457848901516104a0601f8916826103b3565b8355505b6001600288020188555050505b505050505050565b610754806104c65f395ff3fe608060405260043610610037575f3560e01c806320965255146100995780633fa4f245146100b757806393a09352146100e157610038565b5b348015610043575f5ffd5b505f36606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050509050915050805190602001f35b6100a1610109565b6040516100ae91906102a5565b60405180910390f35b3480156100c2575f5ffd5b506100cb610198565b6040516100d891906102a5565b60405180910390f35b3480156100ec575f5ffd5b5061010760048036038101906101029190610402565b610223565b005b60605f805461011790610476565b80601f016020809104026020016040519081016040528092919081815260200182805461014390610476565b801561018e5780601f106101655761010080835404028352916020019161018e565b820191905f5260205f20905b81548152906001019060200180831161017157829003601f168201915b5050505050905090565b5f80546101a490610476565b80601f01602080910402602001604051908101604052809291908181526020018280546101d090610476565b801561021b5780601f106101f25761010080835404028352916020019161021b565b820191905f5260205f20905b8154815290600101906020018083116101fe57829003601f168201915b505050505081565b805f9081610231919061064f565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61027782610235565b610281818561023f565b935061029181856020860161024f565b61029a8161025d565b840191505092915050565b5f6020820190508181035f8301526102bd818461026d565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103148261025d565b810181811067ffffffffffffffff82111715610333576103326102de565b5b80604052505050565b5f6103456102c5565b9050610351828261030b565b919050565b5f67ffffffffffffffff8211156103705761036f6102de565b5b6103798261025d565b9050602081019050919050565b828183375f83830152505050565b5f6103a66103a184610356565b61033c565b9050828152602081018484840111156103c2576103c16102da565b5b6103cd848285610386565b509392505050565b5f82601f8301126103e9576103e86102d6565b5b81356103f9848260208601610394565b91505092915050565b5f60208284031215610417576104166102ce565b5b5f82013567ffffffffffffffff811115610434576104336102d2565b5b610440848285016103d5565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061048d57607f821691505b6020821081036104a05761049f610449565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826104c7565b61050c86836104c7565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61055061054b61054684610524565b61052d565b610524565b9050919050565b5f819050919050565b61056983610536565b61057d61057582610557565b8484546104d3565b825550505050565b5f5f905090565b610594610585565b61059f818484610560565b505050565b5b818110156105c2576105b75f8261058c565b6001810190506105a5565b5050565b601f821115610607576105d8816104a6565b6105e1846104b8565b810160208510156105f0578190505b6106046105fc856104b8565b8301826105a4565b50505b505050565b5f82821c905092915050565b5f6106275f198460080261060c565b1980831691505092915050565b5f61063f8383610618565b9150826002028217905092915050565b61065882610235565b67ffffffffffffffff811115610671576106706102de565b5b61067b8254610476565b6106868282856105c6565b5f60209050601f8311600181146106b7575f84156106a5578287015190505b6106af8582610634565b865550610716565b601f1984166106c5866104a6565b5f5b828110156106ec578489015182556001820191506020850194506020810190506106c7565b868310156107095784890151610705601f891682610618565b8355505b6001600288020188555050505b50505050505056fea264697066735822122062c13ebbeffccc0fada8dca300714023d382cee7cbd94c78a6bcf2350afd835d64736f6c634300081e0033" # noqa: E501 +STRING_CONTRACT_RUNTIME = "0x608060405260043610610037575f3560e01c806320965255146100995780633fa4f245146100b757806393a09352146100e157610038565b5b348015610043575f5ffd5b505f36606082828080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050509050915050805190602001f35b6100a1610109565b6040516100ae91906102a5565b60405180910390f35b3480156100c2575f5ffd5b506100cb610198565b6040516100d891906102a5565b60405180910390f35b3480156100ec575f5ffd5b5061010760048036038101906101029190610402565b610223565b005b60605f805461011790610476565b80601f016020809104026020016040519081016040528092919081815260200182805461014390610476565b801561018e5780601f106101655761010080835404028352916020019161018e565b820191905f5260205f20905b81548152906001019060200180831161017157829003601f168201915b5050505050905090565b5f80546101a490610476565b80601f01602080910402602001604051908101604052809291908181526020018280546101d090610476565b801561021b5780601f106101f25761010080835404028352916020019161021b565b820191905f5260205f20905b8154815290600101906020018083116101fe57829003601f168201915b505050505081565b805f9081610231919061064f565b5050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61027782610235565b610281818561023f565b935061029181856020860161024f565b61029a8161025d565b840191505092915050565b5f6020820190508181035f8301526102bd818461026d565b905092915050565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f5ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103148261025d565b810181811067ffffffffffffffff82111715610333576103326102de565b5b80604052505050565b5f6103456102c5565b9050610351828261030b565b919050565b5f67ffffffffffffffff8211156103705761036f6102de565b5b6103798261025d565b9050602081019050919050565b828183375f83830152505050565b5f6103a66103a184610356565b61033c565b9050828152602081018484840111156103c2576103c16102da565b5b6103cd848285610386565b509392505050565b5f82601f8301126103e9576103e86102d6565b5b81356103f9848260208601610394565b91505092915050565b5f60208284031215610417576104166102ce565b5b5f82013567ffffffffffffffff811115610434576104336102d2565b5b610440848285016103d5565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061048d57607f821691505b6020821081036104a05761049f610449565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826104c7565b61050c86836104c7565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61055061054b61054684610524565b61052d565b610524565b9050919050565b5f819050919050565b61056983610536565b61057d61057582610557565b8484546104d3565b825550505050565b5f5f905090565b610594610585565b61059f818484610560565b505050565b5b818110156105c2576105b75f8261058c565b6001810190506105a5565b5050565b601f821115610607576105d8816104a6565b6105e1846104b8565b810160208510156105f0578190505b6106046105fc856104b8565b8301826105a4565b50505b505050565b5f82821c905092915050565b5f6106275f198460080261060c565b1980831691505092915050565b5f61063f8383610618565b9150826002028217905092915050565b61065882610235565b67ffffffffffffffff811115610671576106706102de565b5b61067b8254610476565b6106868282856105c6565b5f60209050601f8311600181146106b7575f84156106a5578287015190505b6106af8582610634565b865550610716565b601f1984166106c5866104a6565b5f5b828110156106ec578489015182556001820191506020850194506020810190506106c7565b868310156107095784890151610705601f891682610618565b8355505b6001600288020188555050505b50505050505056fea264697066735822122062c13ebbeffccc0fada8dca300714023d382cee7cbd94c78a6bcf2350afd835d64736f6c634300081e0033" # noqa: E501 STRING_CONTRACT_ABI = [ { "inputs": [{"internalType": "string", "name": "_value", "type": "string"}], diff --git a/web3/_utils/contract_sources/contract_data/tuple_contracts.py b/web3/_utils/contract_sources/contract_data/tuple_contracts.py index c3e46bd4eb..1a1c682bdc 100644 --- a/web3/_utils/contract_sources/contract_data/tuple_contracts.py +++ b/web3/_utils/contract_sources/contract_data/tuple_contracts.py @@ -1,11 +1,11 @@ """ Generated by `compile_contracts.py` script. -Compiled with Solidity v0.8.29. +Compiled with Solidity v0.8.30. """ # source: web3/_utils/contract_sources/TupleContracts.sol:TupleContract -TUPLE_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b50610a688061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80638e1ae3c71461002d575b5f5ffd5b6100476004803603810190610042919061064d565b61005d565b6040516100549190610a12565b60405180910390f35b61006561006d565b819050919050565b60405180606001604052805f815260200160608152602001606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100e8826100a2565b810181811067ffffffffffffffff82111715610107576101066100b2565b5b80604052505050565b5f61011961008d565b905061012582826100df565b919050565b5f5ffd5b5f819050919050565b6101408161012e565b811461014a575f5ffd5b50565b5f8135905061015b81610137565b92915050565b5f5ffd5b5f67ffffffffffffffff82111561017f5761017e6100b2565b5b602082029050602081019050919050565b5f5ffd5b5f6101a66101a184610165565b610110565b905080838252602082019050602084028301858111156101c9576101c8610190565b5b835b818110156101f257806101de888261014d565b8452602084019350506020810190506101cb565b5050509392505050565b5f82601f8301126102105761020f610161565b5b8135610220848260208601610194565b91505092915050565b5f67ffffffffffffffff821115610243576102426100b2565b5b602082029050602081019050919050565b5f819050919050565b61026681610254565b8114610270575f5ffd5b50565b5f813590506102818161025d565b92915050565b5f67ffffffffffffffff8211156102a1576102a06100b2565b5b602082029050919050565b5f8115159050919050565b6102c0816102ac565b81146102ca575f5ffd5b50565b5f813590506102db816102b7565b92915050565b5f6102f36102ee84610287565b610110565b9050806020840283018581111561030d5761030c610190565b5b835b81811015610336578061032288826102cd565b84526020840193505060208101905061030f565b5050509392505050565b5f82601f83011261035457610353610161565b5b60026103618482856102e1565b91505092915050565b5f67ffffffffffffffff821115610384576103836100b2565b5b602082029050602081019050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6103be82610395565b9050919050565b6103ce816103b4565b81146103d8575f5ffd5b50565b5f813590506103e9816103c5565b92915050565b5f6104016103fc8461036a565b610110565b9050808382526020820190506020840283018581111561042457610423610190565b5b835b8181101561044d578061043988826103db565b845260208401935050602081019050610426565b5050509392505050565b5f82601f83011261046b5761046a610161565b5b813561047b8482602086016103ef565b91505092915050565b5f608082840312156104995761049861009e565b5b6104a36060610110565b90505f6104b284828501610273565b5f8301525060206104c584828501610340565b602083015250606082013567ffffffffffffffff8111156104e9576104e861012a565b5b6104f584828501610457565b60408301525092915050565b5f61051361050e84610229565b610110565b9050808382526020820190506020840283018581111561053657610535610190565b5b835b8181101561057d57803567ffffffffffffffff81111561055b5761055a610161565b5b8086016105688982610484565b85526020850194505050602081019050610538565b5050509392505050565b5f82601f83011261059b5761059a610161565b5b81356105ab848260208601610501565b91505092915050565b5f606082840312156105c9576105c861009e565b5b6105d36060610110565b90505f6105e28482850161014d565b5f83015250602082013567ffffffffffffffff8111156106055761060461012a565b5b610611848285016101fc565b602083015250604082013567ffffffffffffffff8111156106355761063461012a565b5b61064184828501610587565b60408301525092915050565b5f6020828403121561066257610661610096565b5b5f82013567ffffffffffffffff81111561067f5761067e61009a565b5b61068b848285016105b4565b91505092915050565b61069d8161012e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6106d78383610694565b60208301905092915050565b5f602082019050919050565b5f6106f9826106a3565b61070381856106ad565b935061070e836106bd565b805f5b8381101561073e57815161072588826106cc565b9750610730836106e3565b925050600181019050610711565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61077d81610254565b82525050565b5f60029050919050565b5f81905092915050565b5f819050919050565b6107a9816102ac565b82525050565b5f6107ba83836107a0565b60208301905092915050565b5f602082019050919050565b6107db81610783565b6107e5818461078d565b92506107f082610797565b805f5b8381101561082057815161080787826107af565b9650610812836107c6565b9250506001810190506107f3565b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61085a816103b4565b82525050565b5f61086b8383610851565b60208301905092915050565b5f602082019050919050565b5f61088d82610828565b6108978185610832565b93506108a283610842565b805f5b838110156108d25781516108b98882610860565b97506108c483610877565b9250506001810190506108a5565b5085935050505092915050565b5f608083015f8301516108f45f860182610774565b50602083015161090760208601826107d2565b506040830151848203606086015261091f8282610883565b9150508091505092915050565b5f61093783836108df565b905092915050565b5f602082019050919050565b5f6109558261074b565b61095f8185610755565b93508360208202850161097185610765565b805f5b858110156109ac578484038952815161098d858261092c565b94506109988361093f565b925060208a01995050600181019050610974565b50829750879550505050505092915050565b5f606083015f8301516109d35f860182610694565b50602083015184820360208601526109eb82826106ef565b91505060408301518482036040860152610a05828261094b565b9150508091505092915050565b5f6020820190508181035f830152610a2a81846109be565b90509291505056fea264697066735822122093989c185ced19ac413031c41f5829f7372fbdf036232e036a7610d4ecd2ed2264736f6c634300081d0033" # noqa: E501 -TUPLE_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80638e1ae3c71461002d575b5f5ffd5b6100476004803603810190610042919061064d565b61005d565b6040516100549190610a12565b60405180910390f35b61006561006d565b819050919050565b60405180606001604052805f815260200160608152602001606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100e8826100a2565b810181811067ffffffffffffffff82111715610107576101066100b2565b5b80604052505050565b5f61011961008d565b905061012582826100df565b919050565b5f5ffd5b5f819050919050565b6101408161012e565b811461014a575f5ffd5b50565b5f8135905061015b81610137565b92915050565b5f5ffd5b5f67ffffffffffffffff82111561017f5761017e6100b2565b5b602082029050602081019050919050565b5f5ffd5b5f6101a66101a184610165565b610110565b905080838252602082019050602084028301858111156101c9576101c8610190565b5b835b818110156101f257806101de888261014d565b8452602084019350506020810190506101cb565b5050509392505050565b5f82601f8301126102105761020f610161565b5b8135610220848260208601610194565b91505092915050565b5f67ffffffffffffffff821115610243576102426100b2565b5b602082029050602081019050919050565b5f819050919050565b61026681610254565b8114610270575f5ffd5b50565b5f813590506102818161025d565b92915050565b5f67ffffffffffffffff8211156102a1576102a06100b2565b5b602082029050919050565b5f8115159050919050565b6102c0816102ac565b81146102ca575f5ffd5b50565b5f813590506102db816102b7565b92915050565b5f6102f36102ee84610287565b610110565b9050806020840283018581111561030d5761030c610190565b5b835b81811015610336578061032288826102cd565b84526020840193505060208101905061030f565b5050509392505050565b5f82601f83011261035457610353610161565b5b60026103618482856102e1565b91505092915050565b5f67ffffffffffffffff821115610384576103836100b2565b5b602082029050602081019050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6103be82610395565b9050919050565b6103ce816103b4565b81146103d8575f5ffd5b50565b5f813590506103e9816103c5565b92915050565b5f6104016103fc8461036a565b610110565b9050808382526020820190506020840283018581111561042457610423610190565b5b835b8181101561044d578061043988826103db565b845260208401935050602081019050610426565b5050509392505050565b5f82601f83011261046b5761046a610161565b5b813561047b8482602086016103ef565b91505092915050565b5f608082840312156104995761049861009e565b5b6104a36060610110565b90505f6104b284828501610273565b5f8301525060206104c584828501610340565b602083015250606082013567ffffffffffffffff8111156104e9576104e861012a565b5b6104f584828501610457565b60408301525092915050565b5f61051361050e84610229565b610110565b9050808382526020820190506020840283018581111561053657610535610190565b5b835b8181101561057d57803567ffffffffffffffff81111561055b5761055a610161565b5b8086016105688982610484565b85526020850194505050602081019050610538565b5050509392505050565b5f82601f83011261059b5761059a610161565b5b81356105ab848260208601610501565b91505092915050565b5f606082840312156105c9576105c861009e565b5b6105d36060610110565b90505f6105e28482850161014d565b5f83015250602082013567ffffffffffffffff8111156106055761060461012a565b5b610611848285016101fc565b602083015250604082013567ffffffffffffffff8111156106355761063461012a565b5b61064184828501610587565b60408301525092915050565b5f6020828403121561066257610661610096565b5b5f82013567ffffffffffffffff81111561067f5761067e61009a565b5b61068b848285016105b4565b91505092915050565b61069d8161012e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6106d78383610694565b60208301905092915050565b5f602082019050919050565b5f6106f9826106a3565b61070381856106ad565b935061070e836106bd565b805f5b8381101561073e57815161072588826106cc565b9750610730836106e3565b925050600181019050610711565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61077d81610254565b82525050565b5f60029050919050565b5f81905092915050565b5f819050919050565b6107a9816102ac565b82525050565b5f6107ba83836107a0565b60208301905092915050565b5f602082019050919050565b6107db81610783565b6107e5818461078d565b92506107f082610797565b805f5b8381101561082057815161080787826107af565b9650610812836107c6565b9250506001810190506107f3565b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61085a816103b4565b82525050565b5f61086b8383610851565b60208301905092915050565b5f602082019050919050565b5f61088d82610828565b6108978185610832565b93506108a283610842565b805f5b838110156108d25781516108b98882610860565b97506108c483610877565b9250506001810190506108a5565b5085935050505092915050565b5f608083015f8301516108f45f860182610774565b50602083015161090760208601826107d2565b506040830151848203606086015261091f8282610883565b9150508091505092915050565b5f61093783836108df565b905092915050565b5f602082019050919050565b5f6109558261074b565b61095f8185610755565b93508360208202850161097185610765565b805f5b858110156109ac578484038952815161098d858261092c565b94506109988361093f565b925060208a01995050600181019050610974565b50829750879550505050505092915050565b5f606083015f8301516109d35f860182610694565b50602083015184820360208601526109eb82826106ef565b91505060408301518482036040860152610a05828261094b565b9150508091505092915050565b5f6020820190508181035f830152610a2a81846109be565b90509291505056fea264697066735822122093989c185ced19ac413031c41f5829f7372fbdf036232e036a7610d4ecd2ed2264736f6c634300081d0033" # noqa: E501 +TUPLE_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b50610a688061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80638e1ae3c71461002d575b5f5ffd5b6100476004803603810190610042919061064d565b61005d565b6040516100549190610a12565b60405180910390f35b61006561006d565b819050919050565b60405180606001604052805f815260200160608152602001606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100e8826100a2565b810181811067ffffffffffffffff82111715610107576101066100b2565b5b80604052505050565b5f61011961008d565b905061012582826100df565b919050565b5f5ffd5b5f819050919050565b6101408161012e565b811461014a575f5ffd5b50565b5f8135905061015b81610137565b92915050565b5f5ffd5b5f67ffffffffffffffff82111561017f5761017e6100b2565b5b602082029050602081019050919050565b5f5ffd5b5f6101a66101a184610165565b610110565b905080838252602082019050602084028301858111156101c9576101c8610190565b5b835b818110156101f257806101de888261014d565b8452602084019350506020810190506101cb565b5050509392505050565b5f82601f8301126102105761020f610161565b5b8135610220848260208601610194565b91505092915050565b5f67ffffffffffffffff821115610243576102426100b2565b5b602082029050602081019050919050565b5f819050919050565b61026681610254565b8114610270575f5ffd5b50565b5f813590506102818161025d565b92915050565b5f67ffffffffffffffff8211156102a1576102a06100b2565b5b602082029050919050565b5f8115159050919050565b6102c0816102ac565b81146102ca575f5ffd5b50565b5f813590506102db816102b7565b92915050565b5f6102f36102ee84610287565b610110565b9050806020840283018581111561030d5761030c610190565b5b835b81811015610336578061032288826102cd565b84526020840193505060208101905061030f565b5050509392505050565b5f82601f83011261035457610353610161565b5b60026103618482856102e1565b91505092915050565b5f67ffffffffffffffff821115610384576103836100b2565b5b602082029050602081019050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6103be82610395565b9050919050565b6103ce816103b4565b81146103d8575f5ffd5b50565b5f813590506103e9816103c5565b92915050565b5f6104016103fc8461036a565b610110565b9050808382526020820190506020840283018581111561042457610423610190565b5b835b8181101561044d578061043988826103db565b845260208401935050602081019050610426565b5050509392505050565b5f82601f83011261046b5761046a610161565b5b813561047b8482602086016103ef565b91505092915050565b5f608082840312156104995761049861009e565b5b6104a36060610110565b90505f6104b284828501610273565b5f8301525060206104c584828501610340565b602083015250606082013567ffffffffffffffff8111156104e9576104e861012a565b5b6104f584828501610457565b60408301525092915050565b5f61051361050e84610229565b610110565b9050808382526020820190506020840283018581111561053657610535610190565b5b835b8181101561057d57803567ffffffffffffffff81111561055b5761055a610161565b5b8086016105688982610484565b85526020850194505050602081019050610538565b5050509392505050565b5f82601f83011261059b5761059a610161565b5b81356105ab848260208601610501565b91505092915050565b5f606082840312156105c9576105c861009e565b5b6105d36060610110565b90505f6105e28482850161014d565b5f83015250602082013567ffffffffffffffff8111156106055761060461012a565b5b610611848285016101fc565b602083015250604082013567ffffffffffffffff8111156106355761063461012a565b5b61064184828501610587565b60408301525092915050565b5f6020828403121561066257610661610096565b5b5f82013567ffffffffffffffff81111561067f5761067e61009a565b5b61068b848285016105b4565b91505092915050565b61069d8161012e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6106d78383610694565b60208301905092915050565b5f602082019050919050565b5f6106f9826106a3565b61070381856106ad565b935061070e836106bd565b805f5b8381101561073e57815161072588826106cc565b9750610730836106e3565b925050600181019050610711565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61077d81610254565b82525050565b5f60029050919050565b5f81905092915050565b5f819050919050565b6107a9816102ac565b82525050565b5f6107ba83836107a0565b60208301905092915050565b5f602082019050919050565b6107db81610783565b6107e5818461078d565b92506107f082610797565b805f5b8381101561082057815161080787826107af565b9650610812836107c6565b9250506001810190506107f3565b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61085a816103b4565b82525050565b5f61086b8383610851565b60208301905092915050565b5f602082019050919050565b5f61088d82610828565b6108978185610832565b93506108a283610842565b805f5b838110156108d25781516108b98882610860565b97506108c483610877565b9250506001810190506108a5565b5085935050505092915050565b5f608083015f8301516108f45f860182610774565b50602083015161090760208601826107d2565b506040830151848203606086015261091f8282610883565b9150508091505092915050565b5f61093783836108df565b905092915050565b5f602082019050919050565b5f6109558261074b565b61095f8185610755565b93508360208202850161097185610765565b805f5b858110156109ac578484038952815161098d858261092c565b94506109988361093f565b925060208a01995050600181019050610974565b50829750879550505050505092915050565b5f606083015f8301516109d35f860182610694565b50602083015184820360208601526109eb82826106ef565b91505060408301518482036040860152610a05828261094b565b9150508091505092915050565b5f6020820190508181035f830152610a2a81846109be565b90509291505056fea26469706673582212207c5620c2257d173ed894791417ffad7e98aad1aab11d2ec22b5148e5d77de0c464736f6c634300081e0033" # noqa: E501 +TUPLE_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80638e1ae3c71461002d575b5f5ffd5b6100476004803603810190610042919061064d565b61005d565b6040516100549190610a12565b60405180910390f35b61006561006d565b819050919050565b60405180606001604052805f815260200160608152602001606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100e8826100a2565b810181811067ffffffffffffffff82111715610107576101066100b2565b5b80604052505050565b5f61011961008d565b905061012582826100df565b919050565b5f5ffd5b5f819050919050565b6101408161012e565b811461014a575f5ffd5b50565b5f8135905061015b81610137565b92915050565b5f5ffd5b5f67ffffffffffffffff82111561017f5761017e6100b2565b5b602082029050602081019050919050565b5f5ffd5b5f6101a66101a184610165565b610110565b905080838252602082019050602084028301858111156101c9576101c8610190565b5b835b818110156101f257806101de888261014d565b8452602084019350506020810190506101cb565b5050509392505050565b5f82601f8301126102105761020f610161565b5b8135610220848260208601610194565b91505092915050565b5f67ffffffffffffffff821115610243576102426100b2565b5b602082029050602081019050919050565b5f819050919050565b61026681610254565b8114610270575f5ffd5b50565b5f813590506102818161025d565b92915050565b5f67ffffffffffffffff8211156102a1576102a06100b2565b5b602082029050919050565b5f8115159050919050565b6102c0816102ac565b81146102ca575f5ffd5b50565b5f813590506102db816102b7565b92915050565b5f6102f36102ee84610287565b610110565b9050806020840283018581111561030d5761030c610190565b5b835b81811015610336578061032288826102cd565b84526020840193505060208101905061030f565b5050509392505050565b5f82601f83011261035457610353610161565b5b60026103618482856102e1565b91505092915050565b5f67ffffffffffffffff821115610384576103836100b2565b5b602082029050602081019050919050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6103be82610395565b9050919050565b6103ce816103b4565b81146103d8575f5ffd5b50565b5f813590506103e9816103c5565b92915050565b5f6104016103fc8461036a565b610110565b9050808382526020820190506020840283018581111561042457610423610190565b5b835b8181101561044d578061043988826103db565b845260208401935050602081019050610426565b5050509392505050565b5f82601f83011261046b5761046a610161565b5b813561047b8482602086016103ef565b91505092915050565b5f608082840312156104995761049861009e565b5b6104a36060610110565b90505f6104b284828501610273565b5f8301525060206104c584828501610340565b602083015250606082013567ffffffffffffffff8111156104e9576104e861012a565b5b6104f584828501610457565b60408301525092915050565b5f61051361050e84610229565b610110565b9050808382526020820190506020840283018581111561053657610535610190565b5b835b8181101561057d57803567ffffffffffffffff81111561055b5761055a610161565b5b8086016105688982610484565b85526020850194505050602081019050610538565b5050509392505050565b5f82601f83011261059b5761059a610161565b5b81356105ab848260208601610501565b91505092915050565b5f606082840312156105c9576105c861009e565b5b6105d36060610110565b90505f6105e28482850161014d565b5f83015250602082013567ffffffffffffffff8111156106055761060461012a565b5b610611848285016101fc565b602083015250604082013567ffffffffffffffff8111156106355761063461012a565b5b61064184828501610587565b60408301525092915050565b5f6020828403121561066257610661610096565b5b5f82013567ffffffffffffffff81111561067f5761067e61009a565b5b61068b848285016105b4565b91505092915050565b61069d8161012e565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6106d78383610694565b60208301905092915050565b5f602082019050919050565b5f6106f9826106a3565b61070381856106ad565b935061070e836106bd565b805f5b8381101561073e57815161072588826106cc565b9750610730836106e3565b925050600181019050610711565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61077d81610254565b82525050565b5f60029050919050565b5f81905092915050565b5f819050919050565b6107a9816102ac565b82525050565b5f6107ba83836107a0565b60208301905092915050565b5f602082019050919050565b6107db81610783565b6107e5818461078d565b92506107f082610797565b805f5b8381101561082057815161080787826107af565b9650610812836107c6565b9250506001810190506107f3565b505050505050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61085a816103b4565b82525050565b5f61086b8383610851565b60208301905092915050565b5f602082019050919050565b5f61088d82610828565b6108978185610832565b93506108a283610842565b805f5b838110156108d25781516108b98882610860565b97506108c483610877565b9250506001810190506108a5565b5085935050505092915050565b5f608083015f8301516108f45f860182610774565b50602083015161090760208601826107d2565b506040830151848203606086015261091f8282610883565b9150508091505092915050565b5f61093783836108df565b905092915050565b5f602082019050919050565b5f6109558261074b565b61095f8185610755565b93508360208202850161097185610765565b805f5b858110156109ac578484038952815161098d858261092c565b94506109988361093f565b925060208a01995050600181019050610974565b50829750879550505050505092915050565b5f606083015f8301516109d35f860182610694565b50602083015184820360208601526109eb82826106ef565b91505060408301518482036040860152610a05828261094b565b9150508091505092915050565b5f6020820190508181035f830152610a2a81846109be565b90509291505056fea26469706673582212207c5620c2257d173ed894791417ffad7e98aad1aab11d2ec22b5148e5d77de0c464736f6c634300081e0033" # noqa: E501 TUPLE_CONTRACT_ABI = [ { "inputs": [ @@ -71,8 +71,8 @@ # source: web3/_utils/contract_sources/TupleContracts.sol:NestedTupleContract -NESTED_TUPLE_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061067b8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80632655aef11461002d575b5f5ffd5b610047600480360381019061004291906103f1565b61005d565b6040516100549190610625565b60405180910390f35b61006561006d565b819050919050565b6040518060200160405280606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100db82610095565b810181811067ffffffffffffffff821117156100fa576100f96100a5565b5b80604052505050565b5f61010c610080565b905061011882826100d2565b919050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff82111561013f5761013e6100a5565b5b602082029050602081019050919050565b5f5ffd5b5f67ffffffffffffffff82111561016e5761016d6100a5565b5b602082029050602081019050919050565b5f819050919050565b6101918161017f565b811461019b575f5ffd5b50565b5f813590506101ac81610188565b92915050565b5f604082840312156101c7576101c6610091565b5b6101d16040610103565b90505f6101e08482850161019e565b5f8301525060206101f38482850161019e565b60208301525092915050565b5f61021161020c84610154565b610103565b9050808382526020820190506040840283018581111561023457610233610150565b5b835b8181101561025d578061024988826101b2565b845260208401935050604081019050610236565b5050509392505050565b5f82601f83011261027b5761027a610121565b5b813561028b8482602086016101ff565b91505092915050565b5f602082840312156102a9576102a8610091565b5b6102b36020610103565b90505f82013567ffffffffffffffff8111156102d2576102d161011d565b5b6102de84828501610267565b5f8301525092915050565b5f6102fb6102f684610125565b610103565b9050808382526020820190506020840283018581111561031e5761031d610150565b5b835b8181101561036557803567ffffffffffffffff81111561034357610342610121565b5b8086016103508982610294565b85526020850194505050602081019050610320565b5050509392505050565b5f82601f83011261038357610382610121565b5b81356103938482602086016102e9565b91505092915050565b5f602082840312156103b1576103b0610091565b5b6103bb6020610103565b90505f82013567ffffffffffffffff8111156103da576103d961011d565b5b6103e68482850161036f565b5f8301525092915050565b5f6020828403121561040657610405610089565b5b5f82013567ffffffffffffffff8111156104235761042261008d565b5b61042f8482850161039c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6104938161017f565b82525050565b604082015f8201516104ad5f85018261048a565b5060208201516104c0602085018261048a565b50505050565b5f6104d18383610499565b60408301905092915050565b5f602082019050919050565b5f6104f382610461565b6104fd818561046b565b93506105088361047b565b805f5b8381101561053857815161051f88826104c6565b975061052a836104dd565b92505060018101905061050b565b5085935050505092915050565b5f602083015f8301518482035f86015261055f82826104e9565b9150508091505092915050565b5f6105778383610545565b905092915050565b5f602082019050919050565b5f61059582610438565b61059f8185610442565b9350836020820285016105b185610452565b805f5b858110156105ec57848403895281516105cd858261056c565b94506105d88361057f565b925060208a019950506001810190506105b4565b50829750879550505050505092915050565b5f602083015f8301518482035f860152610618828261058b565b9150508091505092915050565b5f6020820190508181035f83015261063d81846105fe565b90509291505056fea2646970667358221220ff697eed38af67c30b96e9fc9f252d47c047bb5fec7e88738ca25e9c2bdb661364736f6c634300081d0033" # noqa: E501 -NESTED_TUPLE_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80632655aef11461002d575b5f5ffd5b610047600480360381019061004291906103f1565b61005d565b6040516100549190610625565b60405180910390f35b61006561006d565b819050919050565b6040518060200160405280606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100db82610095565b810181811067ffffffffffffffff821117156100fa576100f96100a5565b5b80604052505050565b5f61010c610080565b905061011882826100d2565b919050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff82111561013f5761013e6100a5565b5b602082029050602081019050919050565b5f5ffd5b5f67ffffffffffffffff82111561016e5761016d6100a5565b5b602082029050602081019050919050565b5f819050919050565b6101918161017f565b811461019b575f5ffd5b50565b5f813590506101ac81610188565b92915050565b5f604082840312156101c7576101c6610091565b5b6101d16040610103565b90505f6101e08482850161019e565b5f8301525060206101f38482850161019e565b60208301525092915050565b5f61021161020c84610154565b610103565b9050808382526020820190506040840283018581111561023457610233610150565b5b835b8181101561025d578061024988826101b2565b845260208401935050604081019050610236565b5050509392505050565b5f82601f83011261027b5761027a610121565b5b813561028b8482602086016101ff565b91505092915050565b5f602082840312156102a9576102a8610091565b5b6102b36020610103565b90505f82013567ffffffffffffffff8111156102d2576102d161011d565b5b6102de84828501610267565b5f8301525092915050565b5f6102fb6102f684610125565b610103565b9050808382526020820190506020840283018581111561031e5761031d610150565b5b835b8181101561036557803567ffffffffffffffff81111561034357610342610121565b5b8086016103508982610294565b85526020850194505050602081019050610320565b5050509392505050565b5f82601f83011261038357610382610121565b5b81356103938482602086016102e9565b91505092915050565b5f602082840312156103b1576103b0610091565b5b6103bb6020610103565b90505f82013567ffffffffffffffff8111156103da576103d961011d565b5b6103e68482850161036f565b5f8301525092915050565b5f6020828403121561040657610405610089565b5b5f82013567ffffffffffffffff8111156104235761042261008d565b5b61042f8482850161039c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6104938161017f565b82525050565b604082015f8201516104ad5f85018261048a565b5060208201516104c0602085018261048a565b50505050565b5f6104d18383610499565b60408301905092915050565b5f602082019050919050565b5f6104f382610461565b6104fd818561046b565b93506105088361047b565b805f5b8381101561053857815161051f88826104c6565b975061052a836104dd565b92505060018101905061050b565b5085935050505092915050565b5f602083015f8301518482035f86015261055f82826104e9565b9150508091505092915050565b5f6105778383610545565b905092915050565b5f602082019050919050565b5f61059582610438565b61059f8185610442565b9350836020820285016105b185610452565b805f5b858110156105ec57848403895281516105cd858261056c565b94506105d88361057f565b925060208a019950506001810190506105b4565b50829750879550505050505092915050565b5f602083015f8301518482035f860152610618828261058b565b9150508091505092915050565b5f6020820190508181035f83015261063d81846105fe565b90509291505056fea2646970667358221220ff697eed38af67c30b96e9fc9f252d47c047bb5fec7e88738ca25e9c2bdb661364736f6c634300081d0033" # noqa: E501 +NESTED_TUPLE_CONTRACT_BYTECODE = "0x6080604052348015600e575f5ffd5b5061067b8061001c5f395ff3fe608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80632655aef11461002d575b5f5ffd5b610047600480360381019061004291906103f1565b61005d565b6040516100549190610625565b60405180910390f35b61006561006d565b819050919050565b6040518060200160405280606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100db82610095565b810181811067ffffffffffffffff821117156100fa576100f96100a5565b5b80604052505050565b5f61010c610080565b905061011882826100d2565b919050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff82111561013f5761013e6100a5565b5b602082029050602081019050919050565b5f5ffd5b5f67ffffffffffffffff82111561016e5761016d6100a5565b5b602082029050602081019050919050565b5f819050919050565b6101918161017f565b811461019b575f5ffd5b50565b5f813590506101ac81610188565b92915050565b5f604082840312156101c7576101c6610091565b5b6101d16040610103565b90505f6101e08482850161019e565b5f8301525060206101f38482850161019e565b60208301525092915050565b5f61021161020c84610154565b610103565b9050808382526020820190506040840283018581111561023457610233610150565b5b835b8181101561025d578061024988826101b2565b845260208401935050604081019050610236565b5050509392505050565b5f82601f83011261027b5761027a610121565b5b813561028b8482602086016101ff565b91505092915050565b5f602082840312156102a9576102a8610091565b5b6102b36020610103565b90505f82013567ffffffffffffffff8111156102d2576102d161011d565b5b6102de84828501610267565b5f8301525092915050565b5f6102fb6102f684610125565b610103565b9050808382526020820190506020840283018581111561031e5761031d610150565b5b835b8181101561036557803567ffffffffffffffff81111561034357610342610121565b5b8086016103508982610294565b85526020850194505050602081019050610320565b5050509392505050565b5f82601f83011261038357610382610121565b5b81356103938482602086016102e9565b91505092915050565b5f602082840312156103b1576103b0610091565b5b6103bb6020610103565b90505f82013567ffffffffffffffff8111156103da576103d961011d565b5b6103e68482850161036f565b5f8301525092915050565b5f6020828403121561040657610405610089565b5b5f82013567ffffffffffffffff8111156104235761042261008d565b5b61042f8482850161039c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6104938161017f565b82525050565b604082015f8201516104ad5f85018261048a565b5060208201516104c0602085018261048a565b50505050565b5f6104d18383610499565b60408301905092915050565b5f602082019050919050565b5f6104f382610461565b6104fd818561046b565b93506105088361047b565b805f5b8381101561053857815161051f88826104c6565b975061052a836104dd565b92505060018101905061050b565b5085935050505092915050565b5f602083015f8301518482035f86015261055f82826104e9565b9150508091505092915050565b5f6105778383610545565b905092915050565b5f602082019050919050565b5f61059582610438565b61059f8185610442565b9350836020820285016105b185610452565b805f5b858110156105ec57848403895281516105cd858261056c565b94506105d88361057f565b925060208a019950506001810190506105b4565b50829750879550505050505092915050565b5f602083015f8301518482035f860152610618828261058b565b9150508091505092915050565b5f6020820190508181035f83015261063d81846105fe565b90509291505056fea2646970667358221220e9a46dd271224211ac317ab5deb76259a8309e527c859b3d977cfc261a3780db64736f6c634300081e0033" # noqa: E501 +NESTED_TUPLE_CONTRACT_RUNTIME = "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c80632655aef11461002d575b5f5ffd5b610047600480360381019061004291906103f1565b61005d565b6040516100549190610625565b60405180910390f35b61006561006d565b819050919050565b6040518060200160405280606081525090565b5f604051905090565b5f5ffd5b5f5ffd5b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6100db82610095565b810181811067ffffffffffffffff821117156100fa576100f96100a5565b5b80604052505050565b5f61010c610080565b905061011882826100d2565b919050565b5f5ffd5b5f5ffd5b5f67ffffffffffffffff82111561013f5761013e6100a5565b5b602082029050602081019050919050565b5f5ffd5b5f67ffffffffffffffff82111561016e5761016d6100a5565b5b602082029050602081019050919050565b5f819050919050565b6101918161017f565b811461019b575f5ffd5b50565b5f813590506101ac81610188565b92915050565b5f604082840312156101c7576101c6610091565b5b6101d16040610103565b90505f6101e08482850161019e565b5f8301525060206101f38482850161019e565b60208301525092915050565b5f61021161020c84610154565b610103565b9050808382526020820190506040840283018581111561023457610233610150565b5b835b8181101561025d578061024988826101b2565b845260208401935050604081019050610236565b5050509392505050565b5f82601f83011261027b5761027a610121565b5b813561028b8482602086016101ff565b91505092915050565b5f602082840312156102a9576102a8610091565b5b6102b36020610103565b90505f82013567ffffffffffffffff8111156102d2576102d161011d565b5b6102de84828501610267565b5f8301525092915050565b5f6102fb6102f684610125565b610103565b9050808382526020820190506020840283018581111561031e5761031d610150565b5b835b8181101561036557803567ffffffffffffffff81111561034357610342610121565b5b8086016103508982610294565b85526020850194505050602081019050610320565b5050509392505050565b5f82601f83011261038357610382610121565b5b81356103938482602086016102e9565b91505092915050565b5f602082840312156103b1576103b0610091565b5b6103bb6020610103565b90505f82013567ffffffffffffffff8111156103da576103d961011d565b5b6103e68482850161036f565b5f8301525092915050565b5f6020828403121561040657610405610089565b5b5f82013567ffffffffffffffff8111156104235761042261008d565b5b61042f8482850161039c565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6104938161017f565b82525050565b604082015f8201516104ad5f85018261048a565b5060208201516104c0602085018261048a565b50505050565b5f6104d18383610499565b60408301905092915050565b5f602082019050919050565b5f6104f382610461565b6104fd818561046b565b93506105088361047b565b805f5b8381101561053857815161051f88826104c6565b975061052a836104dd565b92505060018101905061050b565b5085935050505092915050565b5f602083015f8301518482035f86015261055f82826104e9565b9150508091505092915050565b5f6105778383610545565b905092915050565b5f602082019050919050565b5f61059582610438565b61059f8185610442565b9350836020820285016105b185610452565b805f5b858110156105ec57848403895281516105cd858261056c565b94506105d88361057f565b925060208a019950506001810190506105b4565b50829750879550505050505092915050565b5f602083015f8301518482035f860152610618828261058b565b9150508091505092915050565b5f6020820190508181035f83015261063d81846105fe565b90509291505056fea2646970667358221220e9a46dd271224211ac317ab5deb76259a8309e527c859b3d977cfc261a3780db64736f6c634300081e0033" # noqa: E501 NESTED_TUPLE_CONTRACT_ABI = [ { "inputs": [ From 763812370b57fafa931964a2b3c191d7fd4735d7 Mon Sep 17 00:00:00 2001 From: fselmo Date: Wed, 7 May 2025 11:14:23 -0600 Subject: [PATCH 2/5] Generate test fixture with geth v1.15.11 --- .circleci/config.yml | 2 +- docs/contributing.rst | 4 ++-- tests/integration/geth-1.15.11-fixture.zip | Bin 0 -> 47317 bytes tests/integration/go_ethereum/conftest.py | 2 +- web3/tools/benchmark/node.py | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 tests/integration/geth-1.15.11-fixture.zip diff --git a/.circleci/config.yml b/.circleci/config.yml index 44a1e9cd96..2dcec59499 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -4,7 +4,7 @@ parameters: # NOTE: Do not update the `geth_version` manually. It is updated during the # integration test fixture generation. geth_version: - default: "1.15.5" + default: "1.15.11" type: string go_version: default: "1.24.1" diff --git a/docs/contributing.rst b/docs/contributing.rst index a9ed3e03ba..373b2f257a 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -376,13 +376,13 @@ Geth Fixtures .. code:: sh - $ python -m geth.install v1.15.5 + $ python -m geth.install v1.15.11 2. Specify the Geth binary and run the fixture creation script (from within the web3.py directory): .. code:: sh - $ GETH_BINARY=~/.py-geth/geth-v1.15.5/bin/geth python ./tests/integration/generate_fixtures/go_ethereum.py + $ GETH_BINARY=~/.py-geth/geth-v1.15.11/bin/geth python ./tests/integration/generate_fixtures/go_ethereum.py 3. The output of this script is your fixture, a zip file, which is now stored in ``/tests/integration/``. The ``/tests/integration/go_ethereum/conftest.py`` and diff --git a/tests/integration/geth-1.15.11-fixture.zip b/tests/integration/geth-1.15.11-fixture.zip new file mode 100644 index 0000000000000000000000000000000000000000..e7ca410dd07d1915b54d0652af434f5aac1eccca GIT binary patch literal 47317 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 z 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 Date: Wed, 7 May 2025 11:36:31 -0600 Subject: [PATCH 3/5] Add error formatters to raise on block not found errors --- web3/_utils/error_formatters_utils.py | 17 +++++++++++++++++ web3/_utils/method_formatters.py | 2 ++ 2 files changed, 19 insertions(+) diff --git a/web3/_utils/error_formatters_utils.py b/web3/_utils/error_formatters_utils.py index 8947f50026..d69e256771 100644 --- a/web3/_utils/error_formatters_utils.py +++ b/web3/_utils/error_formatters_utils.py @@ -8,6 +8,7 @@ ) from web3.exceptions import ( + BlockNotFound, ContractCustomError, ContractLogicError, ContractPanicError, @@ -185,3 +186,19 @@ def raise_transaction_indexing_error_if_indexing(response: RPCResponse) -> RPCRe raise TransactionIndexingInProgress(message) return response + + +def raise_block_not_found_on_error(response: RPCResponse) -> RPCResponse: + """ + Raise ``BlockNotFound`` on specific error message(s). + """ + error = response.get("error") + if not isinstance(error, str) and error is not None: + message = error.get("message") + if message is not None: + if "not found" in message.lower() and any( + key in message.lower() for key in ("block", "header") + ): + raise BlockNotFound(message) + + return response diff --git a/web3/_utils/method_formatters.py b/web3/_utils/method_formatters.py index 09444811c7..8cc3eab58e 100644 --- a/web3/_utils/method_formatters.py +++ b/web3/_utils/method_formatters.py @@ -55,6 +55,7 @@ is_length, ) from web3._utils.error_formatters_utils import ( + raise_block_not_found_on_error, raise_contract_logic_error_on_revert, raise_transaction_indexing_error_if_indexing, ) @@ -1092,6 +1093,7 @@ def subscription_formatter(value: Any) -> Union[HexBytes, HexStr, Dict[str, Any] RPC.eth_estimateGas: raise_contract_logic_error_on_revert, RPC.eth_call: raise_contract_logic_error_on_revert, RPC.eth_getTransactionReceipt: raise_transaction_indexing_error_if_indexing, + RPC.eth_getBlockReceipts: raise_block_not_found_on_error, } From 540b3bd5d38625a919c7c5ddf63a107381cb6542 Mon Sep 17 00:00:00 2001 From: fselmo Date: Wed, 7 May 2025 11:37:06 -0600 Subject: [PATCH 4/5] coinbase is the keyfile account, only need to assert different balances --- web3/_utils/module_testing/eth_module.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/web3/_utils/module_testing/eth_module.py b/web3/_utils/module_testing/eth_module.py index 99f4f5465e..5346cb3ca5 100644 --- a/web3/_utils/module_testing/eth_module.py +++ b/web3/_utils/module_testing/eth_module.py @@ -2730,13 +2730,15 @@ def test_eth_get_balance(self, w3: "Web3") -> None: assert balance >= 0 def test_eth_get_balance_with_block_identifier(self, w3: "Web3") -> None: - miner_address = w3.eth.get_block(1)["miner"] - balance_post_genesis = w3.eth.get_balance(miner_address, 1) + genesis_block = w3.eth.get_block(0) + miner_address = genesis_block["miner"] + + balance_genesis = w3.eth.get_balance(miner_address, 0) later_balance = w3.eth.get_balance(miner_address, "latest") - assert is_integer(balance_post_genesis) + assert is_integer(balance_genesis) assert is_integer(later_balance) - assert later_balance > balance_post_genesis + assert later_balance != balance_genesis @pytest.mark.parametrize( "address, expect_success", From 8b38566662e9965069112ec009cf2c26d03d45c8 Mon Sep 17 00:00:00 2001 From: fselmo Date: Wed, 7 May 2025 12:03:18 -0600 Subject: [PATCH 5/5] newsfragment for #3692; remove old test fixture --- newsfragments/3692.internal.rst | 1 + tests/integration/geth-1.15.5-fixture.zip | Bin 49525 -> 0 bytes 2 files changed, 1 insertion(+) create mode 100644 newsfragments/3692.internal.rst delete mode 100644 tests/integration/geth-1.15.5-fixture.zip diff --git a/newsfragments/3692.internal.rst b/newsfragments/3692.internal.rst new file mode 100644 index 0000000000..866c681986 --- /dev/null +++ b/newsfragments/3692.internal.rst @@ -0,0 +1 @@ +Re-compile test contracts with new Solidity ``v0.8.30`` and re-generate integration test fixture to test against latest geth ``v1.15.11``. diff --git a/tests/integration/geth-1.15.5-fixture.zip b/tests/integration/geth-1.15.5-fixture.zip deleted file mode 100644 index 5824e7ca59e001d8d278ca8872beeb4c57bbcf19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49525 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 d+r~ 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