export const errorsContractSource = ` pragma solidity ^0.8.13; error One(uint value, string msg, bytes32 encoded); error Two(uint256[3] value, bytes32[2] encoded); contract ErrorsContract { function doThrow() public pure { assert(false); } function doRevert() public pure { revert("Revert cause"); } function doRevertWithoutMessage() public pure { revert(); } function doRequireFail() public pure { require(false, "Require cause"); } function doRequireFailWithoutMessage() public pure { require(false); } function doPanic() public pure { uint d = 0; uint x = 1 / d; } function doRevertWithOne() public pure { revert One(0, 'message', 0x00cFBbaF7DDB3a1476767101c12a0162e241fbAD2a0162e2410cFBbaF7162123); } function doRevertWithTwo() public pure { revert Two( [ uint256(1), uint256(2), uint256(3) ], [ bytes32(0x00cFBbaF7DDB3a1476767101c12a0162e241fbAD2a0162e2410cFBbaF7162123), bytes32(0x00cFBbaF7DDB3a1476767101c12a0162e241fbAD2a0162e2410cFBbaF7162124) ] ); } } ` export const errorsContractABI = { contractName: 'ErrorsContract', abi: [ { inputs: [ { internalType: 'uint256', name: 'value', type: 'uint256' }, { internalType: 'string', name: 'msg', type: 'string' }, { internalType: 'bytes32', name: 'encoded', type: 'bytes32' }, ], name: 'One', type: 'error', }, { inputs: [ { internalType: 'uint256[3]', name: 'value', type: 'uint256[3]' }, { internalType: 'bytes32[2]', name: 'encoded', type: 'bytes32[2]' }, ], name: 'Two', type: 'error', }, { inputs: [], name: 'doPanic', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doRequireFail', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doRequireFailWithoutMessage', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doRevert', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doRevertWithOne', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doRevertWithTwo', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doRevertWithoutMessage', outputs: [], stateMutability: 'pure', type: 'function' }, { inputs: [], name: 'doThrow', outputs: [], stateMutability: 'pure', type: 'function' }, ], bytecode: '608060405234801561001057600080fd5b506106fd806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063afc874d21161005b578063afc874d2146100b5578063d950ca93146100bf578063eacf8a57146100c9578063fff78f9c146100d357610088565b8063092461c21461008d57806335c0a7101461009757806367644795146100a15780639817185d146100ab575b600080fd5b6100956100dd565b005b61009f610191565b005b6100a9610196565b005b6100b36101a3565b005b6100bd6101b9565b005b6100c76101f4565b005b6100d1610253565b005b6100db610296565b005b60405180606001604052806001815260200160028152602001600381525060405180604001604052807ecfbbaf7ddb3a1476767101c12a0162e241fbad2a0162e2410cfbbaf716212360001b81526020017ecfbbaf7ddb3a1476767101c12a0162e241fbad2a0162e2410cfbbaf716212460001b8152506040517f36cc9d48000000000000000000000000000000000000000000000000000000008152600401610188929190610411565b60405180910390fd5b600080fd5b60006101a157600080fd5b565b6000808160016101b39190610469565b90505050565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101eb906104f7565b60405180910390fd5b60007ecfbbaf7ddb3a1476767101c12a0162e241fbad2a0162e2410cfbbaf71621236040517f824e791800000000000000000000000000000000000000000000000000000000815260040161024a9291906105f0565b60405180910390fd5b6000610294576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161028b90610678565b60405180910390fd5b565b60006102a5576102a4610698565b5b565b600060039050919050565b600081905092915050565b6000819050919050565b6000819050919050565b6102da816102c7565b82525050565b60006102ec83836102d1565b60208301905092915050565b6000602082019050919050565b61030e816102a7565b61031881846102b2565b9250610323826102bd565b8060005b8381101561035457815161033b87826102e0565b9650610346836102f8565b925050600181019050610327565b505050505050565b600060029050919050565b600081905092915050565b6000819050919050565b6000819050919050565b61038f8161037c565b82525050565b60006103a18383610386565b60208301905092915050565b6000602082019050919050565b6103c38161035c565b6103cd8184610367565b92506103d882610372565b8060005b838110156104095781516103f08782610395565b96506103fb836103ad565b9250506001810190506103dc565b505050505050565b600060a0820190506104266000830185610305565b61043360608301846103ba565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000610474826102c7565b915061047f836102c7565b92508261048f5761048e61043a565b5b828204905092915050565b600082825260208201905092915050565b7f5265766572742063617573650000000000000000000000000000000000000000600082015250565b60006104e1600c8361049a565b91506104ec826104ab565b602082019050919050565b60006020820190508181036000830152610510816104d4565b9050919050565b6000819050919050565b6000819050919050565b600061054661054161053c84610517565b610521565b6102c7565b9050919050565b6105568161052b565b82525050565b7f6d65737361676500000000000000000000000000000000000000000000000000600082015250565b600061059260078361049a565b915061059d8261055c565b602082019050919050565b6000819050919050565b60008160001b9050919050565b60006105da6105d56105d0846105a8565b6105b2565b61037c565b9050919050565b6105ea816105bf565b82525050565b6000606082019050610605600083018561054d565b818103602083015261061681610585565b905061062560408301846105e1565b9392505050565b7f5265717569726520636175736500000000000000000000000000000000000000600082015250565b6000610662600d8361049a565b915061066d8261062c565b602082019050919050565b6000602082019050818103600083015261069181610655565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fdfea2646970667358221220e6a0dbdcf2895860647270ab1f3a8e8deb4a06e7bc950b3fd7d36ece795df50964736f6c63430008110033', }