@settlemint/solidity-token-erc721
Version:
Smart contract set to build an ERC721 token in SettleMint
1 lines • 72.9 kB
JSON
{"abi":[{"type":"constructor","inputs":[{"name":"proxyRegistryAddress_","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"_proxyRegistryAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"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":"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":"mint","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"tokenId","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":"setProxyRegistryAddress","inputs":[{"name":"proxyRegistryAddress_","type":"address","internalType":"address"}],"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},{"type":"error","name":"ERC721IncorrectOwner","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"},{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"ERC721InsufficientApproval","inputs":[{"name":"operator","type":"address","internalType":"address"},{"name":"tokenId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ERC721InvalidApprover","inputs":[{"name":"approver","type":"address","internalType":"address"}]},{"type":"error","name":"ERC721InvalidOperator","inputs":[{"name":"operator","type":"address","internalType":"address"}]},{"type":"error","name":"ERC721InvalidOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}]},{"type":"error","name":"ERC721InvalidReceiver","inputs":[{"name":"receiver","type":"address","internalType":"address"}]},{"type":"error","name":"ERC721InvalidSender","inputs":[{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"ERC721NonexistentToken","inputs":[{"name":"tokenId","type":"uint256","internalType":"uint256"}]}],"bytecode":{"object":"0x608060405234610339576110276020813803918261001c8161033d565b93849283398101031261033957516001600160a01b0381169081900361033957610046604061033d565b90600a8252694d6f636b45524337323160b01b6020830152610068604061033d565b60048152634d37323160e01b602082015282519091906001600160401b03811161024d575f54600181811c9116801561032f575b602082101461022f57601f81116102cd575b506020601f821160011461026c57819293945f92610261575b50508160011b915f199060031b1c1916175f555b81516001600160401b03811161024d57600154600181811c91168015610243575b602082101461022f57601f81116101cc575b50602092601f821160011461016b57928192935f92610160575b50508160011b915f199060031b1c1916176001555b600680546001600160a01b031916919091179055604051610cc490816103638239f35b015190505f80610128565b601f1982169360015f52805f20915f5b8681106101b4575083600195961061019c575b505050811b0160015561013d565b01515f1960f88460031b161c191690555f808061018e565b9192602060018192868501518155019401920161017b565b60015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f830160051c81019160208410610225575b601f0160051c01905b81811061021a575061010e565b5f815560010161020d565b9091508190610204565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100fc565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c7565b601f198216905f8052805f20915f5b8181106102b55750958360019596971061029d575b505050811b015f556100db565b01515f1960f88460031b161c191690555f8080610290565b9192602060018192868b01518155019401920161027b565b5f80527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563601f830160051c81019160208410610325575b601f0160051c01905b81811061031a57506100ae565b5f815560010161030d565b9091508190610304565b90607f169061009c565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761024d5760405256fe6080806040526004361015610012575f80fd5b5f905f3560e01c90816301ffc9a71461077a5750806306fdde03146106c2578063081812fc14610686578063095ea7b3146105b857806323b872dd146105a157806340c10f191461049c57806342842e0e146104735780636352211e1461044357806370a08231146103f257806389cd503a146103ca57806395d89b41146102c2578063a22cb46514610227578063b88d4fde1461019d578063c87b56dd14610140578063d26ea6c0146101075763e985e9c5146100ce575f80fd5b346101045760403660031901126101045760206100fa6100ec610809565b6100f461081f565b90610b77565b6040519015158152f35b80fd5b5034610104576020366003190112610104576001600160a01b03610129610809565b166001600160601b0360a01b600654161760065580f35b346101995760203660031901126101995761015c600435610c5a565b505f60405161016c60208261086f565b5261019560405161017e60208261086f565b5f81526040519182916020835260208301906107e5565b0390f35b5f80fd5b34610199576080366003190112610199576101b6610809565b6101be61081f565b6064359167ffffffffffffffff83116101995736602384011215610199578260040135916101eb836108a5565b926101f9604051948561086f565b8084523660248287010111610199576020815f9260246102259801838801378501015260443591610a37565b005b3461019957604036600319011261019957610240610809565b60243590811515809203610199576001600160a01b03169081156102af57335f52600560205260405f20825f5260205260405f2060ff1981541660ff83161790556040519081527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a3005b50630b61174360e31b5f5260045260245ffd5b34610199575f366003190112610199576040515f6001548060011c906001811680156103c0575b6020831081146103ac57828552908115610388575060011461032a575b610195836103168185038261086f565b6040519182916020835260208301906107e5565b91905060015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6915f905b80821061036e57509091508101602001610316610306565b919260018160209254838588010152019101909291610356565b60ff191660208086019190915291151560051b840190910191506103169050610306565b634e487b7160e01b5f52602260045260245ffd5b91607f16916102e9565b34610199575f366003190112610199576006546040516001600160a01b039091168152602090f35b34610199576020366003190112610199576001600160a01b03610413610809565b168015610430575f526003602052602060405f2054604051908152f35b6322718ad960e21b5f525f60045260245ffd5b34610199576020366003190112610199576020610461600435610c5a565b6040516001600160a01b039091168152f35b346101995761022561048436610835565b906040519261049460208561086f565b5f8452610a37565b34610199576040366003190112610199576104b5610809565b6001600160a01b0316602435811561058e575f818152600260205260409020546001600160a01b0316801515929091908361055b575b805f52600360205260405f2060018154019055815f52600260205260405f20816001600160601b0360a01b825416179055827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a45061054857005b6339e3563760e11b5f525f60045260245ffd5b5f82815260046020526040902080546001600160a01b0319169055825f52600360205260405f205f1981540190556104eb565b633250574960e11b5f525f60045260245ffd5b34610199576102256105b236610835565b916108c1565b34610199576040366003190112610199576105d1610809565b6024356105dd81610c5a565b33151580610673575b80610662575b61064f5781906001600160a01b0384811691167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a45f90815260046020526040902080546001600160a01b0319166001600160a01b03909216919091179055005b63a9fbf51f60e01b5f523360045260245ffd5b5061066d3382610b77565b156105ec565b506001600160a01b0381163314156105e6565b34610199576020366003190112610199576004356106a381610c5a565b505f526004602052602060018060a01b0360405f205416604051908152f35b34610199575f366003190112610199576040515f5f548060011c90600181168015610770575b6020831081146103ac57828552908115610388575060011461071457610195836103168185038261086f565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061075657509091508101602001610316610306565b91926001816020925483858801015201910190929161073e565b91607f16916106e8565b34610199576020366003190112610199576004359063ffffffff60e01b8216809203610199576020916380ac58cd60e01b81149081156107d4575b81156107c3575b5015158152f35b6301ffc9a760e01b149050836107bc565b635b5e139f60e01b811491506107b5565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019957565b602435906001600160a01b038216820361019957565b6060906003190112610199576004356001600160a01b038116810361019957906024356001600160a01b0381168103610199579060443590565b90601f8019910116810190811067ffffffffffffffff82111761089157604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff811161089157601f01601f191660200190565b6001600160a01b039091169190821561058e575f828152600260205260409020546001600160a01b0316928290331515806109b4575b5084610981575b805f52600360205260405f2060018154019055815f52600260205260405f20816001600160601b0360a01b825416179055847fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a46001600160a01b031680830361096957505050565b6364283d7b60e01b5f5260045260245260445260645ffd5b5f82815260046020526040902080546001600160a01b0319169055845f52600360205260405f205f1981540190556108fe565b909150806109f8575b156109ca5782905f6108f7565b82846109e257637e27328960e01b5f5260045260245ffd5b63177e802f60e01b5f523360045260245260445ffd5b503384148015610a27575b806109bd57505f838152600460205260409020546001600160a01b031633146109bd565b50610a323385610b77565b610a03565b9291610a448183866108c1565b813b610a51575b50505050565b604051630a85bd0160e11b81523360048201526001600160a01b0394851660248201526044810191909152608060648201529216919060209082908190610a9c9060848301906107e5565b03815f865af15f9181610b32575b50610aff57503d15610af8573d610ac0816108a5565b90610ace604051928361086f565b81523d5f602083013e5b80519081610af35782633250574960e11b5f5260045260245ffd5b602001fd5b6060610ad8565b6001600160e01b03191663757a42ff60e11b01610b2057505f808080610a4b565b633250574960e11b5f5260045260245ffd5b9091506020813d602011610b6f575b81610b4e6020938361086f565b8101031261019957516001600160e01b03198116810361019957905f610aaa565b3d9150610b41565b6006546001600160a01b031680610bb6575b5060018060a01b03165f52600560205260405f209060018060a01b03165f5260205260ff60405f20541690565b60405163c455279160e01b81526001600160a01b038316600482015290602090829060249082905afa908115610c4f575f91610c0d575b506001600160a01b03838116911614610c06575f610b89565b5050600190565b90506020813d602011610c47575b81610c286020938361086f565b8101031261019957516001600160a01b0381168103610199575f610bed565b3d9150610c1b565b6040513d5f823e3d90fd5b5f818152600260205260409020546001600160a01b0316908115610c7c575090565b637e27328960e01b5f5260045260245ffdfea2646970667358221220d5e2221aac57feeb1f5cdbd6ba39ebc7deea9b49e080f7dbb3c0ffc902a191c664736f6c634300081e0033","sourceMap":"252:429:53:-:0;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;252:429:53;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;252:429:53;;;;;;;:::i;:::-;;;;-1:-1:-1;;;252:429:53;;;;;;;;;-1:-1:-1;;;;;252:429:53;;;;-1:-1:-1;252:429:53;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;-1:-1:-1;;;;;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;312:45:4;252:429:53;;-1:-1:-1;;;;;;252:429:53;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;-1:-1:-1;252:429:53;;-1:-1:-1;252:429:53;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;-1:-1:-1;252:429:53;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;-1:-1:-1;252:429:53;;;;;-1:-1:-1;252:429:53;;;;;;;;;;-1:-1:-1;252:429:53;;;-1:-1:-1;252:429:53;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;;-1:-1:-1;;252:429:53;;;-1:-1:-1;;;;;252:429:53;;;;;;;;;;:::o","linkReferences":{}},"deployedBytecode":{"object":"0x6080806040526004361015610012575f80fd5b5f905f3560e01c90816301ffc9a71461077a5750806306fdde03146106c2578063081812fc14610686578063095ea7b3146105b857806323b872dd146105a157806340c10f191461049c57806342842e0e146104735780636352211e1461044357806370a08231146103f257806389cd503a146103ca57806395d89b41146102c2578063a22cb46514610227578063b88d4fde1461019d578063c87b56dd14610140578063d26ea6c0146101075763e985e9c5146100ce575f80fd5b346101045760403660031901126101045760206100fa6100ec610809565b6100f461081f565b90610b77565b6040519015158152f35b80fd5b5034610104576020366003190112610104576001600160a01b03610129610809565b166001600160601b0360a01b600654161760065580f35b346101995760203660031901126101995761015c600435610c5a565b505f60405161016c60208261086f565b5261019560405161017e60208261086f565b5f81526040519182916020835260208301906107e5565b0390f35b5f80fd5b34610199576080366003190112610199576101b6610809565b6101be61081f565b6064359167ffffffffffffffff83116101995736602384011215610199578260040135916101eb836108a5565b926101f9604051948561086f565b8084523660248287010111610199576020815f9260246102259801838801378501015260443591610a37565b005b3461019957604036600319011261019957610240610809565b60243590811515809203610199576001600160a01b03169081156102af57335f52600560205260405f20825f5260205260405f2060ff1981541660ff83161790556040519081527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a3005b50630b61174360e31b5f5260045260245ffd5b34610199575f366003190112610199576040515f6001548060011c906001811680156103c0575b6020831081146103ac57828552908115610388575060011461032a575b610195836103168185038261086f565b6040519182916020835260208301906107e5565b91905060015f527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6915f905b80821061036e57509091508101602001610316610306565b919260018160209254838588010152019101909291610356565b60ff191660208086019190915291151560051b840190910191506103169050610306565b634e487b7160e01b5f52602260045260245ffd5b91607f16916102e9565b34610199575f366003190112610199576006546040516001600160a01b039091168152602090f35b34610199576020366003190112610199576001600160a01b03610413610809565b168015610430575f526003602052602060405f2054604051908152f35b6322718ad960e21b5f525f60045260245ffd5b34610199576020366003190112610199576020610461600435610c5a565b6040516001600160a01b039091168152f35b346101995761022561048436610835565b906040519261049460208561086f565b5f8452610a37565b34610199576040366003190112610199576104b5610809565b6001600160a01b0316602435811561058e575f818152600260205260409020546001600160a01b0316801515929091908361055b575b805f52600360205260405f2060018154019055815f52600260205260405f20816001600160601b0360a01b825416179055827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a45061054857005b6339e3563760e11b5f525f60045260245ffd5b5f82815260046020526040902080546001600160a01b0319169055825f52600360205260405f205f1981540190556104eb565b633250574960e11b5f525f60045260245ffd5b34610199576102256105b236610835565b916108c1565b34610199576040366003190112610199576105d1610809565b6024356105dd81610c5a565b33151580610673575b80610662575b61064f5781906001600160a01b0384811691167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9255f80a45f90815260046020526040902080546001600160a01b0319166001600160a01b03909216919091179055005b63a9fbf51f60e01b5f523360045260245ffd5b5061066d3382610b77565b156105ec565b506001600160a01b0381163314156105e6565b34610199576020366003190112610199576004356106a381610c5a565b505f526004602052602060018060a01b0360405f205416604051908152f35b34610199575f366003190112610199576040515f5f548060011c90600181168015610770575b6020831081146103ac57828552908115610388575060011461071457610195836103168185038261086f565b5f8080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563939250905b80821061075657509091508101602001610316610306565b91926001816020925483858801015201910190929161073e565b91607f16916106e8565b34610199576020366003190112610199576004359063ffffffff60e01b8216809203610199576020916380ac58cd60e01b81149081156107d4575b81156107c3575b5015158152f35b6301ffc9a760e01b149050836107bc565b635b5e139f60e01b811491506107b5565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b038216820361019957565b602435906001600160a01b038216820361019957565b6060906003190112610199576004356001600160a01b038116810361019957906024356001600160a01b0381168103610199579060443590565b90601f8019910116810190811067ffffffffffffffff82111761089157604052565b634e487b7160e01b5f52604160045260245ffd5b67ffffffffffffffff811161089157601f01601f191660200190565b6001600160a01b039091169190821561058e575f828152600260205260409020546001600160a01b0316928290331515806109b4575b5084610981575b805f52600360205260405f2060018154019055815f52600260205260405f20816001600160601b0360a01b825416179055847fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a46001600160a01b031680830361096957505050565b6364283d7b60e01b5f5260045260245260445260645ffd5b5f82815260046020526040902080546001600160a01b0319169055845f52600360205260405f205f1981540190556108fe565b909150806109f8575b156109ca5782905f6108f7565b82846109e257637e27328960e01b5f5260045260245ffd5b63177e802f60e01b5f523360045260245260445ffd5b503384148015610a27575b806109bd57505f838152600460205260409020546001600160a01b031633146109bd565b50610a323385610b77565b610a03565b9291610a448183866108c1565b813b610a51575b50505050565b604051630a85bd0160e11b81523360048201526001600160a01b0394851660248201526044810191909152608060648201529216919060209082908190610a9c9060848301906107e5565b03815f865af15f9181610b32575b50610aff57503d15610af8573d610ac0816108a5565b90610ace604051928361086f565b81523d5f602083013e5b80519081610af35782633250574960e11b5f5260045260245ffd5b602001fd5b6060610ad8565b6001600160e01b03191663757a42ff60e11b01610b2057505f808080610a4b565b633250574960e11b5f5260045260245ffd5b9091506020813d602011610b6f575b81610b4e6020938361086f565b8101031261019957516001600160e01b03198116810361019957905f610aaa565b3d9150610b41565b6006546001600160a01b031680610bb6575b5060018060a01b03165f52600560205260405f209060018060a01b03165f5260205260ff60405f20541690565b60405163c455279160e01b81526001600160a01b038316600482015290602090829060249082905afa908115610c4f575f91610c0d575b506001600160a01b03838116911614610c06575f610b89565b5050600190565b90506020813d602011610c47575b81610c286020938361086f565b8101031261019957516001600160a01b0381168103610199575f610bed565b3d9150610c1b565b6040513d5f823e3d90fd5b5f818152600260205260409020546001600160a01b0316908115610c7c575090565b637e27328960e01b5f5260045260245ffdfea2646970667358221220d5e2221aac57feeb1f5cdbd6ba39ebc7deea9b49e080f7dbb3c0ffc902a191c664736f6c634300081e0033","sourceMap":"252:429:53:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;;;;;:::i;:::-;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;-1:-1:-1;;;;;252:429:53;;:::i;:::-;;-1:-1:-1;;;;;252:429:53;;462:45:4;252:429:53;;;462:45:4;252:429:53;;;;;;;;;-1:-1:-1;;252:429:53;;;;2618:22:28;252:429:53;;2618:22:28;:::i;:::-;;252:429:53;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;2702:75:28;252:429:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;252:429:53;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;252:429:53;;15418:22:28;;15414:91;;735:10:39;252:429:53;;15514:18:28;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15575:41:28;252:429:53;735:10:39;15575:41:28;;252:429:53;15414:91:28;15463:31;;;;252:429:53;15463:31:28;252:429:53;;;;15463:31:28;252:429:53;;;;;;-1:-1:-1;;252:429:53;;;;;;;2473:7:28;252:429:53;;2473:7:28;252:429:53;;2473:7:28;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;2473:7:28;252:429:53;;;;;;;;;;;;-1:-1:-1;252:429:53;;-1:-1:-1;252:429:53;;;;;;;;;;2473:7:28;252:429:53;;;;;;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;216:36:4;252:429:53;;;-1:-1:-1;;;;;252:429:53;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;-1:-1:-1;;;;;252:429:53;;:::i;:::-;;1947:19:28;;1943:87;;252:429:53;;2046:9:28;252:429:53;;;;;;;;;;;;;1943:87:28;1989:30;;;252:429:53;1989:30:28;252:429:53;;;;;1989:30:28;252:429:53;;;;;;-1:-1:-1;;252:429:53;;;;;2192:22:28;252:429:53;;2192:22:28;:::i;:::-;252:429:53;;-1:-1:-1;;;;;252:429:53;;;;;;;;;;4550:39:28;252:429:53;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;4550:39:28;:::i;252:429:53:-;;;;;;-1:-1:-1;;252:429:53;;;;;;:::i;:::-;-1:-1:-1;;;;;252:429:53;;;9691:16:28;;9687:87;;252:429:53;;;;5470:7:28;252:429:53;;;;;;-1:-1:-1;;;;;252:429:53;8830:18:28;;;;252:429:53;;;8830:18:28;8826:256;;252:429:53;;;;9156:9:28;252:429:53;;;;;8704:18:28;252:429:53;;;;;;;;5470:7:28;252:429:53;;;;;;-1:-1:-1;;;;;252:429:53;;;;;;;;9246:27:28;;252:429:53;9246:27:28;;9849:96;;;252:429:53;9849:96:28;9903:31;;;252:429:53;9903:31:28;252:429:53;;;;;9903:31:28;8826:256;252:429:53;;;;15066:15:28;252:429:53;;;;;;;-1:-1:-1;;;;;;252:429:53;;;;;;9037:9:28;252:429:53;;;;;;;;;;;;8826:256:28;;9687:87;9730:33;;;252:429:53;9730:33:28;252:429:53;;;;;9730:33:28;252:429:53;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;-1:-1:-1;;252:429:53;;;;;;:::i;:::-;;;14663:22:28;;;:::i;:::-;735:10:39;14813:18:28;;:35;;;252:429:53;14813:69:28;;;252:429:53;14809:142:28;;252:429:53;;-1:-1:-1;;;;;252:429:53;;;;;15003:28:28;252:429:53;;15003:28:28;252:429:53;;;;;;;;;;;;-1:-1:-1;;;;;;252:429:53;-1:-1:-1;;;;;252:429:53;;;;;;;;;;14809:142:28;14909:27;;;252:429:53;14909:27:28;735:10:39;252:429:53;;;;14909:27:28;14813:69;735:10:39;14853:29:28;735:10:39;14853:29:28;;:::i;:::-;14852:30;14813:69;;:35;-1:-1:-1;;;;;;252:429:53;;735:10:39;14835:13:28;;14813:35;;252:429:53;;;;;;-1:-1:-1;;252:429:53;;;;;;3385:22:28;;;:::i;:::-;;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;252:429:53;;;;;;;-1:-1:-1;252:429:53;;-1:-1:-1;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;252:429:53;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1664:40:28;;;:104;;;;252:429:53;1664:156:28;;;;252:429:53;;;;;;;1664:156:28;-1:-1:-1;;;829:40:46;;-1:-1:-1;1664:156:28;;;:104;-1:-1:-1;;;1720:48:28;;;-1:-1:-1;1664:104:28;;252:429:53;;;;;;;;;;;;;;;;;-1:-1:-1;252:429:53;;;;;;;;-1:-1:-1;;252:429:53;;;;:::o;:::-;;;;-1:-1:-1;;;;;252:429:53;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;252:429:53;;;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;;;;;252:429:53;;;;;;;;;-1:-1:-1;;;;;252:429:53;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;252:429:53;;;;;-1:-1:-1;252:429:53;;;;;;;;;-1:-1:-1;;252:429:53;;;;:::o;3852:578:28:-;-1:-1:-1;;;;;252:429:53;;;;3852:578:28;3946:16;;3942:87;;3960:1;252:429:53;;;5470:7:28;252:429:53;;;;;;-1:-1:-1;;;;;252:429:53;;;;735:10:39;8704:18:28;;;8700:86;;3852:578;8830:18;;8826:256;;3852:578;252:429:53;3960:1:28;252:429:53;9156:9:28;252:429:53;;;3960:1:28;252:429:53;9096:16:28;252:429:53;;;;;;3960:1:28;252:429:53;5470:7:28;252:429:53;;;3960:1:28;252:429:53;;-1:-1:-1;;;;;252:429:53;;;;;;;;9246:27:28;;3960:1;9246:27;;-1:-1:-1;;;;;252:429:53;4319:21:28;;;4315:109;;3852:578;;;:::o;4315:109::-;4363:50;;;3960:1;4363:50;;252:429:53;;;;;;3960:1:28;4363:50;8826:256;252:429:53;;;;15066:15:28;252:429:53;;;;;;;-1:-1:-1;;;;;;252:429:53;;;;3960:1:28;252:429:53;9037:9:28;252:429:53;;;3960:1:28;252:429:53;;;;;;;;8826:256:28;;8700:86;6185:127;;-1:-1:-1;6185:127:28;;;8700:86;6862:39;6858:255;;8700:86;;;;;6858:255;6921:19;;252:429:53;;6967:31:28;;;3960:1;6967:31;;252:429:53;;3960:1:28;6967:31;6917:186;7044:44;;;3960:1;7044:44;735:10:39;7044:44:28;252:429:53;;;;3960:1:28;7044:44;6185:127;735:10:39;;6223:16:28;;:52;;;;6185:127;6223:88;6185:127;6223:88;-1:-1:-1;3960:1:28;252:429:53;;;5705:15:28;252:429:53;;;;;;-1:-1:-1;;;;;252:429:53;735:10:39;6279:32:28;6185:127;;6223:52;735:10:39;6243:32:28;735:10:39;6243:32:28;;:::i;:::-;6223:52;;4630:233;;;4766:7;;;;;:::i;:::-;1173:14:37;;1169:744;;4630:233:28;;;;;:::o;1169:744:37:-;252:429:53;;-1:-1:-1;;;1211:67:37;;735:10:39;1211:67:37;;;252:429:53;-1:-1:-1;;;;;252:429:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1211:67:37;;1190:1;1211:67;;;1190:1;;1211:67;;;1169:744;-1:-1:-1;1207:696:37;;-1:-1:-1;252:429:53;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;1190:1:37;252:429:53;;;;;;;;1568:18:37;;;9730:33:28;;;;1190:1:37;1672:39;1211:67;252:429:53;;1190:1:37;1672:39;1564:325;252:429:53;1758:113:37;;252:429:53;;;;1207:696:37;-1:-1:-1;;;;;;252:429:53;-1:-1:-1;;;1325:51:37;1321:182;;1207:696;1169:744;;;;;;1321:182;9730:33:28;;;1190:1:37;1445:39;1211:67;252:429:53;;1190:1:37;1445:39;1211:67;;;;252:429:53;1211:67:37;;252:429:53;1211:67:37;;;;;;252:429:53;1211:67:37;;;:::i;:::-;;;252:429:53;;;;;-1:-1:-1;;;;;;252:429:53;;;;;;1211:67:37;;;;;;;-1:-1:-1;1211:67:37;;520:436:4;638:21;252:429:53;-1:-1:-1;;;;;252:429:53;;634:259:4;;520:436;252:429:53;;;;;;;;;3776:18:28;252:429:53;;;;;3776:35:28;252:429:53;;;;;;-1:-1:-1;252:429:53;;;;;-1:-1:-1;252:429:53;;;520:436:4;:::o;634:259::-;252:429:53;;-1:-1:-1;;;795:29:4;;-1:-1:-1;;;;;252:429:53;;795:29:4;;;252:429:53;;;;;;795:29:4;;252:429:53;;795:29:4;;;;;;;252:429:53;795:29:4;;;634:259;-1:-1:-1;;;;;;252:429:53;;;;;787:50:4;783:100;;634:259;;;783:100;857:11;;864:4;857:11;:::o;795:29::-;;;252:429:53;795:29:4;;252:429:53;795:29:4;;;;;;252:429:53;795:29:4;;;:::i;:::-;;;252:429:53;;;;;-1:-1:-1;;;;;252:429:53;;;;;;795:29:4;;;;;;-1:-1:-1;795:29:4;;;252:429:53;;;;;;;;;15858:241:28;-1:-1:-1;252:429:53;;;5470:7:28;252:429:53;;;;;;-1:-1:-1;;;;;252:429:53;;15987:19:28;;15983:88;;16080:12;15858:241;:::o;15983:88::-;6967:31;;;-1:-1:-1;16029:31:28;;252:429:53;;-1:-1:-1;16029:31:28","linkReferences":{}},"methodIdentifiers":{"_proxyRegistryAddress()":"89cd503a","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","getApproved(uint256)":"081812fc","isApprovedForAll(address,address)":"e985e9c5","mint(address,uint256)":"40c10f19","name()":"06fdde03","ownerOf(uint256)":"6352211e","safeTransferFrom(address,address,uint256)":"42842e0e","safeTransferFrom(address,address,uint256,bytes)":"b88d4fde","setApprovalForAll(address,bool)":"a22cb465","setProxyRegistryAddress(address)":"d26ea6c0","supportsInterface(bytes4)":"01ffc9a7","symbol()":"95d89b41","tokenURI(uint256)":"c87b56dd","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.30+commit.73712a01\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"proxyRegistryAddress_\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"ERC721IncorrectOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ERC721InsufficientApproval\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"approver\",\"type\":\"address\"}],\"name\":\"ERC721InvalidApprover\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"ERC721InvalidOperator\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"ERC721InvalidOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"receiver\",\"type\":\"address\"}],\"name\":\"ERC721InvalidReceiver\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"ERC721InvalidSender\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ERC721NonexistentToken\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"ApprovalForAll\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"_proxyRegistryAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"}],\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"safeTransferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\"}],\"name\":\"setApprovalForAll\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"proxyRegistryAddress_\",\"type\":\"address\"}],\"name\":\"setProxyRegistryAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"ERC721IncorrectOwner(address,uint256,address)\":[{\"details\":\"Indicates an error related to the ownership over a particular token. Used in transfers.\",\"params\":{\"owner\":\"Address of the current owner of a token.\",\"sender\":\"Address whose tokens are being transferred.\",\"tokenId\":\"Identifier number of a token.\"}}],\"ERC721InsufficientApproval(address,uint256)\":[{\"details\":\"Indicates a failure with the `operator`\\u2019s approval. Used in transfers.\",\"params\":{\"operator\":\"Address that may be allowed to operate on tokens without being their owner.\",\"tokenId\":\"Identifier number of a token.\"}}],\"ERC721InvalidApprover(address)\":[{\"details\":\"Indicates a failure with the `approver` of a token to be approved. Used in approvals.\",\"params\":{\"approver\":\"Address initiating an approval operation.\"}}],\"ERC721InvalidOperator(address)\":[{\"details\":\"Indicates a failure with the `operator` to be approved. Used in approvals.\",\"params\":{\"operator\":\"Address that may be allowed to operate on tokens without being their owner.\"}}],\"ERC721InvalidOwner(address)\":[{\"details\":\"Indicates that an address can't be an owner. For example, `address(0)` is a forbidden owner in ERC-20. Used in balance queries.\",\"params\":{\"owner\":\"Address of the current owner of a token.\"}}],\"ERC721InvalidReceiver(address)\":[{\"details\":\"Indicates a failure with the token `receiver`. Used in transfers.\",\"params\":{\"receiver\":\"Address to which tokens are being transferred.\"}}],\"ERC721InvalidSender(address)\":[{\"details\":\"Indicates a failure with the token `sender`. Used in transfers.\",\"params\":{\"sender\":\"Address whose tokens are being transferred.\"}}],\"ERC721NonexistentToken(uint256)\":[{\"details\":\"Indicates a `tokenId` whose `owner` is the zero address.\",\"params\":{\"tokenId\":\"Identifier number of a token.\"}}]},\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `owner` enables `approved` to manage the `tokenId` token.\"},\"ApprovalForAll(address,address,bool)\":{\"details\":\"Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `tokenId` token is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Gives permission to `to` to transfer `tokenId` token to another account. The approval is cleared when the token is transferred. Only a single account can be approved at a time, so approving the zero address clears previous approvals. Requirements: - The caller must own the token or be an approved operator. - `tokenId` must exist. Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the number of tokens in ``owner``'s account.\"},\"getApproved(uint256)\":{\"details\":\"Returns the account approved for `tokenId` token. Requirements: - `tokenId` must exist.\"},\"name()\":{\"details\":\"Returns the token collection name.\"},\"ownerOf(uint256)\":{\"details\":\"Returns the owner of the `tokenId` token. Requirements: - `tokenId` must exist.\"},\"safeTransferFrom(address,address,uint256)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients are aware of the ERC-721 protocol to prevent tokens from being forever locked. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must have been allowed to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"safeTransferFrom(address,address,uint256,bytes)\":{\"details\":\"Safely transfers `tokenId` token from `from` to `to`. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must exist and be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. Emits a {Transfer} event.\"},\"setApprovalForAll(address,bool)\":{\"details\":\"Approve or remove `operator` as an operator for the caller. Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. Requirements: - The `operator` cannot be the address zero. Emits an {ApprovalForAll} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[ERC section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"symbol()\":{\"details\":\"Returns the token collection symbol.\"},\"tokenURI(uint256)\":{\"details\":\"Returns the Uniform Resource Identifier (URI) for `tokenId` token.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `tokenId` token from `from` to `to`. WARNING: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC-721 or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must understand this adds an external call which potentially creates a reentrancy vulnerability. Requirements: - `from` cannot be the zero address. - `to` cannot be the zero address. - `tokenId` token must be owned by `from`. - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"test/ERC721OpenSeaGassLessTest.t.sol\":\"ERC721Mock\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@openzeppelin/=node_modules/@openzeppelin/\",\":forge-std/=lib/forge-std/src/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"contracts/extensions/ERC721OpenSeaGassLess.sol\":{\"keccak256\":\"0x327e5a6f66e94c75cef42add1e7bba5c23e5261d30cd78a626af00bf8482241d\",\"license\":\"FSL-1.1-MIT\",\"urls\":[\"bzz-raw://bedbad01afb6bae32e4a90ea4b63bcf71be69c9b447d5463414faf7f0d060283\",\"dweb:/ipfs/QmWnj4CHAjVBwYEoD8e75qZ2hS3qzoBkkhHhd3dBRakm59\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x4b2a5a85e045dcf6a082700c7252e43854c2eed88f860aaa18ec1e85218ae2bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://98d060ed5be569a92d908fc358149039dc8f833d61973aa1b9d1d8235676bf6d\",\"dweb:/ipfs/QmaWQpn5dJmbMS5skwmPPMeUWZG35BLkignPpcA3zyagEs\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xac92c13b860c991644592312ddded2cba1ac741360a7b8902e12e9b28b9614ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f910448483ba0902764c5606f40e070b5899ec174de044b057ffa19678f058b5\",\"dweb:/ipfs/QmNgcS1S1igRY4BhSBaXynoB1BpiRiQzJAeLZyhwFynCZy\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0xb2cbca1a6ffa19926c31bad47393a070305c809fe5d88c52214d5c51ce0733c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cf20975cfd9733910305fc8e746c7631c2ab210289aab036cec32f3c530335c7\",\"dweb:/ipfs/QmYYvVzvAN1uCt8XtDmWo5x2inSVJBYajFexe92rVWEuMf\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0x07852d61fcf2fe5e25fa66e607f52cb97eab8adaf2e3fd4cb8404eb69baee90c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed97c9c7372b77a0b417c1285f631aa1396d8c3104f14b80abd559f305d67d1e\",\"dweb:/ipfs/QmeHLpi3g9XKLT8z76AF5ofwrXQm2yxPDpWztCZ2wPDW6i\"]},\"lib/forge-std/src/StdConstants.sol\":{\"keccak256\":\"0x319ccdabfa2c0b2428301445873270ffea20f0e039d4fd5e6eeba65158e4e534\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b633f9d3a719e1d035ce7daa6cc051ddf89a72d34200d14cec37728e245cdabc\",\"dweb:/ipfs/QmRP7HQJpHMx1CsFrY8tXVVx1DQmi2dcb2BoGfiWaA923r\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdInvariant.sol\":{\"keccak256\":\"0x4dab3021edfa9511bbdd80c48f060ef62eaf457f99eaf841f561fc2557d9a08d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07668628673174cf8f27f8f4e1f862bab775013ec247eb34f698c5005f229391\",\"dweb:/ipfs/QmPJsiiYwmCZXMsHmQv5tg8VF3CAhNdat7WnKLTWZZH2v5\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x9de30197a56fe90c443948c3feeb20e9a29e0e9c0b8fa893e8ac4c1344acd589\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://444783bd32a8abfd3fbcf16c5d1cdccef5608b2a9cfddd789fa1b045b077ed2a\",\"dweb:/ipfs/QmY94NxHDFW1Knxs9GcgFhq2QZQpRXgor4NMamKQ9CCVyp\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xcb876f5421e5aae334f9a6c5d549131c18ad347f1035d2a1e920f2623f346c85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://28076e06b01be4095f860fa9b142c284bac34c0813948e0a52d11acc15502db6\",\"dweb:/ipfs/QmVR6XFTmBatJAVvYgkZxN21R5zvYTU4ard4Aow8TmXjy9\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x04102de0a79398e4bdea57b7a4818655b4cc66d6f81d1cff08bf428cd0b384cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://53edc6c8f7f67cafc0129f039637c77d979880f7f1947defea31e8f0c05095bc\",\"dweb:/ipfs/QmUKXJd1vFCkxxrkXNLURdXrx2apoyWQFrFb5UqNkjdHVi\"]},\"lib/forge-std/src/StdStyle.sol\":{\"keccak256\":\"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8\",\"dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK\"]},\"lib/forge-std/src/StdToml.sol\":{\"keccak256\":\"0xab2a75a814f280bfcb4e8bfad9c2108fb3ab29a15cfaf74fa0758594e836ea80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9baa5aacc065172569c3b1d12bb42b5b703476690de481c4c11e88acc216da33\",\"dweb:/ipfs/QmetZcd1KvZHKYMbdKBVNpKHidqYHsWc2A2NZeh5NLow5y\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0xb2469a902a326074034c4f7081d868113db0edbb7cf48b86528af2d6b07295f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1430a81c4978be875e2a3b31a8bfa4e1438fecd327f23771b690d64db63c020a\",\"dweb:/ipfs/QmW6aB2u1LNaRgGQFwjV7L7UbxsRg63iJ7AuujPouEa4cT\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x3dda6083a83dfa3e8526e97bcc28e862ee2442dd58fe94d5c426d65b8e38f73c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://33f8c02e4dabdab86a6825125856446a8657eacd712318b51b7818e4a6f6e3f4\",\"dweb:/ipfs/QmRKSjVnrk54yr8wTK2e6QxRjiuba2H8HJSKunHAkdo7RG\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x9a713f54fb97feca432be59f4105779b6041d55f09e814b47e820dabac8a6ffe\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://1b023d74b975d6ec572f2fa88b8310688c223803ef71376667b780188772e1a2\",\"dweb:/ipfs/QmbxEQvNUBxeSUi1w9Fr1BvmLiUyGwXrSDTfX3sWTY5WXV\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x4bbf47eb762cef93729d6ef15e78789957147039b113e5d4df48e3d3fd16d0f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af9e3a7c3d82fb5b10b57ca4d1a82f2acbef80c077f6f6ef0cc0187c7bfd9f57\",\"dweb:/ipfs/QmR9VzmnBDJpgiDP6CHT6truehukF9HpYvuP6kRiJbDwPP\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x3b8fe79f48f065a4e4d35362171304a33784c3a90febae5f2787805a438de12f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://61de63af08803549299e68b6e6e88d40f3c5afac450e4ee0a228c66a61ba003d\",\"dweb:/ipfs/QmWVoQ5rrVxnczD4ZZoPbD4PC9Z3uExJtzjD4awTqd14MZ\"]},\"lib/forge-std/src/interfaces/IMulticall3.sol\":{\"keccak256\":\"0xeb0daba50f85adb160209f03ebf7b3b548e09651aa799087795daf17b1495c7a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b5b356871e51267728d69c662d8d8ce653dd0a8edc47098b6f8064ea1173e28\",\"dweb:/ipfs/QmRJTAmV68NYGSkDGKrGpsJnEZ8wQF4dDCevXGtNU4RWtQ\"]},\"lib/forge-std/src/safeconsole.sol\":{\"keccak256\":\"0xbef9786cb49d3eade757bad87568c49c8c8f35721f0193c95ffb055d9e466e11\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3bafd2b0b2d28068d329f95ea8a1fbce3719c257fcb863fc01abcbafd8d531ab\",\"dweb:/ipfs/QmUeaFjKWTVDBsHVfSob4mwt6A5hTnKDz22HaUXeZhypa3\"]},\"node_modules/@openzeppelin/contracts/interfaces/draft-IERC6093.sol\":{\"keccak256\":\"0x19fdfb0f3b89a230e7dbd1cf416f1a6b531a3ee5db4da483f946320fc74afc0e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3490d794728f5bfecb46820431adaff71ba374141545ec20b650bb60353fac23\",\"dweb:/ipfs/QmPsfxjVpMcZbpE7BH93DzTpEaktESigEw4SmDzkXuJ4WR\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/ERC721.sol\":{\"keccak256\":\"0x6ead281d4569c26b3dee7313aefff24add906f3600b57d8aef1255a17d6b34e5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://aec0f9c9f14f829353663e1946bf0ea00a1771ff6ddb4f7cbe14893397b4b55c\",\"dweb:/ipfs/QmVMR3SdijdM2BpL9Yp3u7Riaxqgs1FnZ1Rfg2CMjKGtVS\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol\":{\"keccak256\":\"0xf78f05f3b8c9f75570e85300d7b4600d7f6f6a198449273f31d44c1641adb46f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e28b872613b45e0e801d4995aa4380be2531147bfe2d85c1d6275f1de514fba3\",\"dweb:/ipfs/QmeeFcfShHYaS3BdgVj78nxR28ZaVUwbvr66ud8bT6kzw9\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0x88cd5e3bee2e8c36b8d9058fbcaa81ad5704281b25634122234b55ea853d8055\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8dc7e7ab5b8ea36c15027ab04221b05d1c970f47a53e9fd47ead8ca665d49c7e\",\"dweb:/ipfs/Qmeeph7fsDyfRr8vb2L8KcDEmKPb224TAayMvgqgGAnqpL\"]},\"node_modules/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol\":{\"keccak256\":\"0xf46268c37522320bb2119a5a394bc5c739a95c0c574c8d08e8c643f4d06e5c76\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://517e4b295f35b9947c72ad7379a6089439ece7bb6f4a2ea0a159da13046c039e\",\"dweb:/ipfs/QmZXzkSfLUbvujig3zVbpDHykpHhqLpvQtdiN3B5j4TA3u\"]},\"node_modules/@openzeppelin/contracts/token/ERC72