353 txs
372 calls
constructor
constructor()
functions
domainSeparator
viewfunction domainSeparator() view returns (bytes32)
loreAt
viewfunction loreAt(address tokenContract, uint256 tokenId, uint256 startIdx, uint256 endIdx) view returns (tuple[])
loreFor
viewfunction loreFor(address tokenContract, uint256 tokenId) view returns (tuple[])
loreTokenContractAllowlist
viewfunction loreTokenContractAllowlist(address) view returns (bool)
numLore
viewfunction numLore(address tokenContract, uint256 tokenId) view returns (uint256)
owner
viewfunction owner() view returns (address)
scribeAllowlist
viewfunction scribeAllowlist(address) view returns (bool)
tokenLore
viewfunction tokenLore(address, uint256, uint256) view returns (address creator, uint256 parentLoreId, bool nsfw, bool struck, string loreMetadataURI)
addLore
nonpayablefunction addLore(address tokenContract, uint256 tokenId, uint256 parentLoreId, bool nsfw, string loreMetadataURI)
addLoreWithScribe
nonpayablefunction addLoreWithScribe(address tokenContract, uint256 tokenId, uint256 parentLoreId, bool nsfw, string loreMetadataURI)
addLoreWithSignature
nonpayablefunction addLoreWithSignature(bytes signature, address tokenContract, uint256 tokenId, uint256 loreId, uint256 parentLoreId, bool nsfw, string loreMetadataURI)
renounceOwnership
nonpayablefunction renounceOwnership()
setLoreTokenAllowlist
nonpayablefunction setLoreTokenAllowlist(address tokenContract, bool isListed)
setScribeAllowlist
nonpayablefunction setScribeAllowlist(address scribeAddress, bool isScribe)
strikeLore
nonpayablefunction strikeLore(address tokenContract, uint256 tokenId, uint256 loreIdx, bool newStruck)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateLoreMetadataURI
nonpayablefunction updateLoreMetadataURI(address tokenContract, uint256 tokenId, uint256 loreIdx, string newLoreMetadataURI)
updateLoreNSFW
nonpayablefunction updateLoreNSFW(address tokenContract, uint256 tokenId, uint256 loreIdx, bool newNSFW)
events
LoreAdded
event LoreAdded(address tokenContract, uint256 tokenId, uint256 loreIdx)
LoreStruck
event LoreStruck(address tokenContract, uint256 tokenId, uint256 loreIdx)
LoreUpdated
event LoreUpdated(address tokenContract, uint256 tokenId, uint256 loreIdx)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x6101206040523480156200001257600080fd5b506040518060400160405280600a815260200169426f6f6b4f664c6f726560b01b815250604051806040016040528060018152602001603160f81b8152506200006a62000064620000cc60201b60201c565b620000d0565b815160208084019190912082519183019190912060c082905260e08190524660a0527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f620000ba81848462000120565b60805261010052506200018892505050565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600083838346306040516020016200013d9594939291906200015c565b6040516020818303038152906040528051906020012090509392505050565b9485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b60805160a05160c05160e05161010051612463620001cd600039600061174d0152600061178f0152600061176e015260006116fb0152600061172401526124636000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806398e91529116100a2578063d87dd50011610071578063d87dd5001461023b578063ea76b8bd1461024e578063f2fde38b14610261578063f6545ec514610274578063f698da251461029857610116565b806398e91529146101ef5780639fe3220c14610202578063c272a2c114610215578063cfc245011461022857610116565b80635a746d7d116100e95780635a746d7d1461018c578063715018a61461019f578063723b0763146101a75780638da5cb5b146101c7578063938a6a41146101dc57610116565b806304bf4a211461011b5780630e25de40146101305780631a491e3a146101595780634639dc5714610179575b600080fd5b61012e610129366004611b05565b6102a0565b005b61014361013e366004611cb2565b610313565b6040516101509190611e7e565b60405180910390f35b61016c610167366004611acd565b610537565b6040516101509190611f1d565b61012e610187366004611b05565b61054c565b61014361019a366004611b39565b6105b6565b61012e610709565b6101ba6101b5366004611b39565b610754565b6040516101509190611f28565b6101cf61077c565b6040516101509190611e07565b61012e6101ea366004611c51565b61078c565b61012e6101fd366004611b98565b6109b5565b61012e610210366004611b98565b610be7565b61016c610223366004611acd565b610e19565b61012e610236366004611bdf565b610e2e565b61012e610249366004611cec565b6110bb565b61012e61025c366004611bdf565b6113ab565b61012e61026f366004611acd565b61149e565b610287610282366004611b64565b61150f565b604051610150959493929190611e1b565b6101ba611605565b6102a8611614565b6001600160a01b03166102b961077c565b6001600160a01b0316146102e85760405162461bcd60e51b81526004016102df90612260565b60405180910390fd5b6001600160a01b03919091166000908152600360205260409020805460ff1916911515919091179055565b60606000610321848461237f565b61032c906001612367565b67ffffffffffffffff81111561035257634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561038b57816020015b610378611947565b8152602001906001900390816103705790505b509050600061039a858561237f565b6103a5906001612367565b905060005b8181101561052b576001600160a01b03881660009081526001602090815260408083208a845290915290206103df8288612367565b815481106103fd57634e487b7160e01b600052603260045260246000fd5b60009182526020918290206040805160a081018252600490930290910180546001600160a01b03168352600181015493830193909352600283015460ff8082161515928401929092526101009004161515606082015260038201805491929160808401919061046b90612396565b80601f016020809104026020016040519081016040528092919081815260200182805461049790612396565b80156104e45780601f106104b9576101008083540402835291602001916104e4565b820191906000526020600020905b8154815290600101906020018083116104c757829003601f168201915b50505050508152505083828151811061050d57634e487b7160e01b600052603260045260246000fd5b60200260200101819052508080610523906123d1565b9150506103aa565b50909695505050505050565b60026020526000908152604090205460ff1681565b610554611614565b6001600160a01b031661056561077c565b6001600160a01b03161461058b5760405162461bcd60e51b81526004016102df90612260565b6001600160a01b03919091166000908152600260205260409020805460ff1916911515919091179055565b6001600160a01b03821660009081526001602090815260408083208484528252808320805482518185028101850190935280835260609492939192909184015b828210156106fc5760008481526020908190206040805160a0810182526004860290920180546001600160a01b03168352600181015493830193909352600283015460ff8082161515928401929092526101009004161515606082015260038201805491929160808401919061066b90612396565b80601f016020809104026020016040519081016040528092919081815260200182805461069790612396565b80156106e45780601f106106b9576101008083540402835291602001916106e4565b820191906000526020600020905b8154815290600101906020018083116106c757829003601f168201915b505050505081525050815260200190600101906105f6565b5050505090505b92915050565b610711611614565b6001600160a01b031661072261077c565b6001600160a01b0316146107485760405162461bcd60e51b81526004016102df90612260565b6107526000611618565b565b6001600160a01b03919091166000908152600160209081526040808320938352929052205490565b6000546001600160a01b03165b90565b6001600160a01b038416600090815260026020526040902054849060ff166107c65760405162461bcd60e51b81526004016102df906122c5565b6107ce611614565b6001600160a01b0386811660009081526001602090815260408083208984529091529020805492909116918590811061081757634e487b7160e01b600052603260045260246000fd5b60009182526020909120600490910201546001600160a01b03161461084e5760405162461bcd60e51b81526004016102df90612153565b6040516331a9108f60e11b81526000906001600160a01b03871690636352211e9061087d908890600401611f28565b60206040518083038186803b15801561089557600080fd5b505afa1580156108a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108cd9190611ae9565b90506108d7611614565b6001600160a01b0316816001600160a01b0316146109075760405162461bcd60e51b81526004016102df90612198565b6001600160a01b0386166000908152600160209081526040808320888452909152902080548491908690811061094d57634e487b7160e01b600052603260045260246000fd5b90600052602060002090600402016003019080519060200190610971929190611983565b507f651b516a6c18e276c39e293fc63842f42c41fcfda43edb72e46e66454c38f8198686866040516109a593929190611e5d565b60405180910390a1505050505050565b6001600160a01b038416600090815260026020526040902054849060ff166109ef5760405162461bcd60e51b81526004016102df906122c5565b6040516331a9108f60e11b81526000906001600160a01b03871690636352211e90610a1e908890600401611f28565b60206040518083038186803b158015610a3657600080fd5b505afa158015610a4a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a6e9190611ae9565b9050610a78611614565b6001600160a01b0387811660009081526001602090815260408083208a845290915290208054929091169186908110610ac157634e487b7160e01b600052603260045260246000fd5b60009182526020909120600490910201546001600160a01b0316148015610b005750610aeb611614565b6001600160a01b0316816001600160a01b0316145b80610b2a5750610b0e611614565b6001600160a01b0316610b1f61077c565b6001600160a01b0316145b610b465760405162461bcd60e51b81526004016102df90612032565b6001600160a01b03861660009081526001602090815260408083208884529091529020805484919086908110610b8c57634e487b7160e01b600052603260045260246000fd5b906000526020600020906004020160020160006101000a81548160ff0219169083151502179055507f651b516a6c18e276c39e293fc63842f42c41fcfda43edb72e46e66454c38f8198686866040516109a593929190611e5d565b6001600160a01b038416600090815260026020526040902054849060ff16610c215760405162461bcd60e51b81526004016102df906122c5565b6040516331a9108f60e11b81526000906001600160a01b03871690636352211e90610c50908890600401611f28565b60206040518083038186803b158015610c6857600080fd5b505afa158015610c7c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ca09190611ae9565b9050610caa611614565b6001600160a01b0387811660009081526001602090815260408083208a845290915290208054929091169186908110610cf357634e487b7160e01b600052603260045260246000fd5b60009182526020909120600490910201546001600160a01b0316148015610d325750610d1d611614565b6001600160a01b0316816001600160a01b0316145b80610d5c5750610d40611614565b6001600160a01b0316610d5161077c565b6001600160a01b0316145b610d785760405162461bcd60e51b81526004016102df90612032565b6001600160a01b03861660009081526001602090815260408083208884529091529020805484919086908110610dbe57634e487b7160e01b600052603260045260246000fd5b906000526020600020906004020160020160016101000a81548160ff0219169083151502179055507f4413e2dcebea319d21644448dc47e1690fbb06c569f44bda426d293a027b9b198686866040516109a593929190611e5d565b60036020526000908152604090205460ff1681565b6001600160a01b038516600090815260026020526040902054859060ff16610e685760405162461bcd60e51b81526004016102df906122c5565b60036000610e74611614565b6001600160a01b0316815260208101919091526040016000205460ff16610ead5760405162461bcd60e51b81526004016102df90612295565b6040516331a9108f60e11b81526000906001600160a01b03881690636352211e90610edc908990600401611f28565b60206040518083038186803b158015610ef457600080fd5b505afa158015610f08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2c9190611ae9565b90506001600160a01b0381163214610f565760405162461bcd60e51b81526004016102df9061208f565b6001600160a01b038716600090815260016020908152604080832089845290915290819020815160a081019092529080610f8e611614565b6001600160a01b03908116825260208083018a90528815156040808501919091526000606080860182905260809586018b9052875460018082018a5598835291849020875160049093020180546001600160a01b0319169290951691909117845585830151968401969096558401516002830180549686015160ff199097169115159190911761ff0019166101009615159690960295909517909455908201518051929391926110449260038501920190611983565b5050506001600160a01b03871660009081526001602081815260408084208a8552909152909120547f7d97fb6e760200f3410aed6b36eae3b465593a033da403c0d89d9e91f9b8cb42918991899161109b9161237f565b6040516110aa93929190611e5d565b60405180910390a150505050505050565b6001600160a01b038616600090815260026020526040902054869060ff166110f55760405162461bcd60e51b81526004016102df906122c5565b60006111597f65ec70d7edfe4b6cd9678cd8845a2e5989f6f7aeafe07b59e688ae169fdee9ef8989898989898051906020012060405160200161113e9796959493929190611f31565b60405160208183030381529060405280519060200120611668565b90506000611167828b611683565b90506001600160a01b03811661118f5760405162461bcd60e51b81526004016102df90611fb6565b6040516331a9108f60e11b81526000906001600160a01b038b1690636352211e906111be908c90600401611f28565b60206040518083038186803b1580156111d657600080fd5b505afa1580156111ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120e9190611ae9565b9050806001600160a01b0316826001600160a01b0316146112415760405162461bcd60e51b81526004016102df9061230a565b8761124c8b8b610754565b146112695760405162461bcd60e51b81526004016102df90611fed565b6001600160a01b038a811660009081526001602081815260408084208e85528252808420815160a08101835288871681528084018e81528d151593820193845260608201878152608083018e81528454808901865594895297869020835160049095020180546001600160a01b0319169490991693909317885551948701949094559051600286018054925160ff199093169115159190911761ff001916610100921515929092029190911790559151805191939261133092600385019290910190611983565b5050506001600160a01b038a1660009081526001602081815260408084208d8552909152909120547f7d97fb6e760200f3410aed6b36eae3b465593a033da403c0d89d9e91f9b8cb42918c918c916113879161237f565b60405161139693929190611e5d565b60405180910390a15050505050505050505050565b6001600160a01b038516600090815260026020526040902054859060ff166113e55760405162461bcd60e51b81526004016102df906122c5565b6040516331a9108f60e11b81526000906001600160a01b03881690636352211e90611414908990600401611f28565b60206040518083038186803b15801561142c57600080fd5b505afa158015611440573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114649190611ae9565b905061146e611614565b6001600160a01b0316816001600160a01b031614610f565760405162461bcd60e51b81526004016102df90612198565b6114a6611614565b6001600160a01b03166114b761077c565b6001600160a01b0316146114dd5760405162461bcd60e51b81526004016102df90612260565b6001600160a01b0381166115035760405162461bcd60e51b81526004016102df9061210d565b61150c81611618565b50565b6001602052826000526040600020602052816000526040600020818154811061153757600080fd5b600091825260209091206004909102018054600182015460028301546003840180546001600160a01b03909416975091955060ff808216955061010090910416929161158290612396565b80601f01602080910402602001604051908101604052809291908181526020018280546115ae90612396565b80156115fb5780601f106115d0576101008083540402835291602001916115fb565b820191906000526020600020905b8154815290600101906020018083116115de57829003601f168201915b5050505050905085565b600061160f6116f7565b905090565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600061167b6116756116f7565b836117ba565b90505b919050565b60008151604114156116b75760208201516040830151606084015160001a6116ad868285856117ed565b9350505050610703565b8151604014156116df57602082015160408301516116d68583836118e3565b92505050610703565b60405162461bcd60e51b81526004016102df906120d6565b60007f000000000000000000000000000000000000000000000000000000000000000046141561174857507f0000000000000000000000000000000000000000000000000000000000000000610789565b6117b37f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000061190d565b9050610789565b600082826040516020016117cf929190611dec565b60405160208183030381529060405280519060200120905092915050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561182f5760405162461bcd60e51b81526004016102df906121dc565b8360ff16601b148061184457508360ff16601c145b6118605760405162461bcd60e51b81526004016102df9061221e565b6000600186868686604051600081526020016040526040516118859493929190611f98565b6020604051602081039080840390855afa1580156118a7573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166118da5760405162461bcd60e51b81526004016102df90611fb6565b95945050505050565b60006001600160ff1b03821660ff83901c601b01611903868287856117ed565b9695505050505050565b60008383834630604051602001611928959493929190611f6c565b6040516020818303038152906040528051906020012090509392505050565b6040518060a0016040528060006001600160a01b0316815260200160008152602001600015158152602001600015158152602001606081525090565b82805461198f90612396565b90600052602060002090601f0160209004810192826119b157600085556119f7565b82601f106119ca57805160ff19168380011785556119f7565b828001600101855582156119f7579182015b828111156119f75782518255916020019190600101906119dc565b50611a03929150611a07565b5090565b5b80821115611a035760008155600101611a08565b600067ffffffffffffffff80841115611a3757611a37612402565b604051601f8501601f191681016020018281118282101715611a5b57611a5b612402565b604052848152915081838501861015611a7357600080fd5b8484602083013760006020868301015250509392505050565b803561167e81612418565b8035801515811461167e57600080fd5b600082601f830112611ab7578081fd5b611ac683833560208501611a1c565b9392505050565b600060208284031215611ade578081fd5b8135611ac681612418565b600060208284031215611afa578081fd5b8151611ac681612418565b60008060408385031215611b17578081fd5b8235611b2281612418565b9150611b3060208401611a97565b90509250929050565b60008060408385031215611b4b578182fd5b8235611b5681612418565b946020939093013593505050565b600080600060608486031215611b78578081fd5b8335611b8381612418565b95602085013595506040909401359392505050565b60008060008060808587031215611bad578081fd5b8435611bb881612418565b93506020850135925060408501359150611bd460608601611a97565b905092959194509250565b600080600080600060a08688031215611bf6578081fd5b8535611c0181612418565b94506020860135935060408601359250611c1d60608701611a97565b9150608086013567ffffffffffffffff811115611c38578182fd5b611c4488828901611aa7565b9150509295509295909350565b60008060008060808587031215611c66578384fd5b8435611c7181612418565b93506020850135925060408501359150606085013567ffffffffffffffff811115611c9a578182fd5b611ca687828801611aa7565b91505092959194509250565b60008060008060808587031215611cc7578384fd5b8435611cd281612418565b966020860135965060408601359560600135945092505050565b600080600080600080600060e0888a031215611d06578182fd5b873567ffffffffffffffff80821115611d1d578384fd5b818a0191508a601f830112611d30578384fd5b611d3f8b833560208501611a1c565b9850611d4d60208b01611a8c565b975060408a0135965060608a0135955060808a01359450611d7060a08b01611a97565b935060c08a0135915080821115611d85578283fd5b50611d928a828b01611aa7565b91505092959891949750929550565b60008151808452815b81811015611dc657602081850181015186830182015201611daa565b81811115611dd75782602083870101525b50601f01601f19169290920160200192915050565b61190160f01b81526002810192909252602282015260420190565b6001600160a01b0391909116815260200190565b600060018060a01b03871682528560208301528415156040830152831515606083015260a06080830152611e5260a0830184611da1565b979650505050505050565b6001600160a01b039390931683526020830191909152604082015260600190565b60208082528251828201819052600091906040908185019080840286018301878501865b83811015611f0f57888303603f19018552815180516001600160a01b0316845287810151888501528681015115158785015260608082015115159085015260809081015160a091850182905290611efb81860183611da1565b968901969450505090860190600101611ea2565b509098975050505050505050565b901515815260200190565b90815260200190565b9687526001600160a01b03959095166020870152604086019390935260608501919091526080840152151560a083015260c082015260e00190565b9485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b93845260ff9290921660208401526040830152606082015260800190565b60208082526018908201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604082015260600190565b60208082526025908201527f6164644c6f7265576974685369676e61747572653a206c6f72654964206973206040820152647374616c6560d81b606082015260800190565b6020808252603d908201527f4f776e65723a2063616c6c6572206973206e65697468657220746865204c6f7260408201527f652063726561746f72206e6f7220746865204c6f7265204d6173746572000000606082015260800190565b60208082526027908201527f4f776e65723a2074782e6f726967696e206973206e6f742074686520746f6b65604082015266371037bbb732b960c91b606082015260800190565b6020808252601f908201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604082015260600190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526025908201527f4f776e65723a2063616c6c6572206973206e6f7420746865204c6f726520637260408201526432b0ba37b960d91b606082015260800190565b60208082526024908201527f4f776e65723a2063616c6c6572206973206e6f742074686520746f6b656e206f6040820152633bb732b960e11b606082015260800190565b60208082526022908201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604082015261756560f01b606082015260800190565b60208082526022908201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604082015261756560f01b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527573656e646572206973206e6f7420612053637269626560501b604082015260600190565b60208082526025908201527f746f6b656e436f6e7472616374206973206e6f74206f6e2074686520616c6c6f6040820152641ddb1a5cdd60da1b606082015260800190565b6020808252603e908201527f6164644c6f7265576974685369676e61747572653a207369676e61747572652060408201527f6973206e6f74207468652063757272656e7420746f6b656e206f776e65720000606082015260800190565b6000821982111561237a5761237a6123ec565b500190565b600082821015612391576123916123ec565b500390565b6002810460018216806123aa57607f821691505b602082108114156123cb57634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156123e5576123e56123ec565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461150c57600080fdfea26469706673582212204ee1789c80bc1cb1732c991b67f98fb9f109a12b4a9865f855f6fc0638e8104364736f6c63430008000033