[ { "inputs": [ { "internalType": "string", "name": "name_", "type": "string" }, { "internalType": "string", "name": "symbol_", "type": "string" }, { "internalType": "address", "name": "access_", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "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": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "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": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getTokensBurned", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "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": "to", "type": "address" }, { "internalType": "uint256", "name": "tokensBurned", "type": "uint256" } ], "name": "safeMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "access_", "type": "address" } ], "name": "setAccessControl", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "bool", "name": "", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "PDE_", "type": "address" } ], "name": "setPDE", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_tokenURI", "type": "string" } ], "name": "setTokenURI", "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": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "transferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60806040523480156200001157600080fd5b506040516200167838038062001678833981016040819052620000349162000145565b8282600062000044838262000261565b50600162000053828262000261565b5050600680546001600160a01b0319166001600160a01b039390931692909217909155506200032d915050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620000a857600080fd5b81516001600160401b0380821115620000c557620000c562000080565b604051601f8301601f19908116603f01168101908282118183101715620000f057620000f062000080565b816040528381526020925086838588010111156200010d57600080fd5b600091505b8382101562000131578582018301518183018401529082019062000112565b600093810190920192909252949350505050565b6000806000606084860312156200015b57600080fd5b83516001600160401b03808211156200017357600080fd5b620001818783880162000096565b945060208601519150808211156200019857600080fd5b50620001a78682870162000096565b604086015190935090506001600160a01b0381168114620001c757600080fd5b809150509250925092565b600181811c90821680620001e757607f821691505b6020821081036200020857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200025c57600081815260208120601f850160051c81016020861015620002375750805b601f850160051c820191505b81811015620002585782815560010162000243565b5050505b505050565b81516001600160401b038111156200027d576200027d62000080565b62000295816200028e8454620001d2565b846200020e565b602080601f831160018114620002cd5760008415620002b45750858301515b600019600386901b1c1916600185901b17855562000258565b600085815260208120601f198616915b82811015620002fe57888601518255948401946001909101908401620002dd565b50858210156200031d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61133b806200033d6000396000f3fe608060405234801561001057600080fd5b50600436106101515760003560e01c806370a08231116100cd578063b88d4fde11610081578063c87b56dd11610066578063c87b56dd146102a3578063e0df5b6f146102b6578063e985e9c5146102c957600080fd5b8063b88d4fde1461027c578063c774bc5b1461029057600080fd5b8063a1448194116100b2578063a144819414610248578063a22cb4651461025b578063b2651e291461026957600080fd5b806370a082311461021f57806395d89b411461024057600080fd5b806319129e5a1161012457806342842e0e1161010957806342842e0e146101e657806342966c68146101f95780636352211e1461020c57600080fd5b806319129e5a146101d357806323b872dd146101e657600080fd5b806301ffc9a71461015657806306fdde031461017e578063081812fc14610193578063095ea7b3146101bf575b600080fd5b610169610164366004610e20565b6102df565b60405190151581526020015b60405180910390f35b6101866103c4565b6040516101759190610e69565b6101a76101a1366004610eb7565b50600090565b6040516001600160a01b039091168152602001610175565b6101d16101cd366004610eec565b5050565b005b6101d16101e1366004610f16565b610456565b6101d16101f4366004610f31565b505050565b6101d1610207366004610eb7565b610548565b6101a761021a366004610eb7565b610698565b61023261022d366004610f16565b6106fd565b604051908152602001610175565b610186610797565b6101d1610256366004610eec565b6107a6565b6101d16101cd366004610f7b565b610232610277366004610eb7565b610910565b6101d161028a36600461103e565b50505050565b6101d161029e366004610f16565b61092e565b6101866102b1366004610eb7565b610a1b565b6101d16102c43660046110ba565b610a2e565b6101696102d736600461110b565b600092915050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f80ac58cd00000000000000000000000000000000000000000000000000000000148061037257507fffffffff0000000000000000000000000000000000000000000000000000000082167f5b5e139f00000000000000000000000000000000000000000000000000000000145b806103be57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b6060600080546103d39061113e565b80601f01602080910402602001604051908101604052809291908181526020018280546103ff9061113e565b801561044c5780601f106104215761010080835404028352916020019161044c565b820191906000526020600020905b81548152906001019060200180831161042f57829003601f168201915b5050505050905090565b6006546001600160a01b0316639e97b8f66003336040518363ffffffff1660e01b8152600401610487929190611178565b602060405180830381865afa1580156104a4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c891906111b2565b6105195760405162461bcd60e51b815260206004820152601f60248201527f4255524e3a20726571756972656420726f6c65206e6f74206772616e7465640060448201526064015b60405180910390fd5b6006805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6006546001600160a01b0316639e97b8f66003336040518363ffffffff1660e01b8152600401610579929190611178565b602060405180830381865afa158015610596573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ba91906111b2565b8061063257506006546001600160a01b0316639e97b8f66002336040518363ffffffff1660e01b81526004016105f1929190611178565b602060405180830381865afa15801561060e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063291906111b2565b61067e5760405162461bcd60e51b815260206004820152601f60248201527f4255524e3a20726571756972656420726f6c65206e6f74206772616e746564006044820152606401610510565b61068781610b70565b6000908152600a6020526040812055565b6000818152600260205260408120546001600160a01b0316806103be5760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610510565b60006001600160a01b03821661077b5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e657200000000000000000000000000000000000000000000006064820152608401610510565b506001600160a01b031660009081526003602052604090205490565b6060600180546103d39061113e565b6006546001600160a01b0316639e97b8f66003336040518363ffffffff1660e01b81526004016107d7929190611178565b602060405180830381865afa1580156107f4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081891906111b2565b8061089057506006546001600160a01b0316639e97b8f66002336040518363ffffffff1660e01b815260040161084f929190611178565b602060405180830381865afa15801561086c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061089091906111b2565b6108dc5760405162461bcd60e51b815260206004820152601f60248201527f4255524e3a20726571756972656420726f6c65206e6f74206772616e746564006044820152606401610510565b6108e882600854610c12565b600880546000908152600a602052604081208390558154610908906111cf565b909155505050565b600061091b82610daa565b506000908152600a602052604090205490565b6006546001600160a01b0316639e97b8f66003336040518363ffffffff1660e01b815260040161095f929190611178565b602060405180830381865afa15801561097c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a091906111b2565b6109ec5760405162461bcd60e51b815260206004820152601f60248201527f4255524e3a20726571756972656420726f6c65206e6f74206772616e746564006044820152606401610510565b6007805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6060610a2682610daa565b6103be610e11565b6006546001600160a01b0316639e97b8f66003336040518363ffffffff1660e01b8152600401610a5f929190611178565b602060405180830381865afa158015610a7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa091906111b2565b80610b1857506006546001600160a01b0316639e97b8f66002336040518363ffffffff1660e01b8152600401610ad7929190611178565b602060405180830381865afa158015610af4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1891906111b2565b610b645760405162461bcd60e51b815260206004820152601f60248201527f4255524e3a20726571756972656420726f6c65206e6f74206772616e746564006044820152606401610510565b60096101cd8282611245565b6000610b7b82610698565b9050610b8682610698565b6000838152600460209081526040808320805473ffffffffffffffffffffffffffffffffffffffff199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6001600160a01b038216610c685760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610510565b6000818152600260205260409020546001600160a01b031615610ccd5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610510565b6000818152600260205260409020546001600160a01b031615610d325760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610510565b6001600160a01b0382166000818152600360209081526040808320805460010190558483526002909152808220805473ffffffffffffffffffffffffffffffffffffffff19168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000818152600260205260409020546001600160a01b0316610e0e5760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610510565b50565b6060600980546103d39061113e565b600060208284031215610e3257600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610e6257600080fd5b9392505050565b600060208083528351808285015260005b81811015610e9657858101830151858201604001528201610e7a565b506000604082860101526040601f19601f8301168501019250505092915050565b600060208284031215610ec957600080fd5b5035919050565b80356001600160a01b0381168114610ee757600080fd5b919050565b60008060408385031215610eff57600080fd5b610f0883610ed0565b946020939093013593505050565b600060208284031215610f2857600080fd5b610e6282610ed0565b600080600060608486031215610f4657600080fd5b610f4f84610ed0565b9250610f5d60208501610ed0565b9150604084013590509250925092565b8015158114610e0e57600080fd5b60008060408385031215610f8e57600080fd5b610f9783610ed0565b91506020830135610fa781610f6d565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600067ffffffffffffffff80841115610fe357610fe3610fb2565b604051601f8501601f19908116603f0116810190828211818310171561100b5761100b610fb2565b8160405280935085815286868601111561102457600080fd5b858560208301376000602087830101525050509392505050565b6000806000806080858703121561105457600080fd5b61105d85610ed0565b935061106b60208601610ed0565b925060408501359150606085013567ffffffffffffffff81111561108e57600080fd5b8501601f8101871361109f57600080fd5b6110ae87823560208401610fc8565b91505092959194509250565b6000602082840312156110cc57600080fd5b813567ffffffffffffffff8111156110e357600080fd5b8201601f810184136110f457600080fd5b61110384823560208401610fc8565b949350505050565b6000806040838503121561111e57600080fd5b61112783610ed0565b915061113560208401610ed0565b90509250929050565b600181811c9082168061115257607f821691505b60208210810361117257634e487b7160e01b600052602260045260246000fd5b50919050565b604081016004841061119a57634e487b7160e01b600052602160045260246000fd5b9281526001600160a01b039190911660209091015290565b6000602082840312156111c457600080fd5b8151610e6281610f6d565b600060001982036111f057634e487b7160e01b600052601160045260246000fd5b5060010190565b601f8211156101f457600081815260208120601f850160051c8101602086101561121e5750805b601f850160051c820191505b8181101561123d5782815560010161122a565b505050505050565b815167ffffffffffffffff81111561125f5761125f610fb2565b6112738161126d845461113e565b846111f7565b602080601f8311600181146112a857600084156112905750858301515b600019600386901b1c1916600185901b17855561123d565b600085815260208120601f198616915b828110156112d7578886015182559484019460019091019084016112b8565b50858210156112f55787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fea264697066735822122016826177c013cb58f304d8224965a94b18cf46b609367c5c349926565bda69e364736f6c63430008110033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000c7dd252565ae90a0f4126b369eee6c83ab1296580000000000000000000000000000000000000000000000000000000000000001420000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014200000000000000000000000000000000000000000000000000000000000000