github.com/codingfuture/orig-energi3@v0.8.4/energi/abi/BlacklistRegistryV1.go (about) 1 // Code generated - DO NOT EDIT. 2 // This file is a generated binding and any manual changes will be lost. 3 4 package abi 5 6 import ( 7 "math/big" 8 "strings" 9 10 ethereum "github.com/ethereum/go-ethereum" 11 "github.com/ethereum/go-ethereum/accounts/abi" 12 "github.com/ethereum/go-ethereum/accounts/abi/bind" 13 "github.com/ethereum/go-ethereum/common" 14 "github.com/ethereum/go-ethereum/core/types" 15 "github.com/ethereum/go-ethereum/event" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var ( 20 _ = big.NewInt 21 _ = strings.NewReader 22 _ = ethereum.NotFound 23 _ = abi.U256 24 _ = bind.Bind 25 _ = common.Big1 26 _ = types.BloomLookup 27 _ = event.NewSubscription 28 ) 29 30 // BlacklistRegistryV1ABI is the input ABI used to generate the binding from. 31 const BlacklistRegistryV1ABI = "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_proxy\",\"type\":\"address\"},{\"internalType\":\"contractIGovernedProxy\",\"name\":\"_mnregistry_proxy\",\"type\":\"address\"},{\"internalType\":\"contractGen2Migration\",\"name\":\"_migration\",\"type\":\"address\"},{\"internalType\":\"contractITreasury\",\"name\":\"_compensation_fund\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_ebi_signer\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contractIBlacklistProposal\",\"name\":\"proposal\",\"type\":\"address\"}],\"name\":\"BlacklistProposal\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contractIBlacklistProposal\",\"name\":\"proposal\",\"type\":\"address\"}],\"name\":\"DrainProposal\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"target\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"contractIBlacklistProposal\",\"name\":\"proposal\",\"type\":\"address\"}],\"name\":\"WhitelistProposal\",\"type\":\"event\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"constant\":true,\"inputs\":[],\"name\":\"EBI_signer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"collect\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"compensation_fund\",\"outputs\":[{\"internalType\":\"contractITreasury\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contractIGovernedContract\",\"name\":\"_newImpl\",\"type\":\"address\"}],\"name\":\"destroy\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"item_id\",\"type\":\"uint256\"},{\"internalType\":\"bytes20\",\"name\":\"owner\",\"type\":\"bytes20\"}],\"name\":\"drainMigration\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"enumerateAll\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"addresses\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"enumerateBlocked\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"addresses\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"enumerateDrainable\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"addresses\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isBlacklisted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"isDrainable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"contractIGovernedContract\",\"name\":\"_oldImpl\",\"type\":\"address\"}],\"name\":\"migrate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"migration\",\"outputs\":[{\"internalType\":\"contractGen2Migration\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"mnregistry_proxy\",\"outputs\":[{\"internalType\":\"contractIGovernedProxy\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"onDrain\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"proposal_creator\",\"outputs\":[{\"internalType\":\"contractBlacklistV1ProposalCreator\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"contractIBlacklistProposal\",\"name\":\"enforce\",\"type\":\"address\"},{\"internalType\":\"contractIBlacklistProposal\",\"name\":\"revoke\",\"type\":\"address\"},{\"internalType\":\"contractIBlacklistProposal\",\"name\":\"drain\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"propose\",\"outputs\":[{\"internalType\":\"contractIBlacklistProposal\",\"name\":\"\",\"type\":\"address\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"proposeDrain\",\"outputs\":[{\"internalType\":\"contractIBlacklistProposal\",\"name\":\"\",\"type\":\"address\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"}],\"name\":\"proposeRevoke\",\"outputs\":[{\"internalType\":\"contractIBlacklistProposal\",\"name\":\"\",\"type\":\"address\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"proxy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"v1storage\",\"outputs\":[{\"internalType\":\"contractStorageBlacklistRegistryV1\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}]" 32 33 // BlacklistRegistryV1Bin is the compiled bytecode used for deploying new contracts. 34 const BlacklistRegistryV1Bin = `60806040523480156200001157600080fd5b506040516200608a3803806200608a833981810160405260a08110156200003757600080fd5b50805160208201516040808401516060850151608090950151600080546001600160a01b0319166001600160a01b0387161790559151939492939092919062000080906200014c565b604051809103906000f0801580156200009d573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055604051620000cc906200015a565b604051809103906000f080158015620000e9573d6000803e3d6000fd5b50600380546001600160a01b03199081166001600160a01b03938416179091556004805482169683169690961790955560058054861694821694909417909355600680548516928416929092179091556007805490931691161790555062000168565b6118968062003cc083390190565b610b34806200555683390190565b613b4880620001786000396000f3fe6080604052600436106101695760003560e01c806379d7bc07116100cb578063d1e8ebda1161007f578063f444115211610059578063f4441152146105aa578063fe575a87146105bf578063fe7334e8146105ff57610169565b8063d1e8ebda1461054d578063ec55688914610580578063ee33f9d21461059557610169565b806394c210fc116100b057806394c210fc146104e3578063bc393afb146104f8578063ce5494bb1461050d57610169565b806379d7bc071461048e5780638ad4012f146104ce57610169565b80632d059305116101225780633341b445116101075780633341b4451461035f5780633502a130146103d75780635603125c1461042957610169565b80632d059305146102f65780633303bbb11461030b57610169565b806306ec16f81161015357806306ec16f81461026e5780631705a3bd146102ae578063244fcea5146102c357610169565b8062f55d9d146101d05780630126795114610212575b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f4e6f7420737570706f7274656400000000000000000000000000000000000000604482015290519081900360640190fd5b3480156101dc57600080fd5b50610210600480360360208110156101f357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610614565b005b6102456004803603602081101561022857600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166106bc565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561027a57600080fd5b506102106004803603602081101561029157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610f39565b3480156102ba57600080fd5b50610245611a20565b610245600480360360208110156102d957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611a3c565b34801561030257600080fd5b50610245612083565b34801561031757600080fd5b5061034b6004803603602081101561032e57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661209f565b604080519115158252519081900360200190f35b34801561036b57600080fd5b5061039f6004803603602081101561038257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661234c565b6040805173ffffffffffffffffffffffffffffffffffffffff9485168152928416602084015292168183015290519081900360600190f35b3480156103e357600080fd5b50610210600480360360408110156103fa57600080fd5b50803590602001357fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016612409565b34801561043557600080fd5b5061043e6125bc565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561047a578181015183820152602001610462565b505050509050019250505060405180910390f35b34801561049a57600080fd5b50610210600480360360208110156104b157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166127b2565b3480156104da57600080fd5b506102456128b4565b3480156104ef57600080fd5b506102456128d0565b34801561050457600080fd5b5061043e6128ec565b34801561051957600080fd5b506102106004803603602081101561053057600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16612a44565b6102456004803603602081101561056357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16612ad2565b34801561058c57600080fd5b50610245612fae565b3480156105a157600080fd5b5061043e612fca565b3480156105b657600080fd5b506102456131bc565b3480156105cb57600080fd5b5061034b600480360360208110156105e257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166131d8565b34801561060b57600080fd5b506102456133df565b60005473ffffffffffffffffffffffffffffffffffffffff16331461069a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e6f742070726f78790000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6106a3816133fb565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600060015460001461072f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055610745683635c9adc5dea0000061350c565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301529151919092169160009182918291859163323ab409916024808301926080929190829003018186803b1580156107c157600080fd5b505afa1580156107d5573d6000803e3d6000fd5b505050506040513d60808110156107eb57600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff831615610e3e5773ffffffffffffffffffffffffffffffffffffffff821615610b6c578173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561087f57600080fd5b505afa158015610893573d6000803e3d6000fd5b505050506040513d60208110156108a957600080fd5b505115610a89578273ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156108f857600080fd5b505af115801561090c573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561095857600080fd5b505af115801561096c573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff8116156109ed578073ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156109d457600080fd5b505af11580156109e8573d6000803e3d6000fd5b505050505b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610a6c57600080fd5b505af1158015610a80573d6000803e3d6000fd5b50505050610b67565b8173ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015610acf57600080fd5b505afa158015610ae3573d6000803e3d6000fd5b505050506040513d6020811015610af957600080fd5b505115610b6757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f416c726561647920616374697665202831290000000000000000000000000000604482015290519081900360640190fd5b610e3e565b8273ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb257600080fd5b505afa158015610bc6573d6000803e3d6000fd5b505050506040513d6020811015610bdc57600080fd5b50518015610c5957508273ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2b57600080fd5b505afa158015610c3f573d6000803e3d6000fd5b505050506040513d6020811015610c5557600080fd5b5051155b15610dd7578273ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610ca657600080fd5b505af1158015610cba573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff811615610d3b578073ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610d2257600080fd5b505af1158015610d36573d6000803e3d6000fd5b505050505b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610dba57600080fd5b505af1158015610dce573d6000803e3d6000fd5b50505050610e3e565b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f416c726561647920616374697665202832290000000000000000000000000000604482015290519081900360640190fd5b6000610e486135bb565b604080517fac31d62200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152808416602483015291519293509087169163ac31d6229160448082019260009290919082900301818387803b158015610ec457600080fd5b505af1158015610ed8573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff85811682529151918b1693507fea0d3b1afc7aa1754f902b277d6f473e2f4a4526e94797814c2042405d692557925081900360200190a260006001559695505050505050565b60015415610fa857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151919092169160009182918291859163323ab409916024808301926080929190829003018186803b15801561102857600080fd5b505afa15801561103c573d6000803e3d6000fd5b505050506040513d608081101561105257600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff83166110ea57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4e6f7468696e6720746f20636f6c6c6563740000000000000000000000000000604482015290519081900360640190fd5b8273ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b15801561113057600080fd5b505afa158015611144573d6000803e3d6000fd5b505050506040513d602081101561115a57600080fd5b50516111c757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f456e666f72636520766f74696e6720696e2070726f6772657373000000000000604482015290519081900360640190fd5b8273ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561120d57600080fd5b505afa158015611221573d6000803e3d6000fd5b505050506040513d602081101561123757600080fd5b505161133d578273ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128557600080fd5b505af1158015611299573d6000803e3d6000fd5b505050508373ffffffffffffffffffffffffffffffffffffffff166329092d0e866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561131c57600080fd5b505af1158015611330573d6000803e3d6000fd5b5050505050505050611a18565b73ffffffffffffffffffffffffffffffffffffffff8116156115e9578073ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b15801561139f57600080fd5b505afa1580156113b3573d6000803e3d6000fd5b505050506040513d60208110156113c957600080fd5b505161143657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f447261696e20766f74696e6720696e2070726f67726573730000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561147c57600080fd5b505afa158015611490573d6000803e3d6000fd5b505050506040513d60208110156114a657600080fd5b50511561151457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4163636f756e74206d75737420626520647261696e6564000000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561155c57600080fd5b505af1158015611570573d6000803e3d6000fd5b5050604080517f13756c8f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152600060248301819052925190891694506313756c8f93506044808301939282900301818387803b15801561131c57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8216156119b1578173ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b15801561164b57600080fd5b505afa15801561165f573d6000803e3d6000fd5b505050506040513d602081101561167557600080fd5b50516116e257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5265766f6b6520766f74696e6720696e2070726f677265737300000000000000604482015290519081900360640190fd5b8173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561172857600080fd5b505afa15801561173c573d6000803e3d6000fd5b505050506040513d602081101561175257600080fd5b5051156118d3578273ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561180157600080fd5b505af1158015611815573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff81161561183757fe5b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156118b657600080fd5b505af11580156118ca573d6000803e3d6000fd5b505050506119a8565b8173ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561191b57600080fd5b505af115801561192f573d6000803e3d6000fd5b5050604080517f45507a9e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152600060248301819052925190891694506345507a9e93506044808301939282900301818387803b15801561131c57600080fd5b50505050611a18565b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f4e6f2070726f706f73616c7320726561647920746f20636f6c6c656374000000604482015290519081900360640190fd5b506000600155565b60055473ffffffffffffffffffffffffffffffffffffffff1681565b6000600154600014611aaf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055611ac568056bc75e2d6310000061350c565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152915191909216916000918291849163323ab40991602480820192608092909190829003018186803b158015611b4057600080fd5b505afa158015611b54573d6000803e3d6000fd5b505050506040513d6080811015611b6a57600080fd5b508051602090910151909250905073ffffffffffffffffffffffffffffffffffffffff8216611bfa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4e6f206e65656420283129000000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811615611dcf578073ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015611c5c57600080fd5b505afa158015611c70573d6000803e3d6000fd5b505050506040513d6020811015611c8657600080fd5b5051611cf357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f416c726561647920616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3957600080fd5b505afa158015611d4d573d6000803e3d6000fd5b505050506040513d6020811015611d6357600080fd5b5051611dca578073ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611db157600080fd5b505af1158015611dc5573d6000803e3d6000fd5b505050505b611f89565b8173ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015611e1557600080fd5b505afa158015611e29573d6000803e3d6000fd5b505050506040513d6020811015611e3f57600080fd5b5051611eac57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e6f74206170706c696361626c65000000000000000000000000000000000000604482015290519081900360640190fd5b8173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015611ef257600080fd5b505afa158015611f06573d6000803e3d6000fd5b505050506040513d6020811015611f1c57600080fd5b5051611f8957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4e6f206e65656420283229000000000000000000000000000000000000000000604482015290519081900360640190fd5b6000611f936135bb565b604080517f45507a9e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff898116600483015280841660248301529151929350908616916345507a9e9160448082019260009290919082900301818387803b15801561200f57600080fd5b505af1158015612023573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff85811682529151918a1693507f2e46fe8e502a44b05a85d4346d3e208fc845c81a81c9b7e4db08a33dca59faff925081900360200190a2600060015595945050505050565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151600093849384938493919092169163323ab409916024808301926080929190829003018186803b15801561211b57600080fd5b505afa15801561212f573d6000803e3d6000fd5b505050506040513d608081101561214557600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff83166121825760009350505050612347565b8273ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b1580156121c857600080fd5b505afa1580156121dc573d6000803e3d6000fd5b505050506040513d60208110156121f257600080fd5b50516122045760009350505050612347565b73ffffffffffffffffffffffffffffffffffffffff82161580159061229757508173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561226a57600080fd5b505afa15801561227e573d6000803e3d6000fd5b505050506040513d602081101561229457600080fd5b50515b156122a85760009350505050612347565b73ffffffffffffffffffffffffffffffffffffffff81166122cf5760009350505050612347565b8073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561231557600080fd5b505afa158015612329573d6000803e3d6000fd5b505050506040513d602081101561233f57600080fd5b505193505050505b919050565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015291516000938493849391169163323ab40991602480820192608092909190829003018186803b1580156123c557600080fd5b505afa1580156123d9573d6000803e3d6000fd5b505050506040513d60808110156123ef57600080fd5b508051602082015160409092015190969195509350915050565b6001541561247857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055612489606082901c61209f565b6124f457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f4e6f7420647261696e61626c6500000000000000000000000000000000000000604482015290519081900360640190fd5b600554604080517fa723b35a000000000000000000000000000000000000000000000000000000008152600481018590527fffffffffffffffffffffffffffffffffffffffff00000000000000000000000084166024820152905173ffffffffffffffffffffffffffffffffffffffff9092169163a723b35a9160448082019260009290919082900301818387803b15801561258f57600080fd5b505af11580156125a3573d6000803e3d6000fd5b505050506125b38160601c613814565b50506000600155565b600354604080517fda0321cd000000000000000000000000000000000000000000000000000000008152905160609273ffffffffffffffffffffffffffffffffffffffff169163da0321cd916004808301926000929190829003018186803b15801561262757600080fd5b505afa15801561263b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052602081101561268257600080fd5b81019080805160405193929190846401000000008211156126a257600080fd5b9083019060208201858111156126b757600080fd5b82518660208202830111640100000000821117156126d457600080fd5b82525081516020918201928201910280838360005b838110156127015781810151838201526020016126e9565b5050505090500160405250505090506000815190505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810190156127ae5761275c82828151811061274f57fe5b60200260200101516131d8565b6127a957600082828151811061276e57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b612717565b5090565b6001541561282157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001805560005473ffffffffffffffffffffffffffffffffffffffff1632146128ab57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f4e6f7420636f6e73656e73757300000000000000000000000000000000000000604482015290519081900360640190fd5b611a1881613814565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b60075473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517fda0321cd000000000000000000000000000000000000000000000000000000008152905160609273ffffffffffffffffffffffffffffffffffffffff169163da0321cd916004808301926000929190829003018186803b15801561295757600080fd5b505afa15801561296b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405260208110156129b257600080fd5b81019080805160405193929190846401000000008211156129d257600080fd5b9083019060208201858111156129e757600080fd5b8251866020820283011164010000000082111715612a0457600080fd5b82525081516020918201928201910280838360005b83811015612a31578181015183820152602001612a19565b5050505090500160405250505090505b90565b60005473ffffffffffffffffffffffffffffffffffffffff163314612aca57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e6f742070726f78790000000000000000000000000000000000000000000000604482015290519081900360640190fd5b612acf815b50565b6000600154600014612b4557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055612b5b68056bc75e2d6310000061350c565b612b64826131d8565b612bcf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f4e6f7420626c61636b6c69737465640000000000000000000000000000000000604482015290519081900360640190fd5b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291519190921691600091839163323ab409916024808301926080929190829003018186803b158015612c4757600080fd5b505afa158015612c5b573d6000803e3d6000fd5b505050506040513d6080811015612c7157600080fd5b5060400151905073ffffffffffffffffffffffffffffffffffffffff811615612eb5578073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015612cda57600080fd5b505afa158015612cee573d6000803e3d6000fd5b505050506040513d6020811015612d0457600080fd5b505115612d7257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f4e6f74206e656564000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015612db857600080fd5b505afa158015612dcc573d6000803e3d6000fd5b505050506040513d6020811015612de257600080fd5b505115612e4e578073ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612e3157600080fd5b505af1158015612e45573d6000803e3d6000fd5b50505050612eb5565b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f566f74696e6720696e2070726f67726573730000000000000000000000000000604482015290519081900360640190fd5b6000612ebf6135bb565b604080517f13756c8f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff888116600483015280841660248301529151929350908516916313756c8f9160448082019260009290919082900301818387803b158015612f3b57600080fd5b505af1158015612f4f573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8581168252915191891693507fb0163b33033bcea41a78d2d4a9c596c29b0667259543d6d56b8cac8cd92d2cea925081900360200190a26000600155949350505050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517fda0321cd000000000000000000000000000000000000000000000000000000008152905160609273ffffffffffffffffffffffffffffffffffffffff169163da0321cd916004808301926000929190829003018186803b15801561303557600080fd5b505afa158015613049573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052602081101561309057600080fd5b81019080805160405193929190846401000000008211156130b057600080fd5b9083019060208201858111156130c557600080fd5b82518660208202830111640100000000821117156130e257600080fd5b82525081516020918201928201910280838360005b8381101561310f5781810151838201526020016130f7565b5050505090500160405250505090506000815190505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810190156127ae5761316a82828151811061315d57fe5b602002602001015161209f565b6131b757600082828151811061317c57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b613125565b60065473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151600093929092169183918291849163323ab409916024808301926080929190829003018186803b15801561325457600080fd5b505afa158015613268573d6000803e3d6000fd5b505050506040513d608081101561327e57600080fd5b508051602090910151909250905073ffffffffffffffffffffffffffffffffffffffff81161580159061331f57508073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b1580156132f257600080fd5b505afa158015613306573d6000803e3d6000fd5b505050506040513d602081101561331c57600080fd5b50515b156133305760009350505050612347565b73ffffffffffffffffffffffffffffffffffffffff8216158015906133c357508173ffffffffffffffffffffffffffffffffffffffff16632173a8f96040518163ffffffff1660e01b815260040160206040518083038186803b15801561339657600080fd5b505afa1580156133aa573d6000803e3d6000fd5b505050506040513d60208110156133c057600080fd5b50515b156133d45760019350505050612347565b506000949350505050565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517f13af403500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152915191909216916313af403591602480830192600092919082900301818387803b15801561346f57600080fd5b505af1158015613483573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166341c0e1b56040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156134f157600080fd5b505af1158015613505573d6000803e3d6000fd5b5050505050565b60075473ffffffffffffffffffffffffffffffffffffffff1661352d613ae4565b73ffffffffffffffffffffffffffffffffffffffff16141561354d575060005b803414612acf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f496e76616c696420666565000000000000000000000000000000000000000000604482015290519081900360640190fd5b600254600454600091829160609173ffffffffffffffffffffffffffffffffffffffff908116917f3e68680a00000000000000000000000000000000000000000000000000000000911661360d613ae4565b6040805173ffffffffffffffffffffffffffffffffffffffff93841660248201529190921660448083019190915282518083039091018152606490910182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317835290518151919290918291908083835b602083106136e657805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe090920191602091820191016136a9565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114613746576040519150601f19603f3d011682016040523d82523d6000602084013e61374b565b606091505b50915091508181906137f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156137ba5781810151838201526020016137a2565b50505050905090810190601f1680156137e75780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5080806020019051602081101561380b57600080fd5b50519250505090565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151919092169160009182918291859163323ab409916024808301926080929190829003018186803b15801561389057600080fd5b505afa1580156138a4573d6000803e3d6000fd5b505050506040513d60808110156138ba57600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff831615613505578273ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561393457600080fd5b505af1158015613948573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff8216156139c9578173ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156139b057600080fd5b505af11580156139c4573d6000803e3d6000fd5b505050505b73ffffffffffffffffffffffffffffffffffffffff811615613a46578073ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b158015613a2d57600080fd5b505af1158015613a41573d6000803e3d6000fd5b505050505b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015613ac557600080fd5b505af1158015613ad9573d6000803e3d6000fd5b505050505050505050565b6000805473ffffffffffffffffffffffffffffffffffffffff16331415613b0c575032612a41565b5033612a4156fea265627a7a72315820342547331d8cc02c483a22f276d79979d91310ecd1c073c9da01b8fec4beb7d864736f6c634300051000326080604052600080546001600160a01b03191633179055611871806100256000396000f3fe6080604052600436106100345760003560e01c806313af4035146100395780633e68680a1461007b57806341c0e1b5146100df575b600080fd5b34801561004557600080fd5b506100796004803603602081101561005c57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166100f4565b005b6100b66004803603604081101561009157600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160200135166101c1565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156100eb57600080fd5b50610079610304565b60005473ffffffffffffffffffffffffffffffffffffffff16331461017a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6000805473ffffffffffffffffffffffffffffffffffffffff16331461024857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b600083836040516102589061038d565b73ffffffffffffffffffffffffffffffffffffffff928316815291166020820152604080519182900301906000f080158015610298573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff16632ded3227346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156102e357600080fd5b505af11580156102f7573d6000803e3d6000fd5b5093979650505050505050565b60005473ffffffffffffffffffffffffffffffffffffffff16331461038a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b33ff5b6114a28061039b8339019056fe60806040523480156200001157600080fd5b50604051620014a2380380620014a2833981810160405260408110156200003757600080fd5b50805160209182015160018054336001600160a01b031991821617909155436002556000805482166001600160a01b03808616918217835562093a8042810160035560048054909516918616919091178455604080517f8abf60770000000000000000000000000000000000000000000000000000000081529051969795968896600a9693958995909485949193638abf60779383830193909290829003018186803b158015620000e757600080fd5b505afa158015620000fc573d6000803e3d6000fd5b505050506040513d60208110156200011357600080fd5b5051604080517f06661abd00000000000000000000000000000000000000000000000000000000815290516001600160a01b03909216916306661abd9160048082019260a092909190829003018186803b1580156200017157600080fd5b505afa15801562000186573d6000803e3d6000fd5b505050506040513d60a08110156200019d57600080fd5b5060408101516080909101519092509050806200021b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4e6f7420726561647920666f722070726f706f73616c73000000000000000000604482015290519081900360640190fd5b600281048210156200028e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f41637469766520776569676874203c20312f3220657665722077656967687400604482015290519081900360640190fd5b600160ff861610156200030257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f51756f72756d206d696e00000000000000000000000000000000000000000000604482015290519081900360640190fd5b606460ff861611156200037657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f51756f72756d206d617800000000000000000000000000000000000000000000604482015290519081900360640190fd5b6008829055606460ff8616830204600955603360ff8616106200039f57600954600a55620003aa565b60646033830204600a555b6000600954116200041c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f51756f72756d2077656967687400000000000000000000000000000000000000604482015290519081900360640190fd5b6000600a54116200048e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f46696e6973682077656967687400000000000000000000000000000000000000604482015290519081900360640190fd5b5050505050505050610ffc80620004a66000396000f3fe6080604052600436106101755760003560e01c80637b352962116100cb578063aec2ccae1161007f578063c86e6c1511610059578063c86e6c1514610405578063e52253811461041a578063fe7334e81461042f57610175565b8063aec2ccae1461039b578063c2472ef8146103db578063c40a70f8146103f057610175565b806391840a6b116100b057806391840a6b14610331578063990a663b14610346578063adfaa72e1461035b57610175565b80637b3529621461030757806383197ef01461031c57610175565b80633d1db3e91161012d57806360f96a8f1161010757806360f96a8f1461029f57806375df0f99146102dd5780637639b1eb146102f257610175565b80633d1db3e9146102605780635051a5ec1461027557806356c2a0a11461028a57610175565b806329dcb0cf1161015e57806329dcb0cf1461022c5780632ded3227146102415780633ccfd60b1461024b57610175565b80630b62be45146101dc5780632173a8f914610203575b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4e6f7420616c6c6f776564000000000000000000000000000000000000000000604482015290519081900360640190fd5b3480156101e857600080fd5b506101f1610444565b60408051918252519081900360200190f35b34801561020f57600080fd5b5061021861044a565b604080519115158252519081900360200190f35b34801561023857600080fd5b506101f161049c565b6102496104a2565b005b34801561025757600080fd5b50610249610532565b34801561026c57600080fd5b506101f16105ef565b34801561028157600080fd5b506102186105f5565b34801561029657600080fd5b50610249610641565b3480156102ab57600080fd5b506102b4610654565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156102e957600080fd5b506101f1610670565b3480156102fe57600080fd5b506101f1610676565b34801561031357600080fd5b5061021861067c565b34801561032857600080fd5b506102496106a6565b34801561033d57600080fd5b506101f1610747565b34801561035257600080fd5b506101f161074d565b34801561036757600080fd5b506102186004803603602081101561037e57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610753565b3480156103a757600080fd5b50610218600480360360208110156103be57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166108ed565b3480156103e757600080fd5b50610249610902565b3480156103fc57600080fd5b506102b4610915565b34801561041157600080fd5b506101f1610931565b34801561042657600080fd5b50610249610937565b34801561043b57600080fd5b506102b4610c8c565b60025481565b60006104546105f5565b1561046157506001610499565b6006546007546002810282118015610482575069152d02c7e14af680000082115b1561049257600192505050610499565b6000925050505b90565b60035481565b60015473ffffffffffffffffffffffffffffffffffffffff16331461052857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4f6e6c7920706172656e74000000000000000000000000000000000000000000604482015290519081900360640190fd5b6005805434019055565b61053a6105f5565b6105a557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4e6f742061636365707465640000000000000000000000000000000000000000604482015290519081900360640190fd5b60045460405173ffffffffffffffffffffffffffffffffffffffff90911690303180156108fc02916000818181858888f193505050501580156105ec573d6000803e3d6000fd5b50565b600a5481565b6000600a546006541061060a57506001610499565b61061261067c565b61061e57506000610499565b60095460075460065401101561063657506000610499565b506007546006541190565b610649610ca8565b600780549091019055565b60015473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b60065481565b6000426003541115806106935750600a5460065410155b806106a15750600a54600754115b905090565b60015473ffffffffffffffffffffffffffffffffffffffff16331461072c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4f6e6c7920706172656e74000000000000000000000000000000000000000000604482015290519081900360640190fd5b60045473ffffffffffffffffffffffffffffffffffffffff16ff5b60085481565b60055481565b60008054604080517f8abf60770000000000000000000000000000000000000000000000000000000081529051839273ffffffffffffffffffffffffffffffffffffffff1691638abf6077916004808301926020929190829003018186803b1580156107be57600080fd5b505afa1580156107d2573d6000803e3d6000fd5b505050506040513d60208110156107e857600080fd5b5051604080517fb83e160500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff868116600483015291519293506000929184169163b83e16059160248082019260e092909190829003018186803b15801561086057600080fd5b505afa158015610874573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525060e081101561089957600080fd5b5060a00151600354909150421080156108b3575060025481105b80156108e5575073ffffffffffffffffffffffffffffffffffffffff84166000908152600b602052604090205460ff16155b949350505050565b600b6020526000908152604090205460ff1681565b61090a610ca8565b600680549091019055565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b60075481565b61093f61067c565b8015610950575061094e6105f5565b155b6109bb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f4e6f7420636f6c6c65637461626c650000000000000000000000000000000000604482015290519081900360640190fd5b60015473ffffffffffffffffffffffffffffffffffffffff163314610a4157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4f6e6c7920706172656e74000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638abf60776040518163ffffffff1660e01b815260040160206040518083038186803b158015610aaa57600080fd5b505afa158015610abe573d6000803e3d6000fd5b505050506040513d6020811015610ad457600080fd5b5051604080517fa2731784000000000000000000000000000000000000000000000000000000008152905191925060009173ffffffffffffffffffffffffffffffffffffffff84169163a2731784916004808301926020929190829003018186803b158015610b4257600080fd5b505afa158015610b56573d6000803e3d6000fd5b505050506040513d6020811015610b6c57600080fd5b5051604080517f8abf6077000000000000000000000000000000000000000000000000000000008152905173ffffffffffffffffffffffffffffffffffffffff90921691638abf607791600480820192602092909190829003018186803b158015610bd657600080fd5b505afa158015610bea573d6000803e3d6000fd5b505050506040513d6020811015610c0057600080fd5b5051604080517fd7bb99ba000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff83169163d7bb99ba91303191600480830192600092919082900301818588803b158015610c6f57600080fd5b505af1158015610c83573d6000803e3d6000fd5b50505050505050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60004260035411610d1a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f46696e6973686564000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638abf60776040518163ffffffff1660e01b815260040160206040518083038186803b158015610d8357600080fd5b505afa158015610d97573d6000803e3d6000fd5b505050506040513d6020811015610dad57600080fd5b5051604080517fb83e160500000000000000000000000000000000000000000000000000000000815233600482018190529151929350909160009173ffffffffffffffffffffffffffffffffffffffff85169163b83e16059160248082019260e092909190829003018186803b158015610e2657600080fd5b505afa158015610e3a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525060e0811015610e5f57600080fd5b50608081015160a09091015160025491955091508110610ee057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4e6f7420656c696769626c650000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff82166000908152600b602052604090205460ff1615610f7557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f416c726561647920766f74656400000000000000000000000000000000000000604482015290519081900360640190fd5b5073ffffffffffffffffffffffffffffffffffffffff166000908152600b6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055509056fea265627a7a723158206de1fd71f2d0c8d3b40fa4f7391a6316064bac5a878a79cbdf3b07125d031ce064736f6c63430005100032a265627a7a723158203377832a899798ee2d4245b4a576915dbc50e04b57c8a641a54cbc672a901d5864736f6c634300051000326080604052600080546001600160a01b03191633179055610b0f806100256000396000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c806341c0e1b5116100765780639aa5b6c41161005b5780639aa5b6c414610203578063ac31d62214610249578063da0321cd14610284576100a3565b806341c0e1b5146101c057806345507a9e146101c8576100a3565b806313756c8f146100a857806313af4035146100e557806329092d0e14610118578063323ab4091461014b575b600080fd5b6100e3600480360360408110156100be57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160200135166102dc565b005b6100e3600480360360208110156100fb57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166103dc565b6100e36004803603602081101561012e57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166104a9565b61017e6004803603602081101561016157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166106e1565b6040805173ffffffffffffffffffffffffffffffffffffffff958616815293851660208501529190931682820152606082019290925290519081900360800190f35b6100e3610727565b6100e3600480360360408110156101de57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160200135166107b0565b6102206004803603602081101561021957600080fd5b50356108b0565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100e36004803603604081101561025f57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160200135166108e4565b61028c610a26565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156102c85781810151838201526020016102b0565b505050509050019250505060405180910390f35b60005473ffffffffffffffffffffffffffffffffffffffff16331461036257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8083166000908152600160205260409020805490911661039357fe5b60020180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905550565b60005473ffffffffffffffffffffffffffffffffffffffff16331461046257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60005473ffffffffffffffffffffffffffffffffffffffff16331461052f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8082166000908152600160205260409020805490911661056057fe5b60028054600091907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810190811061059457fe5b600091825260208083209091015460038086015473ffffffffffffffffffffffffffffffffffffffff90921680855260019093526040909320909201829055600280549193508392909181106105e657fe5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600280548061063957fe5b6000828152602080822083017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff0000000000000000000000000000000000000000908116909155930190935573ffffffffffffffffffffffffffffffffffffffff959095168552600191829052604085208054821681559182018054821690556002820180549091169055600301929092555050565b6001602081905260009182526040909120805491810154600282015460039092015473ffffffffffffffffffffffffffffffffffffffff93841693918216929091169084565b60005473ffffffffffffffffffffffffffffffffffffffff1633146107ad57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b33ff5b60005473ffffffffffffffffffffffffffffffffffffffff16331461083657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8083166000908152600160205260409020805490911661086757fe5b60010180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905550565b600281815481106108bd57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b60005473ffffffffffffffffffffffffffffffffffffffff16331461096a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600a60248201527f4e6f74206f776e65722100000000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff808316600090815260016020526040902080549091161561099c57fe5b805473ffffffffffffffffffffffffffffffffffffffff9283167fffffffffffffffffffffffff00000000000000000000000000000000000000009182161782556002805460039093018390556001830181556000527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace9091018054939092169216919091179055565b60025460408051828152602080840282010190915260609190818015610a56578160200160208202803883390190505b50915060005b81811015610ad55760028181548110610a7157fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838281518110610aa857fe5b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152600101610a5c565b50509056fea265627a7a723158207283bc956f65d8de291ba5342c22df4bcd6915947529a281f277b04ca65b3aef64736f6c63430005100032` 35 36 // DeployBlacklistRegistryV1 deploys a new Ethereum contract, binding an instance of BlacklistRegistryV1 to it. 37 func DeployBlacklistRegistryV1(auth *bind.TransactOpts, backend bind.ContractBackend, _proxy common.Address, _mnregistry_proxy common.Address, _migration common.Address, _compensation_fund common.Address, _ebi_signer common.Address) (common.Address, *types.Transaction, *BlacklistRegistryV1, error) { 38 parsed, err := abi.JSON(strings.NewReader(BlacklistRegistryV1ABI)) 39 if err != nil { 40 return common.Address{}, nil, nil, err 41 } 42 address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(BlacklistRegistryV1Bin), backend, _proxy, _mnregistry_proxy, _migration, _compensation_fund, _ebi_signer) 43 if err != nil { 44 return common.Address{}, nil, nil, err 45 } 46 return address, tx, &BlacklistRegistryV1{BlacklistRegistryV1Caller: BlacklistRegistryV1Caller{contract: contract}, BlacklistRegistryV1Transactor: BlacklistRegistryV1Transactor{contract: contract}, BlacklistRegistryV1Filterer: BlacklistRegistryV1Filterer{contract: contract}}, nil 47 } 48 49 // BlacklistRegistryV1Bin is the compiled bytecode of contract after deployment. 50 const BlacklistRegistryV1RuntimeBin = `6080604052600436106101695760003560e01c806379d7bc07116100cb578063d1e8ebda1161007f578063f444115211610059578063f4441152146105aa578063fe575a87146105bf578063fe7334e8146105ff57610169565b8063d1e8ebda1461054d578063ec55688914610580578063ee33f9d21461059557610169565b806394c210fc116100b057806394c210fc146104e3578063bc393afb146104f8578063ce5494bb1461050d57610169565b806379d7bc071461048e5780638ad4012f146104ce57610169565b80632d059305116101225780633341b445116101075780633341b4451461035f5780633502a130146103d75780635603125c1461042957610169565b80632d059305146102f65780633303bbb11461030b57610169565b806306ec16f81161015357806306ec16f81461026e5780631705a3bd146102ae578063244fcea5146102c357610169565b8062f55d9d146101d05780630126795114610212575b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f4e6f7420737570706f7274656400000000000000000000000000000000000000604482015290519081900360640190fd5b3480156101dc57600080fd5b50610210600480360360208110156101f357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610614565b005b6102456004803603602081101561022857600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166106bc565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561027a57600080fd5b506102106004803603602081101561029157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610f39565b3480156102ba57600080fd5b50610245611a20565b610245600480360360208110156102d957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611a3c565b34801561030257600080fd5b50610245612083565b34801561031757600080fd5b5061034b6004803603602081101561032e57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661209f565b604080519115158252519081900360200190f35b34801561036b57600080fd5b5061039f6004803603602081101561038257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661234c565b6040805173ffffffffffffffffffffffffffffffffffffffff9485168152928416602084015292168183015290519081900360600190f35b3480156103e357600080fd5b50610210600480360360408110156103fa57600080fd5b50803590602001357fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016612409565b34801561043557600080fd5b5061043e6125bc565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561047a578181015183820152602001610462565b505050509050019250505060405180910390f35b34801561049a57600080fd5b50610210600480360360208110156104b157600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166127b2565b3480156104da57600080fd5b506102456128b4565b3480156104ef57600080fd5b506102456128d0565b34801561050457600080fd5b5061043e6128ec565b34801561051957600080fd5b506102106004803603602081101561053057600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16612a44565b6102456004803603602081101561056357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16612ad2565b34801561058c57600080fd5b50610245612fae565b3480156105a157600080fd5b5061043e612fca565b3480156105b657600080fd5b506102456131bc565b3480156105cb57600080fd5b5061034b600480360360208110156105e257600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166131d8565b34801561060b57600080fd5b506102456133df565b60005473ffffffffffffffffffffffffffffffffffffffff16331461069a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e6f742070726f78790000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6106a3816133fb565b8073ffffffffffffffffffffffffffffffffffffffff16ff5b600060015460001461072f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055610745683635c9adc5dea0000061350c565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301529151919092169160009182918291859163323ab409916024808301926080929190829003018186803b1580156107c157600080fd5b505afa1580156107d5573d6000803e3d6000fd5b505050506040513d60808110156107eb57600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff831615610e3e5773ffffffffffffffffffffffffffffffffffffffff821615610b6c578173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561087f57600080fd5b505afa158015610893573d6000803e3d6000fd5b505050506040513d60208110156108a957600080fd5b505115610a89578273ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156108f857600080fd5b505af115801561090c573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561095857600080fd5b505af115801561096c573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff8116156109ed578073ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156109d457600080fd5b505af11580156109e8573d6000803e3d6000fd5b505050505b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610a6c57600080fd5b505af1158015610a80573d6000803e3d6000fd5b50505050610b67565b8173ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015610acf57600080fd5b505afa158015610ae3573d6000803e3d6000fd5b505050506040513d6020811015610af957600080fd5b505115610b6757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f416c726561647920616374697665202831290000000000000000000000000000604482015290519081900360640190fd5b610e3e565b8273ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb257600080fd5b505afa158015610bc6573d6000803e3d6000fd5b505050506040513d6020811015610bdc57600080fd5b50518015610c5957508273ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015610c2b57600080fd5b505afa158015610c3f573d6000803e3d6000fd5b505050506040513d6020811015610c5557600080fd5b5051155b15610dd7578273ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610ca657600080fd5b505af1158015610cba573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff811615610d3b578073ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610d2257600080fd5b505af1158015610d36573d6000803e3d6000fd5b505050505b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e876040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015610dba57600080fd5b505af1158015610dce573d6000803e3d6000fd5b50505050610e3e565b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f416c726561647920616374697665202832290000000000000000000000000000604482015290519081900360640190fd5b6000610e486135bb565b604080517fac31d62200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152808416602483015291519293509087169163ac31d6229160448082019260009290919082900301818387803b158015610ec457600080fd5b505af1158015610ed8573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff85811682529151918b1693507fea0d3b1afc7aa1754f902b277d6f473e2f4a4526e94797814c2042405d692557925081900360200190a260006001559695505050505050565b60015415610fa857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151919092169160009182918291859163323ab409916024808301926080929190829003018186803b15801561102857600080fd5b505afa15801561103c573d6000803e3d6000fd5b505050506040513d608081101561105257600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff83166110ea57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4e6f7468696e6720746f20636f6c6c6563740000000000000000000000000000604482015290519081900360640190fd5b8273ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b15801561113057600080fd5b505afa158015611144573d6000803e3d6000fd5b505050506040513d602081101561115a57600080fd5b50516111c757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f456e666f72636520766f74696e6720696e2070726f6772657373000000000000604482015290519081900360640190fd5b8273ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561120d57600080fd5b505afa158015611221573d6000803e3d6000fd5b505050506040513d602081101561123757600080fd5b505161133d578273ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561128557600080fd5b505af1158015611299573d6000803e3d6000fd5b505050508373ffffffffffffffffffffffffffffffffffffffff166329092d0e866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b15801561131c57600080fd5b505af1158015611330573d6000803e3d6000fd5b5050505050505050611a18565b73ffffffffffffffffffffffffffffffffffffffff8116156115e9578073ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b15801561139f57600080fd5b505afa1580156113b3573d6000803e3d6000fd5b505050506040513d60208110156113c957600080fd5b505161143657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f447261696e20766f74696e6720696e2070726f67726573730000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561147c57600080fd5b505afa158015611490573d6000803e3d6000fd5b505050506040513d60208110156114a657600080fd5b50511561151457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4163636f756e74206d75737420626520647261696e6564000000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561155c57600080fd5b505af1158015611570573d6000803e3d6000fd5b5050604080517f13756c8f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152600060248301819052925190891694506313756c8f93506044808301939282900301818387803b15801561131c57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8216156119b1578173ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b15801561164b57600080fd5b505afa15801561165f573d6000803e3d6000fd5b505050506040513d602081101561167557600080fd5b50516116e257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5265766f6b6520766f74696e6720696e2070726f677265737300000000000000604482015290519081900360640190fd5b8173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561172857600080fd5b505afa15801561173c573d6000803e3d6000fd5b505050506040513d602081101561175257600080fd5b5051156118d3578273ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561180157600080fd5b505af1158015611815573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff81161561183757fe5b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156118b657600080fd5b505af11580156118ca573d6000803e3d6000fd5b505050506119a8565b8173ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561191b57600080fd5b505af115801561192f573d6000803e3d6000fd5b5050604080517f45507a9e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8981166004830152600060248301819052925190891694506345507a9e93506044808301939282900301818387803b15801561131c57600080fd5b50505050611a18565b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f4e6f2070726f706f73616c7320726561647920746f20636f6c6c656374000000604482015290519081900360640190fd5b506000600155565b60055473ffffffffffffffffffffffffffffffffffffffff1681565b6000600154600014611aaf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055611ac568056bc75e2d6310000061350c565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8581166004830152915191909216916000918291849163323ab40991602480820192608092909190829003018186803b158015611b4057600080fd5b505afa158015611b54573d6000803e3d6000fd5b505050506040513d6080811015611b6a57600080fd5b508051602090910151909250905073ffffffffffffffffffffffffffffffffffffffff8216611bfa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4e6f206e65656420283129000000000000000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811615611dcf578073ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015611c5c57600080fd5b505afa158015611c70573d6000803e3d6000fd5b505050506040513d6020811015611c8657600080fd5b5051611cf357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f416c726561647920616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015611d3957600080fd5b505afa158015611d4d573d6000803e3d6000fd5b505050506040513d6020811015611d6357600080fd5b5051611dca578073ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b158015611db157600080fd5b505af1158015611dc5573d6000803e3d6000fd5b505050505b611f89565b8173ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015611e1557600080fd5b505afa158015611e29573d6000803e3d6000fd5b505050506040513d6020811015611e3f57600080fd5b5051611eac57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e6f74206170706c696361626c65000000000000000000000000000000000000604482015290519081900360640190fd5b8173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015611ef257600080fd5b505afa158015611f06573d6000803e3d6000fd5b505050506040513d6020811015611f1c57600080fd5b5051611f8957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f4e6f206e65656420283229000000000000000000000000000000000000000000604482015290519081900360640190fd5b6000611f936135bb565b604080517f45507a9e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff898116600483015280841660248301529151929350908616916345507a9e9160448082019260009290919082900301818387803b15801561200f57600080fd5b505af1158015612023573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff85811682529151918a1693507f2e46fe8e502a44b05a85d4346d3e208fc845c81a81c9b7e4db08a33dca59faff925081900360200190a2600060015595945050505050565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151600093849384938493919092169163323ab409916024808301926080929190829003018186803b15801561211b57600080fd5b505afa15801561212f573d6000803e3d6000fd5b505050506040513d608081101561214557600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff83166121825760009350505050612347565b8273ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b1580156121c857600080fd5b505afa1580156121dc573d6000803e3d6000fd5b505050506040513d60208110156121f257600080fd5b50516122045760009350505050612347565b73ffffffffffffffffffffffffffffffffffffffff82161580159061229757508173ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561226a57600080fd5b505afa15801561227e573d6000803e3d6000fd5b505050506040513d602081101561229457600080fd5b50515b156122a85760009350505050612347565b73ffffffffffffffffffffffffffffffffffffffff81166122cf5760009350505050612347565b8073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b15801561231557600080fd5b505afa158015612329573d6000803e3d6000fd5b505050506040513d602081101561233f57600080fd5b505193505050505b919050565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015291516000938493849391169163323ab40991602480820192608092909190829003018186803b1580156123c557600080fd5b505afa1580156123d9573d6000803e3d6000fd5b505050506040513d60808110156123ef57600080fd5b508051602082015160409092015190969195509350915050565b6001541561247857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055612489606082901c61209f565b6124f457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f4e6f7420647261696e61626c6500000000000000000000000000000000000000604482015290519081900360640190fd5b600554604080517fa723b35a000000000000000000000000000000000000000000000000000000008152600481018590527fffffffffffffffffffffffffffffffffffffffff00000000000000000000000084166024820152905173ffffffffffffffffffffffffffffffffffffffff9092169163a723b35a9160448082019260009290919082900301818387803b15801561258f57600080fd5b505af11580156125a3573d6000803e3d6000fd5b505050506125b38160601c613814565b50506000600155565b600354604080517fda0321cd000000000000000000000000000000000000000000000000000000008152905160609273ffffffffffffffffffffffffffffffffffffffff169163da0321cd916004808301926000929190829003018186803b15801561262757600080fd5b505afa15801561263b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052602081101561268257600080fd5b81019080805160405193929190846401000000008211156126a257600080fd5b9083019060208201858111156126b757600080fd5b82518660208202830111640100000000821117156126d457600080fd5b82525081516020918201928201910280838360005b838110156127015781810151838201526020016126e9565b5050505090500160405250505090506000815190505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810190156127ae5761275c82828151811061274f57fe5b60200260200101516131d8565b6127a957600082828151811061276e57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b612717565b5090565b6001541561282157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b6001805560005473ffffffffffffffffffffffffffffffffffffffff1632146128ab57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f4e6f7420636f6e73656e73757300000000000000000000000000000000000000604482015290519081900360640190fd5b611a1881613814565b60025473ffffffffffffffffffffffffffffffffffffffff1681565b60075473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517fda0321cd000000000000000000000000000000000000000000000000000000008152905160609273ffffffffffffffffffffffffffffffffffffffff169163da0321cd916004808301926000929190829003018186803b15801561295757600080fd5b505afa15801561296b573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405260208110156129b257600080fd5b81019080805160405193929190846401000000008211156129d257600080fd5b9083019060208201858111156129e757600080fd5b8251866020820283011164010000000082111715612a0457600080fd5b82525081516020918201928201910280838360005b83811015612a31578181015183820152602001612a19565b5050505090500160405250505090505b90565b60005473ffffffffffffffffffffffffffffffffffffffff163314612aca57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f4e6f742070726f78790000000000000000000000000000000000000000000000604482015290519081900360640190fd5b612acf815b50565b6000600154600014612b4557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f5265656e74727900000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b60018055612b5b68056bc75e2d6310000061350c565b612b64826131d8565b612bcf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f4e6f7420626c61636b6c69737465640000000000000000000000000000000000604482015290519081900360640190fd5b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015291519190921691600091839163323ab409916024808301926080929190829003018186803b158015612c4757600080fd5b505afa158015612c5b573d6000803e3d6000fd5b505050506040513d6080811015612c7157600080fd5b5060400151905073ffffffffffffffffffffffffffffffffffffffff811615612eb5578073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b158015612cda57600080fd5b505afa158015612cee573d6000803e3d6000fd5b505050506040513d6020811015612d0457600080fd5b505115612d7257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f4e6f74206e656564000000000000000000000000000000000000000000000000604482015290519081900360640190fd5b8073ffffffffffffffffffffffffffffffffffffffff16637b3529626040518163ffffffff1660e01b815260040160206040518083038186803b158015612db857600080fd5b505afa158015612dcc573d6000803e3d6000fd5b505050506040513d6020811015612de257600080fd5b505115612e4e578073ffffffffffffffffffffffffffffffffffffffff1663e52253816040518163ffffffff1660e01b8152600401600060405180830381600087803b158015612e3157600080fd5b505af1158015612e45573d6000803e3d6000fd5b50505050612eb5565b604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f566f74696e6720696e2070726f67726573730000000000000000000000000000604482015290519081900360640190fd5b6000612ebf6135bb565b604080517f13756c8f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff888116600483015280841660248301529151929350908516916313756c8f9160448082019260009290919082900301818387803b158015612f3b57600080fd5b505af1158015612f4f573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8581168252915191891693507fb0163b33033bcea41a78d2d4a9c596c29b0667259543d6d56b8cac8cd92d2cea925081900360200190a26000600155949350505050565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517fda0321cd000000000000000000000000000000000000000000000000000000008152905160609273ffffffffffffffffffffffffffffffffffffffff169163da0321cd916004808301926000929190829003018186803b15801561303557600080fd5b505afa158015613049573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052602081101561309057600080fd5b81019080805160405193929190846401000000008211156130b057600080fd5b9083019060208201858111156130c557600080fd5b82518660208202830111640100000000821117156130e257600080fd5b82525081516020918201928201910280838360005b8381101561310f5781810151838201526020016130f7565b5050505090500160405250505090506000815190505b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810190156127ae5761316a82828151811061315d57fe5b602002602001015161209f565b6131b757600082828151811061317c57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b613125565b60065473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151600093929092169183918291849163323ab409916024808301926080929190829003018186803b15801561325457600080fd5b505afa158015613268573d6000803e3d6000fd5b505050506040513d608081101561327e57600080fd5b508051602090910151909250905073ffffffffffffffffffffffffffffffffffffffff81161580159061331f57508073ffffffffffffffffffffffffffffffffffffffff16635051a5ec6040518163ffffffff1660e01b815260040160206040518083038186803b1580156132f257600080fd5b505afa158015613306573d6000803e3d6000fd5b505050506040513d602081101561331c57600080fd5b50515b156133305760009350505050612347565b73ffffffffffffffffffffffffffffffffffffffff8216158015906133c357508173ffffffffffffffffffffffffffffffffffffffff16632173a8f96040518163ffffffff1660e01b815260040160206040518083038186803b15801561339657600080fd5b505afa1580156133aa573d6000803e3d6000fd5b505050506040513d60208110156133c057600080fd5b50515b156133d45760019350505050612347565b506000949350505050565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b600354604080517f13af403500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152915191909216916313af403591602480830192600092919082900301818387803b15801561346f57600080fd5b505af1158015613483573d6000803e3d6000fd5b50505050600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166341c0e1b56040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156134f157600080fd5b505af1158015613505573d6000803e3d6000fd5b5050505050565b60075473ffffffffffffffffffffffffffffffffffffffff1661352d613ae4565b73ffffffffffffffffffffffffffffffffffffffff16141561354d575060005b803414612acf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f496e76616c696420666565000000000000000000000000000000000000000000604482015290519081900360640190fd5b600254600454600091829160609173ffffffffffffffffffffffffffffffffffffffff908116917f3e68680a00000000000000000000000000000000000000000000000000000000911661360d613ae4565b6040805173ffffffffffffffffffffffffffffffffffffffff93841660248201529190921660448083019190915282518083039091018152606490910182526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090941693909317835290518151919290918291908083835b602083106136e657805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe090920191602091820191016136a9565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855af49150503d8060008114613746576040519150601f19603f3d011682016040523d82523d6000602084013e61374b565b606091505b50915091508181906137f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156137ba5781810151838201526020016137a2565b50505050905090810190601f1680156137e75780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5080806020019051602081101561380b57600080fd5b50519250505090565b600354604080517f323ab40900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301529151919092169160009182918291859163323ab409916024808301926080929190829003018186803b15801561389057600080fd5b505afa1580156138a4573d6000803e3d6000fd5b505050506040513d60808110156138ba57600080fd5b5080516020820151604090920151909450909250905073ffffffffffffffffffffffffffffffffffffffff831615613505578273ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561393457600080fd5b505af1158015613948573d6000803e3d6000fd5b5050505073ffffffffffffffffffffffffffffffffffffffff8216156139c9578173ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156139b057600080fd5b505af11580156139c4573d6000803e3d6000fd5b505050505b73ffffffffffffffffffffffffffffffffffffffff811615613a46578073ffffffffffffffffffffffffffffffffffffffff166383197ef06040518163ffffffff1660e01b8152600401600060405180830381600087803b158015613a2d57600080fd5b505af1158015613a41573d6000803e3d6000fd5b505050505b8373ffffffffffffffffffffffffffffffffffffffff166329092d0e866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b158015613ac557600080fd5b505af1158015613ad9573d6000803e3d6000fd5b505050505050505050565b6000805473ffffffffffffffffffffffffffffffffffffffff16331415613b0c575032612a41565b5033612a4156fea265627a7a72315820342547331d8cc02c483a22f276d79979d91310ecd1c073c9da01b8fec4beb7d864736f6c63430005100032` 51 52 // BlacklistRegistryV1 is an auto generated Go binding around an Ethereum contract. 53 type BlacklistRegistryV1 struct { 54 BlacklistRegistryV1Caller // Read-only binding to the contract 55 BlacklistRegistryV1Transactor // Write-only binding to the contract 56 BlacklistRegistryV1Filterer // Log filterer for contract events 57 } 58 59 // BlacklistRegistryV1Caller is an auto generated read-only Go binding around an Ethereum contract. 60 type BlacklistRegistryV1Caller struct { 61 contract *bind.BoundContract // Generic contract wrapper for the low level calls 62 } 63 64 // BlacklistRegistryV1Transactor is an auto generated write-only Go binding around an Ethereum contract. 65 type BlacklistRegistryV1Transactor struct { 66 contract *bind.BoundContract // Generic contract wrapper for the low level calls 67 } 68 69 // BlacklistRegistryV1Filterer is an auto generated log filtering Go binding around an Ethereum contract events. 70 type BlacklistRegistryV1Filterer struct { 71 contract *bind.BoundContract // Generic contract wrapper for the low level calls 72 } 73 74 // BlacklistRegistryV1Session is an auto generated Go binding around an Ethereum contract, 75 // with pre-set call and transact options. 76 type BlacklistRegistryV1Session struct { 77 Contract *BlacklistRegistryV1 // Generic contract binding to set the session for 78 CallOpts bind.CallOpts // Call options to use throughout this session 79 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 80 } 81 82 // BlacklistRegistryV1CallerSession is an auto generated read-only Go binding around an Ethereum contract, 83 // with pre-set call options. 84 type BlacklistRegistryV1CallerSession struct { 85 Contract *BlacklistRegistryV1Caller // Generic contract caller binding to set the session for 86 CallOpts bind.CallOpts // Call options to use throughout this session 87 } 88 89 // BlacklistRegistryV1TransactorSession is an auto generated write-only Go binding around an Ethereum contract, 90 // with pre-set transact options. 91 type BlacklistRegistryV1TransactorSession struct { 92 Contract *BlacklistRegistryV1Transactor // Generic contract transactor binding to set the session for 93 TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session 94 } 95 96 // BlacklistRegistryV1Raw is an auto generated low-level Go binding around an Ethereum contract. 97 type BlacklistRegistryV1Raw struct { 98 Contract *BlacklistRegistryV1 // Generic contract binding to access the raw methods on 99 } 100 101 // BlacklistRegistryV1CallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract. 102 type BlacklistRegistryV1CallerRaw struct { 103 Contract *BlacklistRegistryV1Caller // Generic read-only contract binding to access the raw methods on 104 } 105 106 // BlacklistRegistryV1TransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract. 107 type BlacklistRegistryV1TransactorRaw struct { 108 Contract *BlacklistRegistryV1Transactor // Generic write-only contract binding to access the raw methods on 109 } 110 111 // NewBlacklistRegistryV1 creates a new instance of BlacklistRegistryV1, bound to a specific deployed contract. 112 func NewBlacklistRegistryV1(address common.Address, backend bind.ContractBackend) (*BlacklistRegistryV1, error) { 113 contract, err := bindBlacklistRegistryV1(address, backend, backend, backend) 114 if err != nil { 115 return nil, err 116 } 117 return &BlacklistRegistryV1{BlacklistRegistryV1Caller: BlacklistRegistryV1Caller{contract: contract}, BlacklistRegistryV1Transactor: BlacklistRegistryV1Transactor{contract: contract}, BlacklistRegistryV1Filterer: BlacklistRegistryV1Filterer{contract: contract}}, nil 118 } 119 120 // NewBlacklistRegistryV1Caller creates a new read-only instance of BlacklistRegistryV1, bound to a specific deployed contract. 121 func NewBlacklistRegistryV1Caller(address common.Address, caller bind.ContractCaller) (*BlacklistRegistryV1Caller, error) { 122 contract, err := bindBlacklistRegistryV1(address, caller, nil, nil) 123 if err != nil { 124 return nil, err 125 } 126 return &BlacklistRegistryV1Caller{contract: contract}, nil 127 } 128 129 // NewBlacklistRegistryV1Transactor creates a new write-only instance of BlacklistRegistryV1, bound to a specific deployed contract. 130 func NewBlacklistRegistryV1Transactor(address common.Address, transactor bind.ContractTransactor) (*BlacklistRegistryV1Transactor, error) { 131 contract, err := bindBlacklistRegistryV1(address, nil, transactor, nil) 132 if err != nil { 133 return nil, err 134 } 135 return &BlacklistRegistryV1Transactor{contract: contract}, nil 136 } 137 138 // NewBlacklistRegistryV1Filterer creates a new log filterer instance of BlacklistRegistryV1, bound to a specific deployed contract. 139 func NewBlacklistRegistryV1Filterer(address common.Address, filterer bind.ContractFilterer) (*BlacklistRegistryV1Filterer, error) { 140 contract, err := bindBlacklistRegistryV1(address, nil, nil, filterer) 141 if err != nil { 142 return nil, err 143 } 144 return &BlacklistRegistryV1Filterer{contract: contract}, nil 145 } 146 147 // bindBlacklistRegistryV1 binds a generic wrapper to an already deployed contract. 148 func bindBlacklistRegistryV1(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) { 149 parsed, err := abi.JSON(strings.NewReader(BlacklistRegistryV1ABI)) 150 if err != nil { 151 return nil, err 152 } 153 return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil 154 } 155 156 // Call invokes the (constant) contract method with params as input values and 157 // sets the output to result. The result type might be a single field for simple 158 // returns, a slice of interfaces for anonymous returns and a struct for named 159 // returns. 160 func (_BlacklistRegistryV1 *BlacklistRegistryV1Raw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 161 return _BlacklistRegistryV1.Contract.BlacklistRegistryV1Caller.contract.Call(opts, result, method, params...) 162 } 163 164 // Transfer initiates a plain transaction to move funds to the contract, calling 165 // its default method if one is available. 166 func (_BlacklistRegistryV1 *BlacklistRegistryV1Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 167 return _BlacklistRegistryV1.Contract.BlacklistRegistryV1Transactor.contract.Transfer(opts) 168 } 169 170 // Transact invokes the (paid) contract method with params as input values. 171 func (_BlacklistRegistryV1 *BlacklistRegistryV1Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 172 return _BlacklistRegistryV1.Contract.BlacklistRegistryV1Transactor.contract.Transact(opts, method, params...) 173 } 174 175 // Call invokes the (constant) contract method with params as input values and 176 // sets the output to result. The result type might be a single field for simple 177 // returns, a slice of interfaces for anonymous returns and a struct for named 178 // returns. 179 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error { 180 return _BlacklistRegistryV1.Contract.contract.Call(opts, result, method, params...) 181 } 182 183 // Transfer initiates a plain transaction to move funds to the contract, calling 184 // its default method if one is available. 185 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) { 186 return _BlacklistRegistryV1.Contract.contract.Transfer(opts) 187 } 188 189 // Transact invokes the (paid) contract method with params as input values. 190 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) { 191 return _BlacklistRegistryV1.Contract.contract.Transact(opts, method, params...) 192 } 193 194 // EBISigner is a free data retrieval call binding the contract method 0x94c210fc. 195 // 196 // Solidity: function EBI_signer() constant returns(address) 197 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) EBISigner(opts *bind.CallOpts) (common.Address, error) { 198 var ( 199 ret0 = new(common.Address) 200 ) 201 out := ret0 202 err := _BlacklistRegistryV1.contract.Call(opts, out, "EBI_signer") 203 return *ret0, err 204 } 205 206 // EBISigner is a free data retrieval call binding the contract method 0x94c210fc. 207 // 208 // Solidity: function EBI_signer() constant returns(address) 209 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) EBISigner() (common.Address, error) { 210 return _BlacklistRegistryV1.Contract.EBISigner(&_BlacklistRegistryV1.CallOpts) 211 } 212 213 // EBISigner is a free data retrieval call binding the contract method 0x94c210fc. 214 // 215 // Solidity: function EBI_signer() constant returns(address) 216 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) EBISigner() (common.Address, error) { 217 return _BlacklistRegistryV1.Contract.EBISigner(&_BlacklistRegistryV1.CallOpts) 218 } 219 220 // CompensationFund is a free data retrieval call binding the contract method 0xf4441152. 221 // 222 // Solidity: function compensation_fund() constant returns(address) 223 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) CompensationFund(opts *bind.CallOpts) (common.Address, error) { 224 var ( 225 ret0 = new(common.Address) 226 ) 227 out := ret0 228 err := _BlacklistRegistryV1.contract.Call(opts, out, "compensation_fund") 229 return *ret0, err 230 } 231 232 // CompensationFund is a free data retrieval call binding the contract method 0xf4441152. 233 // 234 // Solidity: function compensation_fund() constant returns(address) 235 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) CompensationFund() (common.Address, error) { 236 return _BlacklistRegistryV1.Contract.CompensationFund(&_BlacklistRegistryV1.CallOpts) 237 } 238 239 // CompensationFund is a free data retrieval call binding the contract method 0xf4441152. 240 // 241 // Solidity: function compensation_fund() constant returns(address) 242 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) CompensationFund() (common.Address, error) { 243 return _BlacklistRegistryV1.Contract.CompensationFund(&_BlacklistRegistryV1.CallOpts) 244 } 245 246 // EnumerateAll is a free data retrieval call binding the contract method 0xbc393afb. 247 // 248 // Solidity: function enumerateAll() constant returns(address[] addresses) 249 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) EnumerateAll(opts *bind.CallOpts) ([]common.Address, error) { 250 var ( 251 ret0 = new([]common.Address) 252 ) 253 out := ret0 254 err := _BlacklistRegistryV1.contract.Call(opts, out, "enumerateAll") 255 return *ret0, err 256 } 257 258 // EnumerateAll is a free data retrieval call binding the contract method 0xbc393afb. 259 // 260 // Solidity: function enumerateAll() constant returns(address[] addresses) 261 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) EnumerateAll() ([]common.Address, error) { 262 return _BlacklistRegistryV1.Contract.EnumerateAll(&_BlacklistRegistryV1.CallOpts) 263 } 264 265 // EnumerateAll is a free data retrieval call binding the contract method 0xbc393afb. 266 // 267 // Solidity: function enumerateAll() constant returns(address[] addresses) 268 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) EnumerateAll() ([]common.Address, error) { 269 return _BlacklistRegistryV1.Contract.EnumerateAll(&_BlacklistRegistryV1.CallOpts) 270 } 271 272 // EnumerateBlocked is a free data retrieval call binding the contract method 0x5603125c. 273 // 274 // Solidity: function enumerateBlocked() constant returns(address[] addresses) 275 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) EnumerateBlocked(opts *bind.CallOpts) ([]common.Address, error) { 276 var ( 277 ret0 = new([]common.Address) 278 ) 279 out := ret0 280 err := _BlacklistRegistryV1.contract.Call(opts, out, "enumerateBlocked") 281 return *ret0, err 282 } 283 284 // EnumerateBlocked is a free data retrieval call binding the contract method 0x5603125c. 285 // 286 // Solidity: function enumerateBlocked() constant returns(address[] addresses) 287 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) EnumerateBlocked() ([]common.Address, error) { 288 return _BlacklistRegistryV1.Contract.EnumerateBlocked(&_BlacklistRegistryV1.CallOpts) 289 } 290 291 // EnumerateBlocked is a free data retrieval call binding the contract method 0x5603125c. 292 // 293 // Solidity: function enumerateBlocked() constant returns(address[] addresses) 294 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) EnumerateBlocked() ([]common.Address, error) { 295 return _BlacklistRegistryV1.Contract.EnumerateBlocked(&_BlacklistRegistryV1.CallOpts) 296 } 297 298 // EnumerateDrainable is a free data retrieval call binding the contract method 0xee33f9d2. 299 // 300 // Solidity: function enumerateDrainable() constant returns(address[] addresses) 301 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) EnumerateDrainable(opts *bind.CallOpts) ([]common.Address, error) { 302 var ( 303 ret0 = new([]common.Address) 304 ) 305 out := ret0 306 err := _BlacklistRegistryV1.contract.Call(opts, out, "enumerateDrainable") 307 return *ret0, err 308 } 309 310 // EnumerateDrainable is a free data retrieval call binding the contract method 0xee33f9d2. 311 // 312 // Solidity: function enumerateDrainable() constant returns(address[] addresses) 313 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) EnumerateDrainable() ([]common.Address, error) { 314 return _BlacklistRegistryV1.Contract.EnumerateDrainable(&_BlacklistRegistryV1.CallOpts) 315 } 316 317 // EnumerateDrainable is a free data retrieval call binding the contract method 0xee33f9d2. 318 // 319 // Solidity: function enumerateDrainable() constant returns(address[] addresses) 320 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) EnumerateDrainable() ([]common.Address, error) { 321 return _BlacklistRegistryV1.Contract.EnumerateDrainable(&_BlacklistRegistryV1.CallOpts) 322 } 323 324 // IsBlacklisted is a free data retrieval call binding the contract method 0xfe575a87. 325 // 326 // Solidity: function isBlacklisted(address addr) constant returns(bool) 327 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) IsBlacklisted(opts *bind.CallOpts, addr common.Address) (bool, error) { 328 var ( 329 ret0 = new(bool) 330 ) 331 out := ret0 332 err := _BlacklistRegistryV1.contract.Call(opts, out, "isBlacklisted", addr) 333 return *ret0, err 334 } 335 336 // IsBlacklisted is a free data retrieval call binding the contract method 0xfe575a87. 337 // 338 // Solidity: function isBlacklisted(address addr) constant returns(bool) 339 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) IsBlacklisted(addr common.Address) (bool, error) { 340 return _BlacklistRegistryV1.Contract.IsBlacklisted(&_BlacklistRegistryV1.CallOpts, addr) 341 } 342 343 // IsBlacklisted is a free data retrieval call binding the contract method 0xfe575a87. 344 // 345 // Solidity: function isBlacklisted(address addr) constant returns(bool) 346 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) IsBlacklisted(addr common.Address) (bool, error) { 347 return _BlacklistRegistryV1.Contract.IsBlacklisted(&_BlacklistRegistryV1.CallOpts, addr) 348 } 349 350 // IsDrainable is a free data retrieval call binding the contract method 0x3303bbb1. 351 // 352 // Solidity: function isDrainable(address addr) constant returns(bool) 353 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) IsDrainable(opts *bind.CallOpts, addr common.Address) (bool, error) { 354 var ( 355 ret0 = new(bool) 356 ) 357 out := ret0 358 err := _BlacklistRegistryV1.contract.Call(opts, out, "isDrainable", addr) 359 return *ret0, err 360 } 361 362 // IsDrainable is a free data retrieval call binding the contract method 0x3303bbb1. 363 // 364 // Solidity: function isDrainable(address addr) constant returns(bool) 365 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) IsDrainable(addr common.Address) (bool, error) { 366 return _BlacklistRegistryV1.Contract.IsDrainable(&_BlacklistRegistryV1.CallOpts, addr) 367 } 368 369 // IsDrainable is a free data retrieval call binding the contract method 0x3303bbb1. 370 // 371 // Solidity: function isDrainable(address addr) constant returns(bool) 372 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) IsDrainable(addr common.Address) (bool, error) { 373 return _BlacklistRegistryV1.Contract.IsDrainable(&_BlacklistRegistryV1.CallOpts, addr) 374 } 375 376 // Migration is a free data retrieval call binding the contract method 0x1705a3bd. 377 // 378 // Solidity: function migration() constant returns(address) 379 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) Migration(opts *bind.CallOpts) (common.Address, error) { 380 var ( 381 ret0 = new(common.Address) 382 ) 383 out := ret0 384 err := _BlacklistRegistryV1.contract.Call(opts, out, "migration") 385 return *ret0, err 386 } 387 388 // Migration is a free data retrieval call binding the contract method 0x1705a3bd. 389 // 390 // Solidity: function migration() constant returns(address) 391 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Migration() (common.Address, error) { 392 return _BlacklistRegistryV1.Contract.Migration(&_BlacklistRegistryV1.CallOpts) 393 } 394 395 // Migration is a free data retrieval call binding the contract method 0x1705a3bd. 396 // 397 // Solidity: function migration() constant returns(address) 398 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) Migration() (common.Address, error) { 399 return _BlacklistRegistryV1.Contract.Migration(&_BlacklistRegistryV1.CallOpts) 400 } 401 402 // MnregistryProxy is a free data retrieval call binding the contract method 0xfe7334e8. 403 // 404 // Solidity: function mnregistry_proxy() constant returns(address) 405 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) MnregistryProxy(opts *bind.CallOpts) (common.Address, error) { 406 var ( 407 ret0 = new(common.Address) 408 ) 409 out := ret0 410 err := _BlacklistRegistryV1.contract.Call(opts, out, "mnregistry_proxy") 411 return *ret0, err 412 } 413 414 // MnregistryProxy is a free data retrieval call binding the contract method 0xfe7334e8. 415 // 416 // Solidity: function mnregistry_proxy() constant returns(address) 417 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) MnregistryProxy() (common.Address, error) { 418 return _BlacklistRegistryV1.Contract.MnregistryProxy(&_BlacklistRegistryV1.CallOpts) 419 } 420 421 // MnregistryProxy is a free data retrieval call binding the contract method 0xfe7334e8. 422 // 423 // Solidity: function mnregistry_proxy() constant returns(address) 424 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) MnregistryProxy() (common.Address, error) { 425 return _BlacklistRegistryV1.Contract.MnregistryProxy(&_BlacklistRegistryV1.CallOpts) 426 } 427 428 // ProposalCreator is a free data retrieval call binding the contract method 0x8ad4012f. 429 // 430 // Solidity: function proposal_creator() constant returns(address) 431 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) ProposalCreator(opts *bind.CallOpts) (common.Address, error) { 432 var ( 433 ret0 = new(common.Address) 434 ) 435 out := ret0 436 err := _BlacklistRegistryV1.contract.Call(opts, out, "proposal_creator") 437 return *ret0, err 438 } 439 440 // ProposalCreator is a free data retrieval call binding the contract method 0x8ad4012f. 441 // 442 // Solidity: function proposal_creator() constant returns(address) 443 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) ProposalCreator() (common.Address, error) { 444 return _BlacklistRegistryV1.Contract.ProposalCreator(&_BlacklistRegistryV1.CallOpts) 445 } 446 447 // ProposalCreator is a free data retrieval call binding the contract method 0x8ad4012f. 448 // 449 // Solidity: function proposal_creator() constant returns(address) 450 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) ProposalCreator() (common.Address, error) { 451 return _BlacklistRegistryV1.Contract.ProposalCreator(&_BlacklistRegistryV1.CallOpts) 452 } 453 454 // Proposals is a free data retrieval call binding the contract method 0x3341b445. 455 // 456 // Solidity: function proposals(address addr) constant returns(address enforce, address revoke, address drain) 457 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) Proposals(opts *bind.CallOpts, addr common.Address) (struct { 458 Enforce common.Address 459 Revoke common.Address 460 Drain common.Address 461 }, error) { 462 ret := new(struct { 463 Enforce common.Address 464 Revoke common.Address 465 Drain common.Address 466 }) 467 out := ret 468 err := _BlacklistRegistryV1.contract.Call(opts, out, "proposals", addr) 469 return *ret, err 470 } 471 472 // Proposals is a free data retrieval call binding the contract method 0x3341b445. 473 // 474 // Solidity: function proposals(address addr) constant returns(address enforce, address revoke, address drain) 475 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Proposals(addr common.Address) (struct { 476 Enforce common.Address 477 Revoke common.Address 478 Drain common.Address 479 }, error) { 480 return _BlacklistRegistryV1.Contract.Proposals(&_BlacklistRegistryV1.CallOpts, addr) 481 } 482 483 // Proposals is a free data retrieval call binding the contract method 0x3341b445. 484 // 485 // Solidity: function proposals(address addr) constant returns(address enforce, address revoke, address drain) 486 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) Proposals(addr common.Address) (struct { 487 Enforce common.Address 488 Revoke common.Address 489 Drain common.Address 490 }, error) { 491 return _BlacklistRegistryV1.Contract.Proposals(&_BlacklistRegistryV1.CallOpts, addr) 492 } 493 494 // Proxy is a free data retrieval call binding the contract method 0xec556889. 495 // 496 // Solidity: function proxy() constant returns(address) 497 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) Proxy(opts *bind.CallOpts) (common.Address, error) { 498 var ( 499 ret0 = new(common.Address) 500 ) 501 out := ret0 502 err := _BlacklistRegistryV1.contract.Call(opts, out, "proxy") 503 return *ret0, err 504 } 505 506 // Proxy is a free data retrieval call binding the contract method 0xec556889. 507 // 508 // Solidity: function proxy() constant returns(address) 509 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Proxy() (common.Address, error) { 510 return _BlacklistRegistryV1.Contract.Proxy(&_BlacklistRegistryV1.CallOpts) 511 } 512 513 // Proxy is a free data retrieval call binding the contract method 0xec556889. 514 // 515 // Solidity: function proxy() constant returns(address) 516 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) Proxy() (common.Address, error) { 517 return _BlacklistRegistryV1.Contract.Proxy(&_BlacklistRegistryV1.CallOpts) 518 } 519 520 // V1storage is a free data retrieval call binding the contract method 0x2d059305. 521 // 522 // Solidity: function v1storage() constant returns(address) 523 func (_BlacklistRegistryV1 *BlacklistRegistryV1Caller) V1storage(opts *bind.CallOpts) (common.Address, error) { 524 var ( 525 ret0 = new(common.Address) 526 ) 527 out := ret0 528 err := _BlacklistRegistryV1.contract.Call(opts, out, "v1storage") 529 return *ret0, err 530 } 531 532 // V1storage is a free data retrieval call binding the contract method 0x2d059305. 533 // 534 // Solidity: function v1storage() constant returns(address) 535 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) V1storage() (common.Address, error) { 536 return _BlacklistRegistryV1.Contract.V1storage(&_BlacklistRegistryV1.CallOpts) 537 } 538 539 // V1storage is a free data retrieval call binding the contract method 0x2d059305. 540 // 541 // Solidity: function v1storage() constant returns(address) 542 func (_BlacklistRegistryV1 *BlacklistRegistryV1CallerSession) V1storage() (common.Address, error) { 543 return _BlacklistRegistryV1.Contract.V1storage(&_BlacklistRegistryV1.CallOpts) 544 } 545 546 // Collect is a paid mutator transaction binding the contract method 0x06ec16f8. 547 // 548 // Solidity: function collect(address addr) returns() 549 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) Collect(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error) { 550 return _BlacklistRegistryV1.contract.Transact(opts, "collect", addr) 551 } 552 553 // Collect is a paid mutator transaction binding the contract method 0x06ec16f8. 554 // 555 // Solidity: function collect(address addr) returns() 556 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Collect(addr common.Address) (*types.Transaction, error) { 557 return _BlacklistRegistryV1.Contract.Collect(&_BlacklistRegistryV1.TransactOpts, addr) 558 } 559 560 // Collect is a paid mutator transaction binding the contract method 0x06ec16f8. 561 // 562 // Solidity: function collect(address addr) returns() 563 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) Collect(addr common.Address) (*types.Transaction, error) { 564 return _BlacklistRegistryV1.Contract.Collect(&_BlacklistRegistryV1.TransactOpts, addr) 565 } 566 567 // Destroy is a paid mutator transaction binding the contract method 0x00f55d9d. 568 // 569 // Solidity: function destroy(address _newImpl) returns() 570 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) Destroy(opts *bind.TransactOpts, _newImpl common.Address) (*types.Transaction, error) { 571 return _BlacklistRegistryV1.contract.Transact(opts, "destroy", _newImpl) 572 } 573 574 // Destroy is a paid mutator transaction binding the contract method 0x00f55d9d. 575 // 576 // Solidity: function destroy(address _newImpl) returns() 577 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Destroy(_newImpl common.Address) (*types.Transaction, error) { 578 return _BlacklistRegistryV1.Contract.Destroy(&_BlacklistRegistryV1.TransactOpts, _newImpl) 579 } 580 581 // Destroy is a paid mutator transaction binding the contract method 0x00f55d9d. 582 // 583 // Solidity: function destroy(address _newImpl) returns() 584 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) Destroy(_newImpl common.Address) (*types.Transaction, error) { 585 return _BlacklistRegistryV1.Contract.Destroy(&_BlacklistRegistryV1.TransactOpts, _newImpl) 586 } 587 588 // DrainMigration is a paid mutator transaction binding the contract method 0x3502a130. 589 // 590 // Solidity: function drainMigration(uint256 item_id, bytes20 owner) returns() 591 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) DrainMigration(opts *bind.TransactOpts, item_id *big.Int, owner [20]byte) (*types.Transaction, error) { 592 return _BlacklistRegistryV1.contract.Transact(opts, "drainMigration", item_id, owner) 593 } 594 595 // DrainMigration is a paid mutator transaction binding the contract method 0x3502a130. 596 // 597 // Solidity: function drainMigration(uint256 item_id, bytes20 owner) returns() 598 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) DrainMigration(item_id *big.Int, owner [20]byte) (*types.Transaction, error) { 599 return _BlacklistRegistryV1.Contract.DrainMigration(&_BlacklistRegistryV1.TransactOpts, item_id, owner) 600 } 601 602 // DrainMigration is a paid mutator transaction binding the contract method 0x3502a130. 603 // 604 // Solidity: function drainMigration(uint256 item_id, bytes20 owner) returns() 605 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) DrainMigration(item_id *big.Int, owner [20]byte) (*types.Transaction, error) { 606 return _BlacklistRegistryV1.Contract.DrainMigration(&_BlacklistRegistryV1.TransactOpts, item_id, owner) 607 } 608 609 // Migrate is a paid mutator transaction binding the contract method 0xce5494bb. 610 // 611 // Solidity: function migrate(address _oldImpl) returns() 612 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) Migrate(opts *bind.TransactOpts, _oldImpl common.Address) (*types.Transaction, error) { 613 return _BlacklistRegistryV1.contract.Transact(opts, "migrate", _oldImpl) 614 } 615 616 // Migrate is a paid mutator transaction binding the contract method 0xce5494bb. 617 // 618 // Solidity: function migrate(address _oldImpl) returns() 619 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Migrate(_oldImpl common.Address) (*types.Transaction, error) { 620 return _BlacklistRegistryV1.Contract.Migrate(&_BlacklistRegistryV1.TransactOpts, _oldImpl) 621 } 622 623 // Migrate is a paid mutator transaction binding the contract method 0xce5494bb. 624 // 625 // Solidity: function migrate(address _oldImpl) returns() 626 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) Migrate(_oldImpl common.Address) (*types.Transaction, error) { 627 return _BlacklistRegistryV1.Contract.Migrate(&_BlacklistRegistryV1.TransactOpts, _oldImpl) 628 } 629 630 // OnDrain is a paid mutator transaction binding the contract method 0x79d7bc07. 631 // 632 // Solidity: function onDrain(address addr) returns() 633 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) OnDrain(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error) { 634 return _BlacklistRegistryV1.contract.Transact(opts, "onDrain", addr) 635 } 636 637 // OnDrain is a paid mutator transaction binding the contract method 0x79d7bc07. 638 // 639 // Solidity: function onDrain(address addr) returns() 640 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) OnDrain(addr common.Address) (*types.Transaction, error) { 641 return _BlacklistRegistryV1.Contract.OnDrain(&_BlacklistRegistryV1.TransactOpts, addr) 642 } 643 644 // OnDrain is a paid mutator transaction binding the contract method 0x79d7bc07. 645 // 646 // Solidity: function onDrain(address addr) returns() 647 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) OnDrain(addr common.Address) (*types.Transaction, error) { 648 return _BlacklistRegistryV1.Contract.OnDrain(&_BlacklistRegistryV1.TransactOpts, addr) 649 } 650 651 // Propose is a paid mutator transaction binding the contract method 0x01267951. 652 // 653 // Solidity: function propose(address addr) returns(address) 654 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) Propose(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error) { 655 return _BlacklistRegistryV1.contract.Transact(opts, "propose", addr) 656 } 657 658 // Propose is a paid mutator transaction binding the contract method 0x01267951. 659 // 660 // Solidity: function propose(address addr) returns(address) 661 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) Propose(addr common.Address) (*types.Transaction, error) { 662 return _BlacklistRegistryV1.Contract.Propose(&_BlacklistRegistryV1.TransactOpts, addr) 663 } 664 665 // Propose is a paid mutator transaction binding the contract method 0x01267951. 666 // 667 // Solidity: function propose(address addr) returns(address) 668 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) Propose(addr common.Address) (*types.Transaction, error) { 669 return _BlacklistRegistryV1.Contract.Propose(&_BlacklistRegistryV1.TransactOpts, addr) 670 } 671 672 // ProposeDrain is a paid mutator transaction binding the contract method 0xd1e8ebda. 673 // 674 // Solidity: function proposeDrain(address addr) returns(address) 675 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) ProposeDrain(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error) { 676 return _BlacklistRegistryV1.contract.Transact(opts, "proposeDrain", addr) 677 } 678 679 // ProposeDrain is a paid mutator transaction binding the contract method 0xd1e8ebda. 680 // 681 // Solidity: function proposeDrain(address addr) returns(address) 682 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) ProposeDrain(addr common.Address) (*types.Transaction, error) { 683 return _BlacklistRegistryV1.Contract.ProposeDrain(&_BlacklistRegistryV1.TransactOpts, addr) 684 } 685 686 // ProposeDrain is a paid mutator transaction binding the contract method 0xd1e8ebda. 687 // 688 // Solidity: function proposeDrain(address addr) returns(address) 689 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) ProposeDrain(addr common.Address) (*types.Transaction, error) { 690 return _BlacklistRegistryV1.Contract.ProposeDrain(&_BlacklistRegistryV1.TransactOpts, addr) 691 } 692 693 // ProposeRevoke is a paid mutator transaction binding the contract method 0x244fcea5. 694 // 695 // Solidity: function proposeRevoke(address addr) returns(address) 696 func (_BlacklistRegistryV1 *BlacklistRegistryV1Transactor) ProposeRevoke(opts *bind.TransactOpts, addr common.Address) (*types.Transaction, error) { 697 return _BlacklistRegistryV1.contract.Transact(opts, "proposeRevoke", addr) 698 } 699 700 // ProposeRevoke is a paid mutator transaction binding the contract method 0x244fcea5. 701 // 702 // Solidity: function proposeRevoke(address addr) returns(address) 703 func (_BlacklistRegistryV1 *BlacklistRegistryV1Session) ProposeRevoke(addr common.Address) (*types.Transaction, error) { 704 return _BlacklistRegistryV1.Contract.ProposeRevoke(&_BlacklistRegistryV1.TransactOpts, addr) 705 } 706 707 // ProposeRevoke is a paid mutator transaction binding the contract method 0x244fcea5. 708 // 709 // Solidity: function proposeRevoke(address addr) returns(address) 710 func (_BlacklistRegistryV1 *BlacklistRegistryV1TransactorSession) ProposeRevoke(addr common.Address) (*types.Transaction, error) { 711 return _BlacklistRegistryV1.Contract.ProposeRevoke(&_BlacklistRegistryV1.TransactOpts, addr) 712 } 713 714 // BlacklistRegistryV1BlacklistProposalIterator is returned from FilterBlacklistProposal and is used to iterate over the raw logs and unpacked data for BlacklistProposal events raised by the BlacklistRegistryV1 contract. 715 type BlacklistRegistryV1BlacklistProposalIterator struct { 716 Event *BlacklistRegistryV1BlacklistProposal // Event containing the contract specifics and raw log 717 718 contract *bind.BoundContract // Generic contract to use for unpacking event data 719 event string // Event name to use for unpacking event data 720 721 logs chan types.Log // Log channel receiving the found contract events 722 sub ethereum.Subscription // Subscription for errors, completion and termination 723 done bool // Whether the subscription completed delivering logs 724 fail error // Occurred error to stop iteration 725 } 726 727 // Next advances the iterator to the subsequent event, returning whether there 728 // are any more events found. In case of a retrieval or parsing error, false is 729 // returned and Error() can be queried for the exact failure. 730 func (it *BlacklistRegistryV1BlacklistProposalIterator) Next() bool { 731 // If the iterator failed, stop iterating 732 if it.fail != nil { 733 return false 734 } 735 // If the iterator completed, deliver directly whatever's available 736 if it.done { 737 select { 738 case log := <-it.logs: 739 it.Event = new(BlacklistRegistryV1BlacklistProposal) 740 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 741 it.fail = err 742 return false 743 } 744 it.Event.Raw = log 745 return true 746 747 default: 748 return false 749 } 750 } 751 // Iterator still in progress, wait for either a data or an error event 752 select { 753 case log := <-it.logs: 754 it.Event = new(BlacklistRegistryV1BlacklistProposal) 755 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 756 it.fail = err 757 return false 758 } 759 it.Event.Raw = log 760 return true 761 762 case err := <-it.sub.Err(): 763 it.done = true 764 it.fail = err 765 return it.Next() 766 } 767 } 768 769 // Error returns any retrieval or parsing error occurred during filtering. 770 func (it *BlacklistRegistryV1BlacklistProposalIterator) Error() error { 771 return it.fail 772 } 773 774 // Close terminates the iteration process, releasing any pending underlying 775 // resources. 776 func (it *BlacklistRegistryV1BlacklistProposalIterator) Close() error { 777 it.sub.Unsubscribe() 778 return nil 779 } 780 781 // BlacklistRegistryV1BlacklistProposal represents a BlacklistProposal event raised by the BlacklistRegistryV1 contract. 782 type BlacklistRegistryV1BlacklistProposal struct { 783 Target common.Address 784 Proposal common.Address 785 Raw types.Log // Blockchain specific contextual infos 786 } 787 788 // FilterBlacklistProposal is a free log retrieval operation binding the contract event 0xea0d3b1afc7aa1754f902b277d6f473e2f4a4526e94797814c2042405d692557. 789 // 790 // Solidity: event BlacklistProposal(address indexed target, address proposal) 791 func (_BlacklistRegistryV1 *BlacklistRegistryV1Filterer) FilterBlacklistProposal(opts *bind.FilterOpts, target []common.Address) (*BlacklistRegistryV1BlacklistProposalIterator, error) { 792 793 var targetRule []interface{} 794 for _, targetItem := range target { 795 targetRule = append(targetRule, targetItem) 796 } 797 798 logs, sub, err := _BlacklistRegistryV1.contract.FilterLogs(opts, "BlacklistProposal", targetRule) 799 if err != nil { 800 return nil, err 801 } 802 return &BlacklistRegistryV1BlacklistProposalIterator{contract: _BlacklistRegistryV1.contract, event: "BlacklistProposal", logs: logs, sub: sub}, nil 803 } 804 805 // WatchBlacklistProposal is a free log subscription operation binding the contract event 0xea0d3b1afc7aa1754f902b277d6f473e2f4a4526e94797814c2042405d692557. 806 // 807 // Solidity: event BlacklistProposal(address indexed target, address proposal) 808 func (_BlacklistRegistryV1 *BlacklistRegistryV1Filterer) WatchBlacklistProposal(opts *bind.WatchOpts, sink chan<- *BlacklistRegistryV1BlacklistProposal, target []common.Address) (event.Subscription, error) { 809 810 var targetRule []interface{} 811 for _, targetItem := range target { 812 targetRule = append(targetRule, targetItem) 813 } 814 815 logs, sub, err := _BlacklistRegistryV1.contract.WatchLogs(opts, "BlacklistProposal", targetRule) 816 if err != nil { 817 return nil, err 818 } 819 return event.NewSubscription(func(quit <-chan struct{}) error { 820 defer sub.Unsubscribe() 821 for { 822 select { 823 case log := <-logs: 824 // New log arrived, parse the event and forward to the user 825 event := new(BlacklistRegistryV1BlacklistProposal) 826 if err := _BlacklistRegistryV1.contract.UnpackLog(event, "BlacklistProposal", log); err != nil { 827 return err 828 } 829 event.Raw = log 830 831 select { 832 case sink <- event: 833 case err := <-sub.Err(): 834 return err 835 case <-quit: 836 return nil 837 } 838 case err := <-sub.Err(): 839 return err 840 case <-quit: 841 return nil 842 } 843 } 844 }), nil 845 } 846 847 // BlacklistRegistryV1DrainProposalIterator is returned from FilterDrainProposal and is used to iterate over the raw logs and unpacked data for DrainProposal events raised by the BlacklistRegistryV1 contract. 848 type BlacklistRegistryV1DrainProposalIterator struct { 849 Event *BlacklistRegistryV1DrainProposal // Event containing the contract specifics and raw log 850 851 contract *bind.BoundContract // Generic contract to use for unpacking event data 852 event string // Event name to use for unpacking event data 853 854 logs chan types.Log // Log channel receiving the found contract events 855 sub ethereum.Subscription // Subscription for errors, completion and termination 856 done bool // Whether the subscription completed delivering logs 857 fail error // Occurred error to stop iteration 858 } 859 860 // Next advances the iterator to the subsequent event, returning whether there 861 // are any more events found. In case of a retrieval or parsing error, false is 862 // returned and Error() can be queried for the exact failure. 863 func (it *BlacklistRegistryV1DrainProposalIterator) Next() bool { 864 // If the iterator failed, stop iterating 865 if it.fail != nil { 866 return false 867 } 868 // If the iterator completed, deliver directly whatever's available 869 if it.done { 870 select { 871 case log := <-it.logs: 872 it.Event = new(BlacklistRegistryV1DrainProposal) 873 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 874 it.fail = err 875 return false 876 } 877 it.Event.Raw = log 878 return true 879 880 default: 881 return false 882 } 883 } 884 // Iterator still in progress, wait for either a data or an error event 885 select { 886 case log := <-it.logs: 887 it.Event = new(BlacklistRegistryV1DrainProposal) 888 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 889 it.fail = err 890 return false 891 } 892 it.Event.Raw = log 893 return true 894 895 case err := <-it.sub.Err(): 896 it.done = true 897 it.fail = err 898 return it.Next() 899 } 900 } 901 902 // Error returns any retrieval or parsing error occurred during filtering. 903 func (it *BlacklistRegistryV1DrainProposalIterator) Error() error { 904 return it.fail 905 } 906 907 // Close terminates the iteration process, releasing any pending underlying 908 // resources. 909 func (it *BlacklistRegistryV1DrainProposalIterator) Close() error { 910 it.sub.Unsubscribe() 911 return nil 912 } 913 914 // BlacklistRegistryV1DrainProposal represents a DrainProposal event raised by the BlacklistRegistryV1 contract. 915 type BlacklistRegistryV1DrainProposal struct { 916 Target common.Address 917 Proposal common.Address 918 Raw types.Log // Blockchain specific contextual infos 919 } 920 921 // FilterDrainProposal is a free log retrieval operation binding the contract event 0xb0163b33033bcea41a78d2d4a9c596c29b0667259543d6d56b8cac8cd92d2cea. 922 // 923 // Solidity: event DrainProposal(address indexed target, address proposal) 924 func (_BlacklistRegistryV1 *BlacklistRegistryV1Filterer) FilterDrainProposal(opts *bind.FilterOpts, target []common.Address) (*BlacklistRegistryV1DrainProposalIterator, error) { 925 926 var targetRule []interface{} 927 for _, targetItem := range target { 928 targetRule = append(targetRule, targetItem) 929 } 930 931 logs, sub, err := _BlacklistRegistryV1.contract.FilterLogs(opts, "DrainProposal", targetRule) 932 if err != nil { 933 return nil, err 934 } 935 return &BlacklistRegistryV1DrainProposalIterator{contract: _BlacklistRegistryV1.contract, event: "DrainProposal", logs: logs, sub: sub}, nil 936 } 937 938 // WatchDrainProposal is a free log subscription operation binding the contract event 0xb0163b33033bcea41a78d2d4a9c596c29b0667259543d6d56b8cac8cd92d2cea. 939 // 940 // Solidity: event DrainProposal(address indexed target, address proposal) 941 func (_BlacklistRegistryV1 *BlacklistRegistryV1Filterer) WatchDrainProposal(opts *bind.WatchOpts, sink chan<- *BlacklistRegistryV1DrainProposal, target []common.Address) (event.Subscription, error) { 942 943 var targetRule []interface{} 944 for _, targetItem := range target { 945 targetRule = append(targetRule, targetItem) 946 } 947 948 logs, sub, err := _BlacklistRegistryV1.contract.WatchLogs(opts, "DrainProposal", targetRule) 949 if err != nil { 950 return nil, err 951 } 952 return event.NewSubscription(func(quit <-chan struct{}) error { 953 defer sub.Unsubscribe() 954 for { 955 select { 956 case log := <-logs: 957 // New log arrived, parse the event and forward to the user 958 event := new(BlacklistRegistryV1DrainProposal) 959 if err := _BlacklistRegistryV1.contract.UnpackLog(event, "DrainProposal", log); err != nil { 960 return err 961 } 962 event.Raw = log 963 964 select { 965 case sink <- event: 966 case err := <-sub.Err(): 967 return err 968 case <-quit: 969 return nil 970 } 971 case err := <-sub.Err(): 972 return err 973 case <-quit: 974 return nil 975 } 976 } 977 }), nil 978 } 979 980 // BlacklistRegistryV1WhitelistProposalIterator is returned from FilterWhitelistProposal and is used to iterate over the raw logs and unpacked data for WhitelistProposal events raised by the BlacklistRegistryV1 contract. 981 type BlacklistRegistryV1WhitelistProposalIterator struct { 982 Event *BlacklistRegistryV1WhitelistProposal // Event containing the contract specifics and raw log 983 984 contract *bind.BoundContract // Generic contract to use for unpacking event data 985 event string // Event name to use for unpacking event data 986 987 logs chan types.Log // Log channel receiving the found contract events 988 sub ethereum.Subscription // Subscription for errors, completion and termination 989 done bool // Whether the subscription completed delivering logs 990 fail error // Occurred error to stop iteration 991 } 992 993 // Next advances the iterator to the subsequent event, returning whether there 994 // are any more events found. In case of a retrieval or parsing error, false is 995 // returned and Error() can be queried for the exact failure. 996 func (it *BlacklistRegistryV1WhitelistProposalIterator) Next() bool { 997 // If the iterator failed, stop iterating 998 if it.fail != nil { 999 return false 1000 } 1001 // If the iterator completed, deliver directly whatever's available 1002 if it.done { 1003 select { 1004 case log := <-it.logs: 1005 it.Event = new(BlacklistRegistryV1WhitelistProposal) 1006 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1007 it.fail = err 1008 return false 1009 } 1010 it.Event.Raw = log 1011 return true 1012 1013 default: 1014 return false 1015 } 1016 } 1017 // Iterator still in progress, wait for either a data or an error event 1018 select { 1019 case log := <-it.logs: 1020 it.Event = new(BlacklistRegistryV1WhitelistProposal) 1021 if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil { 1022 it.fail = err 1023 return false 1024 } 1025 it.Event.Raw = log 1026 return true 1027 1028 case err := <-it.sub.Err(): 1029 it.done = true 1030 it.fail = err 1031 return it.Next() 1032 } 1033 } 1034 1035 // Error returns any retrieval or parsing error occurred during filtering. 1036 func (it *BlacklistRegistryV1WhitelistProposalIterator) Error() error { 1037 return it.fail 1038 } 1039 1040 // Close terminates the iteration process, releasing any pending underlying 1041 // resources. 1042 func (it *BlacklistRegistryV1WhitelistProposalIterator) Close() error { 1043 it.sub.Unsubscribe() 1044 return nil 1045 } 1046 1047 // BlacklistRegistryV1WhitelistProposal represents a WhitelistProposal event raised by the BlacklistRegistryV1 contract. 1048 type BlacklistRegistryV1WhitelistProposal struct { 1049 Target common.Address 1050 Proposal common.Address 1051 Raw types.Log // Blockchain specific contextual infos 1052 } 1053 1054 // FilterWhitelistProposal is a free log retrieval operation binding the contract event 0x2e46fe8e502a44b05a85d4346d3e208fc845c81a81c9b7e4db08a33dca59faff. 1055 // 1056 // Solidity: event WhitelistProposal(address indexed target, address proposal) 1057 func (_BlacklistRegistryV1 *BlacklistRegistryV1Filterer) FilterWhitelistProposal(opts *bind.FilterOpts, target []common.Address) (*BlacklistRegistryV1WhitelistProposalIterator, error) { 1058 1059 var targetRule []interface{} 1060 for _, targetItem := range target { 1061 targetRule = append(targetRule, targetItem) 1062 } 1063 1064 logs, sub, err := _BlacklistRegistryV1.contract.FilterLogs(opts, "WhitelistProposal", targetRule) 1065 if err != nil { 1066 return nil, err 1067 } 1068 return &BlacklistRegistryV1WhitelistProposalIterator{contract: _BlacklistRegistryV1.contract, event: "WhitelistProposal", logs: logs, sub: sub}, nil 1069 } 1070 1071 // WatchWhitelistProposal is a free log subscription operation binding the contract event 0x2e46fe8e502a44b05a85d4346d3e208fc845c81a81c9b7e4db08a33dca59faff. 1072 // 1073 // Solidity: event WhitelistProposal(address indexed target, address proposal) 1074 func (_BlacklistRegistryV1 *BlacklistRegistryV1Filterer) WatchWhitelistProposal(opts *bind.WatchOpts, sink chan<- *BlacklistRegistryV1WhitelistProposal, target []common.Address) (event.Subscription, error) { 1075 1076 var targetRule []interface{} 1077 for _, targetItem := range target { 1078 targetRule = append(targetRule, targetItem) 1079 } 1080 1081 logs, sub, err := _BlacklistRegistryV1.contract.WatchLogs(opts, "WhitelistProposal", targetRule) 1082 if err != nil { 1083 return nil, err 1084 } 1085 return event.NewSubscription(func(quit <-chan struct{}) error { 1086 defer sub.Unsubscribe() 1087 for { 1088 select { 1089 case log := <-logs: 1090 // New log arrived, parse the event and forward to the user 1091 event := new(BlacklistRegistryV1WhitelistProposal) 1092 if err := _BlacklistRegistryV1.contract.UnpackLog(event, "WhitelistProposal", log); err != nil { 1093 return err 1094 } 1095 event.Raw = log 1096 1097 select { 1098 case sink <- event: 1099 case err := <-sub.Err(): 1100 return err 1101 case <-quit: 1102 return nil 1103 } 1104 case err := <-sub.Err(): 1105 return err 1106 case <-quit: 1107 return nil 1108 } 1109 } 1110 }), nil 1111 }