Help us shape the future of Go! Take the 2026 Go Developer Survey

tokens

package
v0.1.78 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2025 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ERC20ABI = ERC20MetaData.ABI

ERC20ABI is the input ABI used to generate the binding from. Deprecated: Use ERC20MetaData.ABI instead.

View Source
var ERC20Bin = ERC20MetaData.Bin

ERC20Bin is the compiled bytecode used for deploying new contracts. Deprecated: Use ERC20MetaData.Bin instead.

View Source
var ERC20MetaData = &bind.MetaData{
	ABI: "[{\"type\":\"constructor\",\"inputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"allowance\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"spender\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"approve\",\"inputs\":[{\"name\":\"spender\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"balanceOf\",\"inputs\":[{\"name\":\"account\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"decimals\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint8\",\"internalType\":\"uint8\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"decreaseAllowance\",\"inputs\":[{\"name\":\"spender\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"subtractedValue\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"increaseAllowance\",\"inputs\":[{\"name\":\"spender\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"addedValue\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"mint\",\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"name\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"symbol\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"totalSupply\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"transfer\",\"inputs\":[{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"transferFrom\",\"inputs\":[{\"name\":\"from\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"nonpayable\"},{\"type\":\"event\",\"name\":\"Approval\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"spender\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"value\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Transfer\",\"inputs\":[{\"name\":\"from\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"to\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"value\",\"type\":\"uint256\",\"indexed\":false,\"internalType\":\"uint256\"}],\"anonymous\":false}]",
	Bin: "0x608060405234801562000010575f80fd5b506040518060400160405280600781526020017f4d79546f6b656e000000000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f4d544b000000000000000000000000000000000000000000000000000000000081525081600390816200008e9190620004c6565b508060049081620000a09190620004c6565b505050620000e533620000b8620000eb60201b60201c565b60ff16600a620000c9919062000727565b620f4240620000d9919062000777565b620000f360201b60201c565b620008a5565b5f6012905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000164576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200015b906200081f565b60405180910390fd5b620001775f83836200025860201b60201c565b8060025f8282546200018a91906200083f565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200023991906200088a565b60405180910390a3620002545f83836200025d60201b60201c565b5050565b505050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620002de57607f821691505b602082108103620002f457620002f362000299565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620003587fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200031b565b6200036486836200031b565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620003ae620003a8620003a2846200037c565b62000385565b6200037c565b9050919050565b5f819050919050565b620003c9836200038e565b620003e1620003d882620003b5565b84845462000327565b825550505050565b5f90565b620003f7620003e9565b62000404818484620003be565b505050565b5b818110156200042b576200041f5f82620003ed565b6001810190506200040a565b5050565b601f8211156200047a576200044481620002fa565b6200044f846200030c565b810160208510156200045f578190505b620004776200046e856200030c565b83018262000409565b50505b505050565b5f82821c905092915050565b5f6200049c5f19846008026200047f565b1980831691505092915050565b5f620004b683836200048b565b9150826002028217905092915050565b620004d18262000262565b67ffffffffffffffff811115620004ed57620004ec6200026c565b5b620004f98254620002c6565b620005068282856200042f565b5f60209050601f8311600181146200053c575f841562000527578287015190505b620005338582620004a9565b865550620005a2565b601f1984166200054c86620002fa565b5f5b8281101562000575578489015182556001820191506020850194506020810190506200054e565b8683101562000595578489015162000591601f8916826200048b565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111562000634578086048111156200060c576200060b620005aa565b5b60018516156200061c5780820291505b80810290506200062c85620005d7565b9450620005ec565b94509492505050565b5f826200064e576001905062000720565b816200065d575f905062000720565b81600181146200067657600281146200068157620006b7565b600191505062000720565b60ff841115620006965762000695620005aa565b5b8360020a915084821115620006b057620006af620005aa565b5b5062000720565b5060208310610133831016604e8410600b8410161715620006f15782820a905083811115620006eb57620006ea620005aa565b5b62000720565b620007008484846001620005e3565b925090508184048111156200071a5762000719620005aa565b5b81810290505b9392505050565b5f62000733826200037c565b915062000740836200037c565b92506200076f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200063d565b905092915050565b5f62000783826200037c565b915062000790836200037c565b9250828202620007a0816200037c565b91508282048414831517620007ba57620007b9620005aa565b5b5092915050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f62000807601f83620007c1565b91506200081482620007d1565b602082019050919050565b5f6020820190508181035f8301526200083881620007f9565b9050919050565b5f6200084b826200037c565b915062000858836200037c565b9250828201905080821115620008735762000872620005aa565b5b92915050565b62000884816200037c565b82525050565b5f6020820190506200089f5f83018462000879565b92915050565b6113d880620008b35f395ff3fe608060405234801561000f575f80fd5b50600436106100b2575f3560e01c806370a082311161006f57806370a08231146101a057806395d89b41146101d0578063a0712d68146101ee578063a457c2d71461020a578063a9059cbb1461023a578063dd62ed3e1461026a576100b2565b806306fdde03146100b6578063095ea7b3146100d457806318160ddd1461010457806323b872dd14610122578063313ce567146101525780633950935114610170575b5f80fd5b6100be61029a565b6040516100cb9190610c5f565b60405180910390f35b6100ee60048036038101906100e99190610d10565b61032a565b6040516100fb9190610d68565b60405180910390f35b61010c61034c565b6040516101199190610d90565b60405180910390f35b61013c60048036038101906101379190610da9565b610355565b6040516101499190610d68565b60405180910390f35b61015a610383565b6040516101679190610e14565b60405180910390f35b61018a60048036038101906101859190610d10565b61038b565b6040516101979190610d68565b60405180910390f35b6101ba60048036038101906101b59190610e2d565b6103c1565b6040516101c79190610d90565b60405180910390f35b6101d8610406565b6040516101e59190610c5f565b60405180910390f35b61020860048036038101906102039190610e58565b610496565b005b610224600480360381019061021f9190610d10565b6104a3565b6040516102319190610d68565b60405180910390f35b610254600480360381019061024f9190610d10565b610518565b6040516102619190610d68565b60405180910390f35b610284600480360381019061027f9190610e83565b61053a565b6040516102919190610d90565b60405180910390f35b6060600380546102a990610eee565b80601f01602080910402602001604051908101604052809291908181526020018280546102d590610eee565b80156103205780601f106102f757610100808354040283529160200191610320565b820191905f5260205f20905b81548152906001019060200180831161030357829003601f168201915b5050505050905090565b5f806103346105bc565b90506103418185856105c3565b600191505092915050565b5f600254905090565b5f8061035f6105bc565b905061036c858285610786565b610377858585610811565b60019150509392505050565b5f6012905090565b5f806103956105bc565b90506103b68185856103a7858961053a565b6103b19190610f4b565b6105c3565b600191505092915050565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b60606004805461041590610eee565b80601f016020809104026020016040519081016040528092919081815260200182805461044190610eee565b801561048c5780601f106104635761010080835404028352916020019161048c565b820191905f5260205f20905b81548152906001019060200180831161046f57829003601f168201915b5050505050905090565b6104a03382610a7d565b50565b5f806104ad6105bc565b90505f6104ba828661053a565b9050838110156104ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f690610fee565b60405180910390fd5b61050c82868684036105c3565b60019250505092915050565b5f806105226105bc565b905061052f818585610811565b600191505092915050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610631576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106289061107c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361069f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106969061110a565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516107799190610d90565b60405180910390a3505050565b5f610791848461053a565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811461080b57818110156107fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107f490611172565b60405180910390fd5b61080a84848484036105c3565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361087f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161087690611200565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036108ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e49061128e565b60405180910390fd5b6108f8838383610bcb565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561097b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109729061131c565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a649190610d90565b60405180910390a3610a77848484610bd0565b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610aeb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ae290611384565b60405180910390fd5b610af65f8383610bcb565b8060025f828254610b079190610f4b565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610bb49190610d90565b60405180910390a3610bc75f8383610bd0565b5050565b505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015610c0c578082015181840152602081019050610bf1565b5f8484015250505050565b5f601f19601f8301169050919050565b5f610c3182610bd5565b610c3b8185610bdf565b9350610c4b818560208601610bef565b610c5481610c17565b840191505092915050565b5f6020820190508181035f830152610c778184610c27565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610cac82610c83565b9050919050565b610cbc81610ca2565b8114610cc6575f80fd5b50565b5f81359050610cd781610cb3565b92915050565b5f819050919050565b610cef81610cdd565b8114610cf9575f80fd5b50565b5f81359050610d0a81610ce6565b92915050565b5f8060408385031215610d2657610d25610c7f565b5b5f610d3385828601610cc9565b9250506020610d4485828601610cfc565b9150509250929050565b5f8115159050919050565b610d6281610d4e565b82525050565b5f602082019050610d7b5f830184610d59565b92915050565b610d8a81610cdd565b82525050565b5f602082019050610da35f830184610d81565b92915050565b5f805f60608486031215610dc057610dbf610c7f565b5b5f610dcd86828701610cc9565b9350506020610dde86828701610cc9565b9250506040610def86828701610cfc565b9150509250925092565b5f60ff82169050919050565b610e0e81610df9565b82525050565b5f602082019050610e275f830184610e05565b92915050565b5f60208284031215610e4257610e41610c7f565b5b5f610e4f84828501610cc9565b91505092915050565b5f60208284031215610e6d57610e6c610c7f565b5b5f610e7a84828501610cfc565b91505092915050565b5f8060408385031215610e9957610e98610c7f565b5b5f610ea685828601610cc9565b9250506020610eb785828601610cc9565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680610f0557607f821691505b602082108103610f1857610f17610ec1565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610f5582610cdd565b9150610f6083610cdd565b9250828201905080821115610f7857610f77610f1e565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f610fd8602583610bdf565b9150610fe382610f7e565b604082019050919050565b5f6020820190508181035f83015261100581610fcc565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611066602483610bdf565b91506110718261100c565b604082019050919050565b5f6020820190508181035f8301526110938161105a565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6110f4602283610bdf565b91506110ff8261109a565b604082019050919050565b5f6020820190508181035f830152611121816110e8565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f61115c601d83610bdf565b915061116782611128565b602082019050919050565b5f6020820190508181035f83015261118981611150565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6111ea602583610bdf565b91506111f582611190565b604082019050919050565b5f6020820190508181035f830152611217816111de565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611278602383610bdf565b91506112838261121e565b604082019050919050565b5f6020820190508181035f8301526112a58161126c565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f611306602683610bdf565b9150611311826112ac565b604082019050919050565b5f6020820190508181035f830152611333816112fa565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f61136e601f83610bdf565b91506113798261133a565b602082019050919050565b5f6020820190508181035f83015261139b81611362565b905091905056fea26469706673582212208278a88b1085ec994372ce43d6539ac9bb01437225192fd721c200252df5195364736f6c63430008170033",
}

ERC20MetaData contains all meta data concerning the ERC20 contract.

View Source
var ERC721ABI = ERC721MetaData.ABI

ERC721ABI is the input ABI used to generate the binding from. Deprecated: Use ERC721MetaData.ABI instead.

View Source
var ERC721Bin = ERC721MetaData.Bin

ERC721Bin is the compiled bytecode used for deploying new contracts. Deprecated: Use ERC721MetaData.Bin instead.

View Source
var ERC721MetaData = &bind.MetaData{
	ABI: "[{\"type\":\"constructor\",\"inputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"approve\",\"inputs\":[{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"balanceOf\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"currentTokenId\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"getApproved\",\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"address\",\"internalType\":\"address\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"isApprovedForAll\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"operator\",\"type\":\"address\",\"internalType\":\"address\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"mintBatch\",\"inputs\":[{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"name\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"ownerOf\",\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"address\",\"internalType\":\"address\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"safeTransferFrom\",\"inputs\":[{\"name\":\"from\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"safeTransferFrom\",\"inputs\":[{\"name\":\"from\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"},{\"name\":\"data\",\"type\":\"bytes\",\"internalType\":\"bytes\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"setApprovalForAll\",\"inputs\":[{\"name\":\"operator\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"function\",\"name\":\"supportsInterface\",\"inputs\":[{\"name\":\"interfaceId\",\"type\":\"bytes4\",\"internalType\":\"bytes4\"}],\"outputs\":[{\"name\":\"\",\"type\":\"bool\",\"internalType\":\"bool\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"symbol\",\"inputs\":[],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"tokenURI\",\"inputs\":[{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[{\"name\":\"\",\"type\":\"string\",\"internalType\":\"string\"}],\"stateMutability\":\"view\"},{\"type\":\"function\",\"name\":\"transferFrom\",\"inputs\":[{\"name\":\"from\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"to\",\"type\":\"address\",\"internalType\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\",\"internalType\":\"uint256\"}],\"outputs\":[],\"stateMutability\":\"nonpayable\"},{\"type\":\"event\",\"name\":\"Approval\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"approved\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\",\"indexed\":true,\"internalType\":\"uint256\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"ApprovalForAll\",\"inputs\":[{\"name\":\"owner\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"operator\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"approved\",\"type\":\"bool\",\"indexed\":false,\"internalType\":\"bool\"}],\"anonymous\":false},{\"type\":\"event\",\"name\":\"Transfer\",\"inputs\":[{\"name\":\"from\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"to\",\"type\":\"address\",\"indexed\":true,\"internalType\":\"address\"},{\"name\":\"tokenId\",\"type\":\"uint256\",\"indexed\":true,\"internalType\":\"uint256\"}],\"anonymous\":false}]",
	Bin: "0x60806040525f60065534801562000014575f80fd5b506040518060400160405280600581526020017f4d794e46540000000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4d4e465400000000000000000000000000000000000000000000000000000000815250815f908162000091919062000310565b508060019081620000a3919062000310565b505050620003f4565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200012857607f821691505b6020821081036200013e576200013d620000e3565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620001a27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000165565b620001ae868362000165565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620001f8620001f2620001ec84620001c6565b620001cf565b620001c6565b9050919050565b5f819050919050565b6200021383620001d8565b6200022b6200022282620001ff565b84845462000171565b825550505050565b5f90565b6200024162000233565b6200024e81848462000208565b505050565b5b818110156200027557620002695f8262000237565b60018101905062000254565b5050565b601f821115620002c4576200028e8162000144565b620002998462000156565b81016020851015620002a9578190505b620002c1620002b88562000156565b83018262000253565b50505b505050565b5f82821c905092915050565b5f620002e65f1984600802620002c9565b1980831691505092915050565b5f620003008383620002d5565b9150826002028217905092915050565b6200031b82620000ac565b67ffffffffffffffff811115620003375762000336620000b6565b5b62000343825462000110565b6200035082828562000279565b5f60209050601f83116001811462000386575f841562000371578287015190505b6200037d8582620002f3565b865550620003ec565b601f198416620003968662000144565b5f5b82811015620003bf5784890151825560018201915060208501945060208101905062000398565b86831015620003df5784890151620003db601f891682620002d5565b8355505b6001600288020188555050505b505050505050565b6124dd80620004025f395ff3fe608060405234801561000f575f80fd5b50600436106100f2575f3560e01c806342842e0e11610095578063a22cb46511610064578063a22cb46514610280578063b88d4fde1461029c578063c87b56dd146102b8578063e985e9c5146102e8576100f2565b806342842e0e146101e65780636352211e1461020257806370a082311461023257806395d89b4114610262576100f2565b8063081812fc116100d1578063081812fc14610162578063095ea7b31461019257806323b872dd146101ae578063248b71fc146101ca576100f2565b80629a9b7b146100f657806301ffc9a71461011457806306fdde0314610144575b5f80fd5b6100fe610318565b60405161010b9190611786565b60405180910390f35b61012e60048036038101906101299190611805565b61031e565b60405161013b919061184a565b60405180910390f35b61014c6103ff565b60405161015991906118ed565b60405180910390f35b61017c60048036038101906101779190611937565b61048e565b60405161018991906119a1565b60405180910390f35b6101ac60048036038101906101a791906119e4565b6104d0565b005b6101c860048036038101906101c39190611a22565b6105e6565b005b6101e460048036038101906101df91906119e4565b610646565b005b61020060048036038101906101fb9190611a22565b610684565b005b61021c60048036038101906102179190611937565b6106a3565b60405161022991906119a1565b60405180910390f35b61024c60048036038101906102479190611a72565b610727565b6040516102599190611786565b60405180910390f35b61026a6107db565b60405161027791906118ed565b60405180910390f35b61029a60048036038101906102959190611ac7565b61086b565b005b6102b660048036038101906102b19190611c31565b610881565b005b6102d260048036038101906102cd9190611937565b6108e3565b6040516102df91906118ed565b60405180910390f35b61030260048036038101906102fd9190611cb1565b610948565b60405161030f919061184a565b60405180910390f35b60065481565b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806103e857507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103f857506103f7826109d6565b5b9050919050565b60605f805461040d90611d1c565b80601f016020809104026020016040519081016040528092919081815260200182805461043990611d1c565b80156104845780601f1061045b57610100808354040283529160200191610484565b820191905f5260205f20905b81548152906001019060200180831161046757829003601f168201915b5050505050905090565b5f61049882610a3f565b60045f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b5f6104da826106a3565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361054a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054190611dbc565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610569610a8a565b73ffffffffffffffffffffffffffffffffffffffff161480610598575061059781610592610a8a565b610948565b5b6105d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105ce90611e4a565b60405180910390fd5b6105e18383610a91565b505050565b6105f76105f1610a8a565b82610b47565b610636576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161062d90611ed8565b60405180910390fd5b610641838383610bdb565b505050565b5f5b8181101561067f575f60065f815461065f90611f23565b91905081905590506106718482610ec7565b508080600101915050610648565b505050565b61069e83838360405180602001604052805f815250610881565b505050565b5f806106ae83610ee4565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361071e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071590611fb4565b60405180910390fd5b80915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610796576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078d90612042565b60405180910390fd5b60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6060600180546107ea90611d1c565b80601f016020809104026020016040519081016040528092919081815260200182805461081690611d1c565b80156108615780601f1061083857610100808354040283529160200191610861565b820191905f5260205f20905b81548152906001019060200180831161084457829003601f168201915b5050505050905090565b61087d610876610a8a565b8383610f1d565b5050565b61089261088c610a8a565b83610b47565b6108d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c890611ed8565b60405180910390fd5b6108dd84848484611084565b50505050565b60606108ee82610a3f565b5f6108f76110e0565b90505f8151116109155760405180602001604052805f815250610940565b8061091f846110f6565b60405160200161093092919061209a565b6040516020818303038152906040525b915050919050565b5f60055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b610a48816111c0565b610a87576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7e90611fb4565b60405180910390fd5b50565b5f33905090565b8160045f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16610b01836106a3565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b5f80610b52836106a3565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480610b945750610b938185610948565b5b80610bd257508373ffffffffffffffffffffffffffffffffffffffff16610bba8461048e565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16610bfb826106a3565b73ffffffffffffffffffffffffffffffffffffffff1614610c51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c489061212d565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cbf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cb6906121bb565b60405180910390fd5b610ccc8383836001611200565b8273ffffffffffffffffffffffffffffffffffffffff16610cec826106a3565b73ffffffffffffffffffffffffffffffffffffffff1614610d42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d399061212d565b60405180910390fd5b60045f8281526020019081526020015f205f6101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600160035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282540392505081905550600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610ec28383836001611206565b505050565b610ee0828260405180602001604052805f81525061120c565b5050565b5f60025f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8290612223565b60405180910390fd5b8060055f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611077919061184a565b60405180910390a3505050565b61108f848484610bdb565b61109b84848484611266565b6110da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d1906122b1565b60405180910390fd5b50505050565b606060405180602001604052805f815250905090565b60605f6001611104846113e8565b0190505f8167ffffffffffffffff81111561112257611121611b0d565b5b6040519080825280601f01601f1916602001820160405280156111545781602001600182028036833780820191505090505b5090505f82602001820190505b6001156111b5578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816111aa576111a96122cf565b5b0494505f8503611161575b819350505050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff166111e183610ee4565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b50505050565b50505050565b6112168383611539565b6112225f848484611266565b611261576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611258906122b1565b60405180910390fd5b505050565b5f6112868473ffffffffffffffffffffffffffffffffffffffff1661174c565b156113db578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026112af610a8a565b8786866040518563ffffffff1660e01b81526004016112d1949392919061234e565b6020604051808303815f875af192505050801561130c57506040513d601f19601f8201168201806040525081019061130991906123ac565b60015b61138b573d805f811461133a576040519150601f19603f3d011682016040523d82523d5f602084013e61133f565b606091505b505f815103611383576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137a906122b1565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506113e0565b600190505b949350505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611444577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161143a576114396122cf565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611481576d04ee2d6d415b85acef81000000008381611477576114766122cf565b5b0492506020810190505b662386f26fc1000083106114b057662386f26fc1000083816114a6576114a56122cf565b5b0492506010810190505b6305f5e10083106114d9576305f5e10083816114cf576114ce6122cf565b5b0492506008810190505b61271083106114fe5761271083816114f4576114f36122cf565b5b0492506004810190505b606483106115215760648381611517576115166122cf565b5b0492506002810190505b600a8310611530576001810190505b80915050919050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036115a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159e90612421565b60405180910390fd5b6115b0816111c0565b156115f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e790612489565b60405180910390fd5b6115fd5f83836001611200565b611606816111c0565b15611646576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163d90612489565b60405180910390fd5b600160035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508160025f8381526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46117485f83836001611206565b5050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b5f819050919050565b6117808161176e565b82525050565b5f6020820190506117995f830184611777565b92915050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6117e4816117b0565b81146117ee575f80fd5b50565b5f813590506117ff816117db565b92915050565b5f6020828403121561181a576118196117a8565b5b5f611827848285016117f1565b91505092915050565b5f8115159050919050565b61184481611830565b82525050565b5f60208201905061185d5f83018461183b565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561189a57808201518184015260208101905061187f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6118bf82611863565b6118c9818561186d565b93506118d981856020860161187d565b6118e2816118a5565b840191505092915050565b5f6020820190508181035f83015261190581846118b5565b905092915050565b6119168161176e565b8114611920575f80fd5b50565b5f813590506119318161190d565b92915050565b5f6020828403121561194c5761194b6117a8565b5b5f61195984828501611923565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61198b82611962565b9050919050565b61199b81611981565b82525050565b5f6020820190506119b45f830184611992565b92915050565b6119c381611981565b81146119cd575f80fd5b50565b5f813590506119de816119ba565b92915050565b5f80604083850312156119fa576119f96117a8565b5b5f611a07858286016119d0565b9250506020611a1885828601611923565b9150509250929050565b5f805f60608486031215611a3957611a386117a8565b5b5f611a46868287016119d0565b9350506020611a57868287016119d0565b9250506040611a6886828701611923565b9150509250925092565b5f60208284031215611a8757611a866117a8565b5b5f611a94848285016119d0565b91505092915050565b611aa681611830565b8114611ab0575f80fd5b50565b5f81359050611ac181611a9d565b92915050565b5f8060408385031215611add57611adc6117a8565b5b5f611aea858286016119d0565b9250506020611afb85828601611ab3565b9150509250929050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611b43826118a5565b810181811067ffffffffffffffff82111715611b6257611b61611b0d565b5b80604052505050565b5f611b7461179f565b9050611b808282611b3a565b919050565b5f67ffffffffffffffff821115611b9f57611b9e611b0d565b5b611ba8826118a5565b9050602081019050919050565b828183375f83830152505050565b5f611bd5611bd084611b85565b611b6b565b905082815260208101848484011115611bf157611bf0611b09565b5b611bfc848285611bb5565b509392505050565b5f82601f830112611c1857611c17611b05565b5b8135611c28848260208601611bc3565b91505092915050565b5f805f8060808587031215611c4957611c486117a8565b5b5f611c56878288016119d0565b9450506020611c67878288016119d0565b9350506040611c7887828801611923565b925050606085013567ffffffffffffffff811115611c9957611c986117ac565b5b611ca587828801611c04565b91505092959194509250565b5f8060408385031215611cc757611cc66117a8565b5b5f611cd4858286016119d0565b9250506020611ce5858286016119d0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611d3357607f821691505b602082108103611d4657611d45611cef565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e655f8201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b5f611da660218361186d565b9150611db182611d4c565b604082019050919050565b5f6020820190508181035f830152611dd381611d9a565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f5f8201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b5f611e34603d8361186d565b9150611e3f82611dda565b604082019050919050565b5f6020820190508181035f830152611e6181611e28565b9050919050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e655f8201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b5f611ec2602d8361186d565b9150611ecd82611e68565b604082019050919050565b5f6020820190508181035f830152611eef81611eb6565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611f2d8261176e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f5f57611f5e611ef6565b5b600182019050919050565b7f4552433732313a20696e76616c696420746f6b656e20494400000000000000005f82015250565b5f611f9e60188361186d565b9150611fa982611f6a565b602082019050919050565b5f6020820190508181035f830152611fcb81611f92565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f7420612076615f8201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b5f61202c60298361186d565b915061203782611fd2565b604082019050919050565b5f6020820190508181035f83015261205981612020565b9050919050565b5f81905092915050565b5f61207482611863565b61207e8185612060565b935061208e81856020860161187d565b80840191505092915050565b5f6120a5828561206a565b91506120b1828461206a565b91508190509392505050565b7f4552433732313a207472616e736665722066726f6d20696e636f7272656374205f8201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b5f61211760258361186d565b9150612122826120bd565b604082019050919050565b5f6020820190508181035f8301526121448161210b565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6121a560248361186d565b91506121b08261214b565b604082019050919050565b5f6020820190508181035f8301526121d281612199565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c6572000000000000005f82015250565b5f61220d60198361186d565b9150612218826121d9565b602082019050919050565b5f6020820190508181035f83015261223a81612201565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e2045524337323152655f8201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b5f61229b60328361186d565b91506122a682612241565b604082019050919050565b5f6020820190508181035f8301526122c88161228f565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f612320826122fc565b61232a8185612306565b935061233a81856020860161187d565b612343816118a5565b840191505092915050565b5f6080820190506123615f830187611992565b61236e6020830186611992565b61237b6040830185611777565b818103606083015261238d8184612316565b905095945050505050565b5f815190506123a6816117db565b92915050565b5f602082840312156123c1576123c06117a8565b5b5f6123ce84828501612398565b91505092915050565b7f4552433732313a206d696e7420746f20746865207a65726f20616464726573735f82015250565b5f61240b60208361186d565b9150612416826123d7565b602082019050919050565b5f6020820190508181035f830152612438816123ff565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e746564000000005f82015250565b5f612473601c8361186d565b915061247e8261243f565b602082019050919050565b5f6020820190508181035f8301526124a081612467565b905091905056fea26469706673582212208fc63b3fe7d418eed04f64bcde8bb2ec22341cfa7091ee08ec6d6440ad3137b764736f6c63430008170033",
}

ERC721MetaData contains all meta data concerning the ERC721 contract.

Functions

This section is empty.

Types

type ERC20

type ERC20 struct {
	ERC20Caller     // Read-only binding to the contract
	ERC20Transactor // Write-only binding to the contract
	ERC20Filterer   // Log filterer for contract events
}

ERC20 is an auto generated Go binding around an Ethereum contract.

func DeployERC20

func DeployERC20(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC20, error)

DeployERC20 deploys a new Ethereum contract, binding an instance of ERC20 to it.

func NewERC20

func NewERC20(address common.Address, backend bind.ContractBackend) (*ERC20, error)

NewERC20 creates a new instance of ERC20, bound to a specific deployed contract.

type ERC20Approval

type ERC20Approval struct {
	Owner   common.Address
	Spender common.Address
	Value   *big.Int
	Raw     types.Log // Blockchain specific contextual infos
}

ERC20Approval represents a Approval event raised by the ERC20 contract.

type ERC20ApprovalIterator

type ERC20ApprovalIterator struct {
	Event *ERC20Approval // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

ERC20ApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC20 contract.

func (*ERC20ApprovalIterator) Close

func (it *ERC20ApprovalIterator) Close() error

Close terminates the iteration process, releasing any pending underlying resources.

func (*ERC20ApprovalIterator) Error

func (it *ERC20ApprovalIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*ERC20ApprovalIterator) Next

func (it *ERC20ApprovalIterator) Next() bool

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type ERC20Caller

type ERC20Caller struct {
	// contains filtered or unexported fields
}

ERC20Caller is an auto generated read-only Go binding around an Ethereum contract.

func NewERC20Caller

func NewERC20Caller(address common.Address, caller bind.ContractCaller) (*ERC20Caller, error)

NewERC20Caller creates a new read-only instance of ERC20, bound to a specific deployed contract.

func (*ERC20Caller) Allowance

func (_ERC20 *ERC20Caller) Allowance(opts *bind.CallOpts, owner common.Address, spender common.Address) (*big.Int, error)

Allowance is a free data retrieval call binding the contract method 0xdd62ed3e.

Solidity: function allowance(address owner, address spender) view returns(uint256)

func (*ERC20Caller) BalanceOf

func (_ERC20 *ERC20Caller) BalanceOf(opts *bind.CallOpts, account common.Address) (*big.Int, error)

BalanceOf is a free data retrieval call binding the contract method 0x70a08231.

Solidity: function balanceOf(address account) view returns(uint256)

func (*ERC20Caller) Decimals

func (_ERC20 *ERC20Caller) Decimals(opts *bind.CallOpts) (uint8, error)

Decimals is a free data retrieval call binding the contract method 0x313ce567.

Solidity: function decimals() view returns(uint8)

func (*ERC20Caller) Name

func (_ERC20 *ERC20Caller) Name(opts *bind.CallOpts) (string, error)

Name is a free data retrieval call binding the contract method 0x06fdde03.

Solidity: function name() view returns(string)

func (*ERC20Caller) Symbol

func (_ERC20 *ERC20Caller) Symbol(opts *bind.CallOpts) (string, error)

Symbol is a free data retrieval call binding the contract method 0x95d89b41.

Solidity: function symbol() view returns(string)

func (*ERC20Caller) TotalSupply

func (_ERC20 *ERC20Caller) TotalSupply(opts *bind.CallOpts) (*big.Int, error)

TotalSupply is a free data retrieval call binding the contract method 0x18160ddd.

Solidity: function totalSupply() view returns(uint256)

type ERC20CallerRaw

type ERC20CallerRaw struct {
	Contract *ERC20Caller // Generic read-only contract binding to access the raw methods on
}

ERC20CallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*ERC20CallerRaw) Call

func (_ERC20 *ERC20CallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type ERC20CallerSession

type ERC20CallerSession struct {
	Contract *ERC20Caller  // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts // Call options to use throughout this session
}

ERC20CallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*ERC20CallerSession) Allowance

func (_ERC20 *ERC20CallerSession) Allowance(owner common.Address, spender common.Address) (*big.Int, error)

Allowance is a free data retrieval call binding the contract method 0xdd62ed3e.

Solidity: function allowance(address owner, address spender) view returns(uint256)

func (*ERC20CallerSession) BalanceOf

func (_ERC20 *ERC20CallerSession) BalanceOf(account common.Address) (*big.Int, error)

BalanceOf is a free data retrieval call binding the contract method 0x70a08231.

Solidity: function balanceOf(address account) view returns(uint256)

func (*ERC20CallerSession) Decimals

func (_ERC20 *ERC20CallerSession) Decimals() (uint8, error)

Decimals is a free data retrieval call binding the contract method 0x313ce567.

Solidity: function decimals() view returns(uint8)

func (*ERC20CallerSession) Name

func (_ERC20 *ERC20CallerSession) Name() (string, error)

Name is a free data retrieval call binding the contract method 0x06fdde03.

Solidity: function name() view returns(string)

func (*ERC20CallerSession) Symbol

func (_ERC20 *ERC20CallerSession) Symbol() (string, error)

Symbol is a free data retrieval call binding the contract method 0x95d89b41.

Solidity: function symbol() view returns(string)

func (*ERC20CallerSession) TotalSupply

func (_ERC20 *ERC20CallerSession) TotalSupply() (*big.Int, error)

TotalSupply is a free data retrieval call binding the contract method 0x18160ddd.

Solidity: function totalSupply() view returns(uint256)

type ERC20Filterer

type ERC20Filterer struct {
	// contains filtered or unexported fields
}

ERC20Filterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewERC20Filterer

func NewERC20Filterer(address common.Address, filterer bind.ContractFilterer) (*ERC20Filterer, error)

NewERC20Filterer creates a new log filterer instance of ERC20, bound to a specific deployed contract.

func (*ERC20Filterer) FilterApproval

func (_ERC20 *ERC20Filterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, spender []common.Address) (*ERC20ApprovalIterator, error)

FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925.

Solidity: event Approval(address indexed owner, address indexed spender, uint256 value)

func (*ERC20Filterer) FilterTransfer

func (_ERC20 *ERC20Filterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address) (*ERC20TransferIterator, error)

FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Solidity: event Transfer(address indexed from, address indexed to, uint256 value)

func (*ERC20Filterer) ParseApproval

func (_ERC20 *ERC20Filterer) ParseApproval(log types.Log) (*ERC20Approval, error)

ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925.

Solidity: event Approval(address indexed owner, address indexed spender, uint256 value)

func (*ERC20Filterer) ParseTransfer

func (_ERC20 *ERC20Filterer) ParseTransfer(log types.Log) (*ERC20Transfer, error)

ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Solidity: event Transfer(address indexed from, address indexed to, uint256 value)

func (*ERC20Filterer) WatchApproval

func (_ERC20 *ERC20Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC20Approval, owner []common.Address, spender []common.Address) (event.Subscription, error)

WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925.

Solidity: event Approval(address indexed owner, address indexed spender, uint256 value)

func (*ERC20Filterer) WatchTransfer

func (_ERC20 *ERC20Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC20Transfer, from []common.Address, to []common.Address) (event.Subscription, error)

WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Solidity: event Transfer(address indexed from, address indexed to, uint256 value)

type ERC20Raw

type ERC20Raw struct {
	Contract *ERC20 // Generic contract binding to access the raw methods on
}

ERC20Raw is an auto generated low-level Go binding around an Ethereum contract.

func (*ERC20Raw) Call

func (_ERC20 *ERC20Raw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*ERC20Raw) Transact

func (_ERC20 *ERC20Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*ERC20Raw) Transfer

func (_ERC20 *ERC20Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type ERC20Session

type ERC20Session struct {
	Contract     *ERC20            // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

ERC20Session is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*ERC20Session) Allowance

func (_ERC20 *ERC20Session) Allowance(owner common.Address, spender common.Address) (*big.Int, error)

Allowance is a free data retrieval call binding the contract method 0xdd62ed3e.

Solidity: function allowance(address owner, address spender) view returns(uint256)

func (*ERC20Session) Approve

func (_ERC20 *ERC20Session) Approve(spender common.Address, amount *big.Int) (*types.Transaction, error)

Approve is a paid mutator transaction binding the contract method 0x095ea7b3.

Solidity: function approve(address spender, uint256 amount) returns(bool)

func (*ERC20Session) BalanceOf

func (_ERC20 *ERC20Session) BalanceOf(account common.Address) (*big.Int, error)

BalanceOf is a free data retrieval call binding the contract method 0x70a08231.

Solidity: function balanceOf(address account) view returns(uint256)

func (*ERC20Session) Decimals

func (_ERC20 *ERC20Session) Decimals() (uint8, error)

Decimals is a free data retrieval call binding the contract method 0x313ce567.

Solidity: function decimals() view returns(uint8)

func (*ERC20Session) DecreaseAllowance

func (_ERC20 *ERC20Session) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error)

DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7.

Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool)

func (*ERC20Session) IncreaseAllowance

func (_ERC20 *ERC20Session) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error)

IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351.

Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool)

func (*ERC20Session) Mint

func (_ERC20 *ERC20Session) Mint(amount *big.Int) (*types.Transaction, error)

Mint is a paid mutator transaction binding the contract method 0xa0712d68.

Solidity: function mint(uint256 amount) returns()

func (*ERC20Session) Name

func (_ERC20 *ERC20Session) Name() (string, error)

Name is a free data retrieval call binding the contract method 0x06fdde03.

Solidity: function name() view returns(string)

func (*ERC20Session) Symbol

func (_ERC20 *ERC20Session) Symbol() (string, error)

Symbol is a free data retrieval call binding the contract method 0x95d89b41.

Solidity: function symbol() view returns(string)

func (*ERC20Session) TotalSupply

func (_ERC20 *ERC20Session) TotalSupply() (*big.Int, error)

TotalSupply is a free data retrieval call binding the contract method 0x18160ddd.

Solidity: function totalSupply() view returns(uint256)

func (*ERC20Session) Transfer

func (_ERC20 *ERC20Session) Transfer(to common.Address, amount *big.Int) (*types.Transaction, error)

Transfer is a paid mutator transaction binding the contract method 0xa9059cbb.

Solidity: function transfer(address to, uint256 amount) returns(bool)

func (*ERC20Session) TransferFrom

func (_ERC20 *ERC20Session) TransferFrom(from common.Address, to common.Address, amount *big.Int) (*types.Transaction, error)

TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd.

Solidity: function transferFrom(address from, address to, uint256 amount) returns(bool)

type ERC20Transactor

type ERC20Transactor struct {
	// contains filtered or unexported fields
}

ERC20Transactor is an auto generated write-only Go binding around an Ethereum contract.

func NewERC20Transactor

func NewERC20Transactor(address common.Address, transactor bind.ContractTransactor) (*ERC20Transactor, error)

NewERC20Transactor creates a new write-only instance of ERC20, bound to a specific deployed contract.

func (*ERC20Transactor) Approve

func (_ERC20 *ERC20Transactor) Approve(opts *bind.TransactOpts, spender common.Address, amount *big.Int) (*types.Transaction, error)

Approve is a paid mutator transaction binding the contract method 0x095ea7b3.

Solidity: function approve(address spender, uint256 amount) returns(bool)

func (*ERC20Transactor) DecreaseAllowance

func (_ERC20 *ERC20Transactor) DecreaseAllowance(opts *bind.TransactOpts, spender common.Address, subtractedValue *big.Int) (*types.Transaction, error)

DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7.

Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool)

func (*ERC20Transactor) IncreaseAllowance

func (_ERC20 *ERC20Transactor) IncreaseAllowance(opts *bind.TransactOpts, spender common.Address, addedValue *big.Int) (*types.Transaction, error)

IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351.

Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool)

func (*ERC20Transactor) Mint

func (_ERC20 *ERC20Transactor) Mint(opts *bind.TransactOpts, amount *big.Int) (*types.Transaction, error)

Mint is a paid mutator transaction binding the contract method 0xa0712d68.

Solidity: function mint(uint256 amount) returns()

func (*ERC20Transactor) Transfer

func (_ERC20 *ERC20Transactor) Transfer(opts *bind.TransactOpts, to common.Address, amount *big.Int) (*types.Transaction, error)

Transfer is a paid mutator transaction binding the contract method 0xa9059cbb.

Solidity: function transfer(address to, uint256 amount) returns(bool)

func (*ERC20Transactor) TransferFrom

func (_ERC20 *ERC20Transactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, amount *big.Int) (*types.Transaction, error)

TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd.

Solidity: function transferFrom(address from, address to, uint256 amount) returns(bool)

type ERC20TransactorRaw

type ERC20TransactorRaw struct {
	Contract *ERC20Transactor // Generic write-only contract binding to access the raw methods on
}

ERC20TransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*ERC20TransactorRaw) Transact

func (_ERC20 *ERC20TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*ERC20TransactorRaw) Transfer

func (_ERC20 *ERC20TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type ERC20TransactorSession

type ERC20TransactorSession struct {
	Contract     *ERC20Transactor  // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

ERC20TransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*ERC20TransactorSession) Approve

func (_ERC20 *ERC20TransactorSession) Approve(spender common.Address, amount *big.Int) (*types.Transaction, error)

Approve is a paid mutator transaction binding the contract method 0x095ea7b3.

Solidity: function approve(address spender, uint256 amount) returns(bool)

func (*ERC20TransactorSession) DecreaseAllowance

func (_ERC20 *ERC20TransactorSession) DecreaseAllowance(spender common.Address, subtractedValue *big.Int) (*types.Transaction, error)

DecreaseAllowance is a paid mutator transaction binding the contract method 0xa457c2d7.

Solidity: function decreaseAllowance(address spender, uint256 subtractedValue) returns(bool)

func (*ERC20TransactorSession) IncreaseAllowance

func (_ERC20 *ERC20TransactorSession) IncreaseAllowance(spender common.Address, addedValue *big.Int) (*types.Transaction, error)

IncreaseAllowance is a paid mutator transaction binding the contract method 0x39509351.

Solidity: function increaseAllowance(address spender, uint256 addedValue) returns(bool)

func (*ERC20TransactorSession) Mint

func (_ERC20 *ERC20TransactorSession) Mint(amount *big.Int) (*types.Transaction, error)

Mint is a paid mutator transaction binding the contract method 0xa0712d68.

Solidity: function mint(uint256 amount) returns()

func (*ERC20TransactorSession) Transfer

func (_ERC20 *ERC20TransactorSession) Transfer(to common.Address, amount *big.Int) (*types.Transaction, error)

Transfer is a paid mutator transaction binding the contract method 0xa9059cbb.

Solidity: function transfer(address to, uint256 amount) returns(bool)

func (*ERC20TransactorSession) TransferFrom

func (_ERC20 *ERC20TransactorSession) TransferFrom(from common.Address, to common.Address, amount *big.Int) (*types.Transaction, error)

TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd.

Solidity: function transferFrom(address from, address to, uint256 amount) returns(bool)

type ERC20Transfer

type ERC20Transfer struct {
	From  common.Address
	To    common.Address
	Value *big.Int
	Raw   types.Log // Blockchain specific contextual infos
}

ERC20Transfer represents a Transfer event raised by the ERC20 contract.

type ERC20TransferIterator

type ERC20TransferIterator struct {
	Event *ERC20Transfer // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

ERC20TransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC20 contract.

func (*ERC20TransferIterator) Close

func (it *ERC20TransferIterator) Close() error

Close terminates the iteration process, releasing any pending underlying resources.

func (*ERC20TransferIterator) Error

func (it *ERC20TransferIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*ERC20TransferIterator) Next

func (it *ERC20TransferIterator) Next() bool

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type ERC721

type ERC721 struct {
	ERC721Caller     // Read-only binding to the contract
	ERC721Transactor // Write-only binding to the contract
	ERC721Filterer   // Log filterer for contract events
}

ERC721 is an auto generated Go binding around an Ethereum contract.

func DeployERC721

func DeployERC721(auth *bind.TransactOpts, backend bind.ContractBackend) (common.Address, *types.Transaction, *ERC721, error)

DeployERC721 deploys a new Ethereum contract, binding an instance of ERC721 to it.

func NewERC721

func NewERC721(address common.Address, backend bind.ContractBackend) (*ERC721, error)

NewERC721 creates a new instance of ERC721, bound to a specific deployed contract.

type ERC721Approval

type ERC721Approval struct {
	Owner    common.Address
	Approved common.Address
	TokenId  *big.Int
	Raw      types.Log // Blockchain specific contextual infos
}

ERC721Approval represents a Approval event raised by the ERC721 contract.

type ERC721ApprovalForAll

type ERC721ApprovalForAll struct {
	Owner    common.Address
	Operator common.Address
	Approved bool
	Raw      types.Log // Blockchain specific contextual infos
}

ERC721ApprovalForAll represents a ApprovalForAll event raised by the ERC721 contract.

type ERC721ApprovalForAllIterator

type ERC721ApprovalForAllIterator struct {
	Event *ERC721ApprovalForAll // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

ERC721ApprovalForAllIterator is returned from FilterApprovalForAll and is used to iterate over the raw logs and unpacked data for ApprovalForAll events raised by the ERC721 contract.

func (*ERC721ApprovalForAllIterator) Close

func (it *ERC721ApprovalForAllIterator) Close() error

Close terminates the iteration process, releasing any pending underlying resources.

func (*ERC721ApprovalForAllIterator) Error

func (it *ERC721ApprovalForAllIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*ERC721ApprovalForAllIterator) Next

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type ERC721ApprovalIterator

type ERC721ApprovalIterator struct {
	Event *ERC721Approval // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

ERC721ApprovalIterator is returned from FilterApproval and is used to iterate over the raw logs and unpacked data for Approval events raised by the ERC721 contract.

func (*ERC721ApprovalIterator) Close

func (it *ERC721ApprovalIterator) Close() error

Close terminates the iteration process, releasing any pending underlying resources.

func (*ERC721ApprovalIterator) Error

func (it *ERC721ApprovalIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*ERC721ApprovalIterator) Next

func (it *ERC721ApprovalIterator) Next() bool

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

type ERC721Caller

type ERC721Caller struct {
	// contains filtered or unexported fields
}

ERC721Caller is an auto generated read-only Go binding around an Ethereum contract.

func NewERC721Caller

func NewERC721Caller(address common.Address, caller bind.ContractCaller) (*ERC721Caller, error)

NewERC721Caller creates a new read-only instance of ERC721, bound to a specific deployed contract.

func (*ERC721Caller) BalanceOf

func (_ERC721 *ERC721Caller) BalanceOf(opts *bind.CallOpts, owner common.Address) (*big.Int, error)

BalanceOf is a free data retrieval call binding the contract method 0x70a08231.

Solidity: function balanceOf(address owner) view returns(uint256)

func (*ERC721Caller) CurrentTokenId

func (_ERC721 *ERC721Caller) CurrentTokenId(opts *bind.CallOpts) (*big.Int, error)

CurrentTokenId is a free data retrieval call binding the contract method 0x009a9b7b.

Solidity: function currentTokenId() view returns(uint256)

func (*ERC721Caller) GetApproved

func (_ERC721 *ERC721Caller) GetApproved(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error)

GetApproved is a free data retrieval call binding the contract method 0x081812fc.

Solidity: function getApproved(uint256 tokenId) view returns(address)

func (*ERC721Caller) IsApprovedForAll

func (_ERC721 *ERC721Caller) IsApprovedForAll(opts *bind.CallOpts, owner common.Address, operator common.Address) (bool, error)

IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5.

Solidity: function isApprovedForAll(address owner, address operator) view returns(bool)

func (*ERC721Caller) Name

func (_ERC721 *ERC721Caller) Name(opts *bind.CallOpts) (string, error)

Name is a free data retrieval call binding the contract method 0x06fdde03.

Solidity: function name() view returns(string)

func (*ERC721Caller) OwnerOf

func (_ERC721 *ERC721Caller) OwnerOf(opts *bind.CallOpts, tokenId *big.Int) (common.Address, error)

OwnerOf is a free data retrieval call binding the contract method 0x6352211e.

Solidity: function ownerOf(uint256 tokenId) view returns(address)

func (*ERC721Caller) SupportsInterface

func (_ERC721 *ERC721Caller) SupportsInterface(opts *bind.CallOpts, interfaceId [4]byte) (bool, error)

SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7.

Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool)

func (*ERC721Caller) Symbol

func (_ERC721 *ERC721Caller) Symbol(opts *bind.CallOpts) (string, error)

Symbol is a free data retrieval call binding the contract method 0x95d89b41.

Solidity: function symbol() view returns(string)

func (*ERC721Caller) TokenURI

func (_ERC721 *ERC721Caller) TokenURI(opts *bind.CallOpts, tokenId *big.Int) (string, error)

TokenURI is a free data retrieval call binding the contract method 0xc87b56dd.

Solidity: function tokenURI(uint256 tokenId) view returns(string)

type ERC721CallerRaw

type ERC721CallerRaw struct {
	Contract *ERC721Caller // Generic read-only contract binding to access the raw methods on
}

ERC721CallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.

func (*ERC721CallerRaw) Call

func (_ERC721 *ERC721CallerRaw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

type ERC721CallerSession

type ERC721CallerSession struct {
	Contract *ERC721Caller // Generic contract caller binding to set the session for
	CallOpts bind.CallOpts // Call options to use throughout this session
}

ERC721CallerSession is an auto generated read-only Go binding around an Ethereum contract, with pre-set call options.

func (*ERC721CallerSession) BalanceOf

func (_ERC721 *ERC721CallerSession) BalanceOf(owner common.Address) (*big.Int, error)

BalanceOf is a free data retrieval call binding the contract method 0x70a08231.

Solidity: function balanceOf(address owner) view returns(uint256)

func (*ERC721CallerSession) CurrentTokenId

func (_ERC721 *ERC721CallerSession) CurrentTokenId() (*big.Int, error)

CurrentTokenId is a free data retrieval call binding the contract method 0x009a9b7b.

Solidity: function currentTokenId() view returns(uint256)

func (*ERC721CallerSession) GetApproved

func (_ERC721 *ERC721CallerSession) GetApproved(tokenId *big.Int) (common.Address, error)

GetApproved is a free data retrieval call binding the contract method 0x081812fc.

Solidity: function getApproved(uint256 tokenId) view returns(address)

func (*ERC721CallerSession) IsApprovedForAll

func (_ERC721 *ERC721CallerSession) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error)

IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5.

Solidity: function isApprovedForAll(address owner, address operator) view returns(bool)

func (*ERC721CallerSession) Name

func (_ERC721 *ERC721CallerSession) Name() (string, error)

Name is a free data retrieval call binding the contract method 0x06fdde03.

Solidity: function name() view returns(string)

func (*ERC721CallerSession) OwnerOf

func (_ERC721 *ERC721CallerSession) OwnerOf(tokenId *big.Int) (common.Address, error)

OwnerOf is a free data retrieval call binding the contract method 0x6352211e.

Solidity: function ownerOf(uint256 tokenId) view returns(address)

func (*ERC721CallerSession) SupportsInterface

func (_ERC721 *ERC721CallerSession) SupportsInterface(interfaceId [4]byte) (bool, error)

SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7.

Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool)

func (*ERC721CallerSession) Symbol

func (_ERC721 *ERC721CallerSession) Symbol() (string, error)

Symbol is a free data retrieval call binding the contract method 0x95d89b41.

Solidity: function symbol() view returns(string)

func (*ERC721CallerSession) TokenURI

func (_ERC721 *ERC721CallerSession) TokenURI(tokenId *big.Int) (string, error)

TokenURI is a free data retrieval call binding the contract method 0xc87b56dd.

Solidity: function tokenURI(uint256 tokenId) view returns(string)

type ERC721Filterer

type ERC721Filterer struct {
	// contains filtered or unexported fields
}

ERC721Filterer is an auto generated log filtering Go binding around an Ethereum contract events.

func NewERC721Filterer

func NewERC721Filterer(address common.Address, filterer bind.ContractFilterer) (*ERC721Filterer, error)

NewERC721Filterer creates a new log filterer instance of ERC721, bound to a specific deployed contract.

func (*ERC721Filterer) FilterApproval

func (_ERC721 *ERC721Filterer) FilterApproval(opts *bind.FilterOpts, owner []common.Address, approved []common.Address, tokenId []*big.Int) (*ERC721ApprovalIterator, error)

FilterApproval is a free log retrieval operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925.

Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId)

func (*ERC721Filterer) FilterApprovalForAll

func (_ERC721 *ERC721Filterer) FilterApprovalForAll(opts *bind.FilterOpts, owner []common.Address, operator []common.Address) (*ERC721ApprovalForAllIterator, error)

FilterApprovalForAll is a free log retrieval operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31.

Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved)

func (*ERC721Filterer) FilterTransfer

func (_ERC721 *ERC721Filterer) FilterTransfer(opts *bind.FilterOpts, from []common.Address, to []common.Address, tokenId []*big.Int) (*ERC721TransferIterator, error)

FilterTransfer is a free log retrieval operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId)

func (*ERC721Filterer) ParseApproval

func (_ERC721 *ERC721Filterer) ParseApproval(log types.Log) (*ERC721Approval, error)

ParseApproval is a log parse operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925.

Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId)

func (*ERC721Filterer) ParseApprovalForAll

func (_ERC721 *ERC721Filterer) ParseApprovalForAll(log types.Log) (*ERC721ApprovalForAll, error)

ParseApprovalForAll is a log parse operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31.

Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved)

func (*ERC721Filterer) ParseTransfer

func (_ERC721 *ERC721Filterer) ParseTransfer(log types.Log) (*ERC721Transfer, error)

ParseTransfer is a log parse operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId)

func (*ERC721Filterer) WatchApproval

func (_ERC721 *ERC721Filterer) WatchApproval(opts *bind.WatchOpts, sink chan<- *ERC721Approval, owner []common.Address, approved []common.Address, tokenId []*big.Int) (event.Subscription, error)

WatchApproval is a free log subscription operation binding the contract event 0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925.

Solidity: event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId)

func (*ERC721Filterer) WatchApprovalForAll

func (_ERC721 *ERC721Filterer) WatchApprovalForAll(opts *bind.WatchOpts, sink chan<- *ERC721ApprovalForAll, owner []common.Address, operator []common.Address) (event.Subscription, error)

WatchApprovalForAll is a free log subscription operation binding the contract event 0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31.

Solidity: event ApprovalForAll(address indexed owner, address indexed operator, bool approved)

func (*ERC721Filterer) WatchTransfer

func (_ERC721 *ERC721Filterer) WatchTransfer(opts *bind.WatchOpts, sink chan<- *ERC721Transfer, from []common.Address, to []common.Address, tokenId []*big.Int) (event.Subscription, error)

WatchTransfer is a free log subscription operation binding the contract event 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef.

Solidity: event Transfer(address indexed from, address indexed to, uint256 indexed tokenId)

type ERC721Raw

type ERC721Raw struct {
	Contract *ERC721 // Generic contract binding to access the raw methods on
}

ERC721Raw is an auto generated low-level Go binding around an Ethereum contract.

func (*ERC721Raw) Call

func (_ERC721 *ERC721Raw) Call(opts *bind.CallOpts, result *[]interface{}, method string, params ...interface{}) error

Call invokes the (constant) contract method with params as input values and sets the output to result. The result type might be a single field for simple returns, a slice of interfaces for anonymous returns and a struct for named returns.

func (*ERC721Raw) Transact

func (_ERC721 *ERC721Raw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*ERC721Raw) Transfer

func (_ERC721 *ERC721Raw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type ERC721Session

type ERC721Session struct {
	Contract     *ERC721           // Generic contract binding to set the session for
	CallOpts     bind.CallOpts     // Call options to use throughout this session
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

ERC721Session is an auto generated Go binding around an Ethereum contract, with pre-set call and transact options.

func (*ERC721Session) Approve

func (_ERC721 *ERC721Session) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error)

Approve is a paid mutator transaction binding the contract method 0x095ea7b3.

Solidity: function approve(address to, uint256 tokenId) returns()

func (*ERC721Session) BalanceOf

func (_ERC721 *ERC721Session) BalanceOf(owner common.Address) (*big.Int, error)

BalanceOf is a free data retrieval call binding the contract method 0x70a08231.

Solidity: function balanceOf(address owner) view returns(uint256)

func (*ERC721Session) CurrentTokenId

func (_ERC721 *ERC721Session) CurrentTokenId() (*big.Int, error)

CurrentTokenId is a free data retrieval call binding the contract method 0x009a9b7b.

Solidity: function currentTokenId() view returns(uint256)

func (*ERC721Session) GetApproved

func (_ERC721 *ERC721Session) GetApproved(tokenId *big.Int) (common.Address, error)

GetApproved is a free data retrieval call binding the contract method 0x081812fc.

Solidity: function getApproved(uint256 tokenId) view returns(address)

func (*ERC721Session) IsApprovedForAll

func (_ERC721 *ERC721Session) IsApprovedForAll(owner common.Address, operator common.Address) (bool, error)

IsApprovedForAll is a free data retrieval call binding the contract method 0xe985e9c5.

Solidity: function isApprovedForAll(address owner, address operator) view returns(bool)

func (*ERC721Session) MintBatch

func (_ERC721 *ERC721Session) MintBatch(to common.Address, amount *big.Int) (*types.Transaction, error)

MintBatch is a paid mutator transaction binding the contract method 0x248b71fc.

Solidity: function mintBatch(address to, uint256 amount) returns()

func (*ERC721Session) Name

func (_ERC721 *ERC721Session) Name() (string, error)

Name is a free data retrieval call binding the contract method 0x06fdde03.

Solidity: function name() view returns(string)

func (*ERC721Session) OwnerOf

func (_ERC721 *ERC721Session) OwnerOf(tokenId *big.Int) (common.Address, error)

OwnerOf is a free data retrieval call binding the contract method 0x6352211e.

Solidity: function ownerOf(uint256 tokenId) view returns(address)

func (*ERC721Session) SafeTransferFrom

func (_ERC721 *ERC721Session) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error)

SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e.

Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns()

func (*ERC721Session) SafeTransferFrom0

func (_ERC721 *ERC721Session) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error)

SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde.

Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns()

func (*ERC721Session) SetApprovalForAll

func (_ERC721 *ERC721Session) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error)

SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465.

Solidity: function setApprovalForAll(address operator, bool approved) returns()

func (*ERC721Session) SupportsInterface

func (_ERC721 *ERC721Session) SupportsInterface(interfaceId [4]byte) (bool, error)

SupportsInterface is a free data retrieval call binding the contract method 0x01ffc9a7.

Solidity: function supportsInterface(bytes4 interfaceId) view returns(bool)

func (*ERC721Session) Symbol

func (_ERC721 *ERC721Session) Symbol() (string, error)

Symbol is a free data retrieval call binding the contract method 0x95d89b41.

Solidity: function symbol() view returns(string)

func (*ERC721Session) TokenURI

func (_ERC721 *ERC721Session) TokenURI(tokenId *big.Int) (string, error)

TokenURI is a free data retrieval call binding the contract method 0xc87b56dd.

Solidity: function tokenURI(uint256 tokenId) view returns(string)

func (*ERC721Session) TransferFrom

func (_ERC721 *ERC721Session) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error)

TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd.

Solidity: function transferFrom(address from, address to, uint256 tokenId) returns()

type ERC721Transactor

type ERC721Transactor struct {
	// contains filtered or unexported fields
}

ERC721Transactor is an auto generated write-only Go binding around an Ethereum contract.

func NewERC721Transactor

func NewERC721Transactor(address common.Address, transactor bind.ContractTransactor) (*ERC721Transactor, error)

NewERC721Transactor creates a new write-only instance of ERC721, bound to a specific deployed contract.

func (*ERC721Transactor) Approve

func (_ERC721 *ERC721Transactor) Approve(opts *bind.TransactOpts, to common.Address, tokenId *big.Int) (*types.Transaction, error)

Approve is a paid mutator transaction binding the contract method 0x095ea7b3.

Solidity: function approve(address to, uint256 tokenId) returns()

func (*ERC721Transactor) MintBatch

func (_ERC721 *ERC721Transactor) MintBatch(opts *bind.TransactOpts, to common.Address, amount *big.Int) (*types.Transaction, error)

MintBatch is a paid mutator transaction binding the contract method 0x248b71fc.

Solidity: function mintBatch(address to, uint256 amount) returns()

func (*ERC721Transactor) SafeTransferFrom

func (_ERC721 *ERC721Transactor) SafeTransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error)

SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e.

Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns()

func (*ERC721Transactor) SafeTransferFrom0

func (_ERC721 *ERC721Transactor) SafeTransferFrom0(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error)

SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde.

Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns()

func (*ERC721Transactor) SetApprovalForAll

func (_ERC721 *ERC721Transactor) SetApprovalForAll(opts *bind.TransactOpts, operator common.Address, approved bool) (*types.Transaction, error)

SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465.

Solidity: function setApprovalForAll(address operator, bool approved) returns()

func (*ERC721Transactor) TransferFrom

func (_ERC721 *ERC721Transactor) TransferFrom(opts *bind.TransactOpts, from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error)

TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd.

Solidity: function transferFrom(address from, address to, uint256 tokenId) returns()

type ERC721TransactorRaw

type ERC721TransactorRaw struct {
	Contract *ERC721Transactor // Generic write-only contract binding to access the raw methods on
}

ERC721TransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.

func (*ERC721TransactorRaw) Transact

func (_ERC721 *ERC721TransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error)

Transact invokes the (paid) contract method with params as input values.

func (*ERC721TransactorRaw) Transfer

func (_ERC721 *ERC721TransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error)

Transfer initiates a plain transaction to move funds to the contract, calling its default method if one is available.

type ERC721TransactorSession

type ERC721TransactorSession struct {
	Contract     *ERC721Transactor // Generic contract transactor binding to set the session for
	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
}

ERC721TransactorSession is an auto generated write-only Go binding around an Ethereum contract, with pre-set transact options.

func (*ERC721TransactorSession) Approve

func (_ERC721 *ERC721TransactorSession) Approve(to common.Address, tokenId *big.Int) (*types.Transaction, error)

Approve is a paid mutator transaction binding the contract method 0x095ea7b3.

Solidity: function approve(address to, uint256 tokenId) returns()

func (*ERC721TransactorSession) MintBatch

func (_ERC721 *ERC721TransactorSession) MintBatch(to common.Address, amount *big.Int) (*types.Transaction, error)

MintBatch is a paid mutator transaction binding the contract method 0x248b71fc.

Solidity: function mintBatch(address to, uint256 amount) returns()

func (*ERC721TransactorSession) SafeTransferFrom

func (_ERC721 *ERC721TransactorSession) SafeTransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error)

SafeTransferFrom is a paid mutator transaction binding the contract method 0x42842e0e.

Solidity: function safeTransferFrom(address from, address to, uint256 tokenId) returns()

func (*ERC721TransactorSession) SafeTransferFrom0

func (_ERC721 *ERC721TransactorSession) SafeTransferFrom0(from common.Address, to common.Address, tokenId *big.Int, data []byte) (*types.Transaction, error)

SafeTransferFrom0 is a paid mutator transaction binding the contract method 0xb88d4fde.

Solidity: function safeTransferFrom(address from, address to, uint256 tokenId, bytes data) returns()

func (*ERC721TransactorSession) SetApprovalForAll

func (_ERC721 *ERC721TransactorSession) SetApprovalForAll(operator common.Address, approved bool) (*types.Transaction, error)

SetApprovalForAll is a paid mutator transaction binding the contract method 0xa22cb465.

Solidity: function setApprovalForAll(address operator, bool approved) returns()

func (*ERC721TransactorSession) TransferFrom

func (_ERC721 *ERC721TransactorSession) TransferFrom(from common.Address, to common.Address, tokenId *big.Int) (*types.Transaction, error)

TransferFrom is a paid mutator transaction binding the contract method 0x23b872dd.

Solidity: function transferFrom(address from, address to, uint256 tokenId) returns()

type ERC721Transfer

type ERC721Transfer struct {
	From    common.Address
	To      common.Address
	TokenId *big.Int
	Raw     types.Log // Blockchain specific contextual infos
}

ERC721Transfer represents a Transfer event raised by the ERC721 contract.

type ERC721TransferIterator

type ERC721TransferIterator struct {
	Event *ERC721Transfer // Event containing the contract specifics and raw log
	// contains filtered or unexported fields
}

ERC721TransferIterator is returned from FilterTransfer and is used to iterate over the raw logs and unpacked data for Transfer events raised by the ERC721 contract.

func (*ERC721TransferIterator) Close

func (it *ERC721TransferIterator) Close() error

Close terminates the iteration process, releasing any pending underlying resources.

func (*ERC721TransferIterator) Error

func (it *ERC721TransferIterator) Error() error

Error returns any retrieval or parsing error occurred during filtering.

func (*ERC721TransferIterator) Next

func (it *ERC721TransferIterator) Next() bool

Next advances the iterator to the subsequent event, returning whether there are any more events found. In case of a retrieval or parsing error, false is returned and Error() can be queried for the exact failure.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL