package consts

const ERC721HandlerABI = "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"bridgeAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"_bridgeAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"_burnList\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"_contractWhitelist\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"_resourceIDToTokenContractAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"_tokenContractAddressToResourceID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"setBurnable\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"resourceID\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"}],\"name\":\"setResource\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"resourceID\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"depositer\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"deposit\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"metaData\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"resourceID\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"executeProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]"
const ERC721HandlerBin = "60a060405234801561001057600080fd5b50604051610e71380380610e7183398101604081905261002f91610044565b60601b6001600160601b031916608052610072565b600060208284031215610055578081fd5b81516001600160a01b038116811461006b578182fd5b9392505050565b60805160601c610ddd6100946000398061020052806105445250610ddd6000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c80637f79bea8116100665780637f79bea81461011c578063b07e54bb1461012f578063b8fa37361461014f578063c8ba6c8714610162578063e248cff2146101825761009e565b806307b7ed99146100a35780630968f264146100b85780630a6d55d8146100cb578063318c136e146100f45780636a70d081146100fc575b600080fd5b6100b66100b13660046108e0565b610195565b005b6100b66100c6366004610a49565b6101a9565b6100de6100d936600461095e565b6101e3565b6040516100eb9190610b95565b60405180910390f35b6100de6101fe565b61010f61010a3660046108e0565b610222565b6040516100eb9190610bf4565b61010f61012a3660046108e0565b610237565b61014261013d3660046109a5565b61024c565b6040516100eb9190610c1d565b6100b661015d366004610976565b6103a0565b6101756101703660046108e0565b6103b6565b6040516100eb9190610bff565b6100b66101903660046109ff565b6103c8565b61019d610539565b6101a681610583565b50565b6101b1610539565b6000806000838060200190518101906101ca91906108fc565b919450925090506101dd833084846105df565b50505050565b6000602081905290815260409020546001600160a01b031681565b7f000000000000000000000000000000000000000000000000000000000000000081565b60036020526000908152604090205460ff1681565b60026020526000908152604090205460ff1681565b6060610256610539565b60006102648385018561095e565b600087815260208181526040808320546001600160a01b03168084526002909252909120549192509060ff166102b55760405162461bcd60e51b81526004016102ac90610cab565b60405180910390fd5b6102cf6001600160a01b038216635b5e139f60e01b61064a565b1561035a5760405163c87b56dd60e01b815281906001600160a01b0382169063c87b56dd90610302908690600401610bff565b60006040518083038186803b15801561031a57600080fd5b505afa15801561032e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526103569190810190610ac2565b9350505b6001600160a01b03811660009081526003602052604090205460ff161561038a57610385818361066d565b610396565b610396818730856105df565b5050949350505050565b6103a8610539565b6103b282826106d2565b5050565b60016020526000908152604090205481565b6103d0610539565b60008060608180826103e487890189610b2c565b9096509450604080860193506103fd908490898b610d3e565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509296506104439250899150859050818b610d3e565b810190610450919061095e565b915061046660208484018101908501898b610d3e565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052506020898101518f83528282526040808420546001600160a01b0316808552600290935290922054959650909490935060ff1691506104e890505760405162461bcd60e51b81526004016102ac90610cab565b6001600160a01b03811660009081526003602052604090205460ff161561051d57610518818360601c8a8661071f565b61052c565b61052c81308460601c8b6105df565b5050505050505050505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105815760405162461bcd60e51b81526004016102ac90610c30565b565b6001600160a01b03811660009081526002602052604090205460ff166105bb5760405162461bcd60e51b81526004016102ac90610c67565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6040516323b872dd60e01b815284906001600160a01b038216906323b872dd9061061190879087908790600401610ba9565b600060405180830381600087803b15801561062b57600080fd5b505af115801561063f573d6000803e3d6000fd5b505050505050505050565b600061065583610751565b801561066657506106668383610785565b9392505050565b604051630852cd8d60e31b815282906001600160a01b038216906342966c689061069b908590600401610bff565b600060405180830381600087803b1580156106b557600080fd5b505af11580156106c9573d6000803e3d6000fd5b50505050505050565b60008281526020818152604080832080546001600160a01b039095166001600160a01b0319909516851790559282526001808252838320949094556002905220805460ff19169091179055565b6040516334ff261960e21b815284906001600160a01b0382169063d3fc98649061061190879087908790600401610bcd565b6000610764826301ffc9a760e01b610785565b801561077f575061077d826001600160e01b0319610785565b155b92915050565b600080600061079485856107ab565b915091508180156107a25750805b95945050505050565b60008060606301ffc9a760e01b846040516024016107c99190610c08565b604051602081830303815290604052906001600160e01b0319166020820180516001600160e01b038381831617835250505050905060006060866001600160a01b03166175308460405161081d9190610b79565b6000604051808303818686fa925050503d8060008114610859576040519150601f19603f3d011682016040523d82523d6000602084013e61085e565b606091505b509150915060208151101561087c5760008094509450505050610899565b8181806020019051810190610891919061093e565b945094505050505b9250929050565b60008083601f8401126108b1578182fd5b50813567ffffffffffffffff8111156108c8578182fd5b60208301915083602082850101111561089957600080fd5b6000602082840312156108f1578081fd5b813561066681610d92565b600080600060608486031215610910578182fd5b835161091b81610d92565b602085015190935061092c81610d92565b80925050604084015190509250925092565b60006020828403121561094f578081fd5b81518015158114610666578182fd5b60006020828403121561096f578081fd5b5035919050565b60008060408385031215610988578182fd5b82359150602083013561099a81610d92565b809150509250929050565b600080600080606085870312156109ba578081fd5b8435935060208501356109cc81610d92565b9250604085013567ffffffffffffffff8111156109e7578182fd5b6109f3878288016108a0565b95989497509550505050565b600080600060408486031215610a13578283fd5b83359250602084013567ffffffffffffffff811115610a30578283fd5b610a3c868287016108a0565b9497909650939450505050565b600060208284031215610a5a578081fd5b813567ffffffffffffffff811115610a70578182fd5b8201601f81018413610a80578182fd5b8035610a93610a8e82610d1a565b610cf3565b818152856020838501011115610aa7578384fd5b81602084016020830137908101602001929092525092915050565b600060208284031215610ad3578081fd5b815167ffffffffffffffff811115610ae9578182fd5b8201601f81018413610af9578182fd5b8051610b07610a8e82610d1a565b818152856020838501011115610b1b578384fd5b6107a2826020830160208601610d66565b60008060408385031215610b3e578182fd5b50508035926020909101359150565b60008151808452610b65816020860160208601610d66565b601f01601f19169290920160200192915050565b60008251610b8b818460208701610d66565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b600060018060a01b0385168252836020830152606060408301526107a26060830184610b4d565b901515815260200190565b90815260200190565b6001600160e01b031991909116815260200190565b6000602082526106666020830184610b4d565b6020808252601e908201527f73656e646572206d7573742062652062726964676520636f6e74726163740000604082015260600190565b60208082526024908201527f70726f766964656420636f6e7472616374206973206e6f742077686974656c696040820152631cdd195960e21b606082015260800190565b60208082526028908201527f70726f766964656420746f6b656e41646472657373206973206e6f74207768696040820152671d195b1a5cdd195960c21b606082015260800190565b60405181810167ffffffffffffffff81118282101715610d1257600080fd5b604052919050565b600067ffffffffffffffff821115610d30578081fd5b50601f01601f191660200190565b60008085851115610d4d578182fd5b83861115610d59578182fd5b5050820193919092039150565b60005b83811015610d81578181015183820152602001610d69565b838111156101dd5750506000910152565b6001600160a01b03811681146101a657600080fdfea2646970667358221220c259b19f4e3d5dd38a63e4ece7212eddbb4aa75067017ab1b11d428ce9d4c10f64736f6c634300060c0033"
