0 txs
766 calls
constructor
constructor()
functions
allowedCollections
viewfunction allowedCollections(address) view returns (bool)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
MANAGER_ROLE
viewfunction MANAGER_ROLE() view returns (bytes32)
onERC721Received
purefunction onERC721Received(address, address, uint256, bytes) pure returns (bytes4)
paused
viewfunction paused() view returns (bool)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
staker
viewfunction staker(address, uint256) view returns (address)
stakingBalance
viewfunction stakingBalance(address, address) view returns (uint256)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
UPGRADER_ROLE
viewfunction UPGRADER_ROLE() view returns (bytes32)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
initialize
nonpayablefunction initialize(address admin)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setAllowedCollection
nonpayablefunction setAllowedCollection(address collection, bool allowed)
setPaused
nonpayablefunction setPaused(bool _paused)
stake
nonpayablefunction stake(address collection, uint256[] tokenIds)
unstake
nonpayablefunction unstake(address collection, uint256[] tokenIds)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Initialized
event Initialized(uint8 version)
Paused
event Paused(address account)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
StakeNFT
event StakeNFT(address indexed user, address indexed collection, uint256[] tokenIds, uint256 stakingBalance)
Unpaused
event Unpaused(address account)
UnstakeNFT
event UnstakeNFT(address indexed user, address indexed collection, uint256[] tokenIds, uint256 remainingBalance)
Upgraded
event Upgraded(address indexed implementation)
errors
No errors.
creation bytecode
0x60a060405230608052348015610013575f80fd5b5061001c610021565b6100dd565b5f54610100900460ff161561008c5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146100db575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b608051611e0f6101115f395f818161059c015281816105dc01528181610679015281816106b901526107460152611e0f5ff3fe608060405260043610610131575f3560e01c80635dbe4756116100a8578063c4d66de81161006d578063c4d66de8146103b4578063c9a3911e146103d3578063d547741f146103f2578063db48951214610411578063ec87621c14610430578063f72c0d8b14610450575f80fd5b80635dbe4756146102dc57806391d14854146102fb57806397d7a4901461031a5780639e4bfaa514610349578063a217fddf146103a1575f80fd5b80632f2ff15d116100f95780632f2ff15d1461024157806336568abe146102605780633659cfe61461027f5780634f1ef2861461029e57806352d1902d146102b15780635c975abb146102c5575f80fd5b806301ffc9a714610135578063150b7a021461016957806316c38b3c146101ad578063248a9ca3146101ce57806329161a001461020a575b5f80fd5b348015610140575f80fd5b5061015461014f3660046117a9565b610483565b60405190151581526020015b60405180910390f35b348015610174575f80fd5b506101946101833660046117eb565b630a85bd0160e11b95945050505050565b6040516001600160e01b03199091168152602001610160565b3480156101b8575f80fd5b506101cc6101c736600461188d565b6104b9565b005b3480156101d9575f80fd5b506101fc6101e83660046118a6565b5f90815260c9602052604090206001015490565b604051908152602001610160565b348015610215575f80fd5b506101fc6102243660046118bd565b61016160209081525f928352604080842090915290825290205481565b34801561024c575f80fd5b506101cc61025b3660046118ee565b6104ea565b34801561026b575f80fd5b506101cc61027a3660046118ee565b610513565b34801561028a575f80fd5b506101cc61029936600461190f565b610592565b6101cc6102ac36600461193c565b61066f565b3480156102bc575f80fd5b506101fc61073a565b3480156102d0575f80fd5b5060fb5460ff16610154565b3480156102e7575f80fd5b506101cc6102f63660046119f8565b6107eb565b348015610306575f80fd5b506101546103153660046118ee565b610a3c565b348015610325575f80fd5b5061015461033436600461190f565b61015f6020525f908152604090205460ff1681565b348015610354575f80fd5b50610389610363366004611a77565b61016060209081525f92835260408084209091529082529020546001600160a01b031681565b6040516001600160a01b039091168152602001610160565b3480156103ac575f80fd5b506101fc5f81565b3480156103bf575f80fd5b506101cc6103ce36600461190f565b610a66565b3480156103de575f80fd5b506101cc6103ed3660046119f8565b610bd4565b3480156103fd575f80fd5b506101cc61040c3660046118ee565b610e0e565b34801561041c575f80fd5b506101cc61042b366004611a9f565b610e32565b34801561043b575f80fd5b506101fc5f80516020611d9383398151915281565b34801561045b575f80fd5b506101fc7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e381565b5f6001600160e01b03198216637965db0b60e01b14806104b357506301ffc9a760e01b6001600160e01b03198316145b92915050565b5f80516020611d938339815191526104d081610e75565b81156104e2576104de610e7f565b5050565b6104de610ed9565b5f82815260c9602052604090206001015461050481610e75565b61050e8383610f12565b505050565b6001600160a01b03811633146105885760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6104de8282610f97565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036105da5760405162461bcd60e51b815260040161057f90611ac7565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106225f80516020611d73833981519152546001600160a01b031690565b6001600160a01b0316146106485760405162461bcd60e51b815260040161057f90611b13565b61065181610ffd565b604080515f8082526020820190925261066c91839190611027565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036106b75760405162461bcd60e51b815260040161057f90611ac7565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166106ff5f80516020611d73833981519152546001600160a01b031690565b6001600160a01b0316146107255760405162461bcd60e51b815260040161057f90611b13565b61072e82610ffd565b6104de82826001611027565b5f306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146107d95760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c0000000000000000606482015260840161057f565b505f80516020611d7383398151915290565b6107f3611191565b6107fb6111d9565b5f5b81811015610995576001600160a01b0384165f90815261016060205260408120339185858581811061083157610831611b5f565b602090810292909201358352508101919091526040015f20546001600160a01b0316146108a05760405162461bcd60e51b815260206004820181905260248201527f4e6f742074686520636f72726573706f6e64696e67204e4654207374616b6572604482015260640161057f565b6001600160a01b0384165f90815261016060205260408120818585858181106108cb576108cb611b5f565b602090810292909201358352508101919091526040015f2080546001600160a01b0319166001600160a01b0392831617905584166323b872dd303386868681811061091857610918611b5f565b6040516001600160e01b031960e088901b1681526001600160a01b039586166004820152949093166024850152506020909102013560448201526064015f604051808303815f87803b15801561096c575f80fd5b505af115801561097e573d5f803e3d5ffd5b50505050808061098d90611b87565b9150506107fd565b50335f908152610161602090815260408083206001600160a01b0387168452909152812080548392906109c9908490611b9f565b9091555050335f818152610161602090815260408083206001600160a01b0388168085529252918290205491519092917f4e2bff68afee0a534788812923ba3a921d58a443e38f23239f6c70891c732c5591610a29918791879190611bb2565b60405180910390a361050e600161012d55565b5f91825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b5f54610100900460ff1615808015610a8457505f54600160ff909116105b80610a9d5750303b158015610a9d57505f5460ff166001145b610b005760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161057f565b5f805460ff191660011790558015610b21575f805461ff0019166101001790555b610b2961123c565b610b31611262565b610b39611290565b610b4161123c565b610b4b5f83610f12565b610b625f80516020611d9383398151915283610f12565b610b8c7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e383610f12565b80156104de575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b610bdc611191565b610be46111d9565b6001600160a01b0383165f90815261015f6020526040902054839060ff16610c595760405162461bcd60e51b815260206004820152602260248201527f54686973204e465420636f6c6c656374696f6e206973206e6f7420616c6c6f77604482015261195960f21b606482015260840161057f565b5f5b82811015610d6657846001600160a01b03166323b872dd3330878786818110610c8657610c86611b5f565b6040516001600160e01b031960e088901b1681526001600160a01b039586166004820152949093166024850152506020909102013560448201526064015f604051808303815f87803b158015610cda575f80fd5b505af1158015610cec573d5f803e3d5ffd5b505050506001600160a01b0385165f908152610160602052604081203391868685818110610d1c57610d1c611b5f565b9050602002013581526020019081526020015f205f6101000a8154816001600160a01b0302191690836001600160a01b031602179055508080610d5e90611b87565b915050610c5b565b50335f908152610161602090815260408083206001600160a01b038816845290915281208054849290610d9a908490611bee565b9091555050335f818152610161602090815260408083206001600160a01b0389168085529252918290205491519092917f4857e7381c5c8ce698766113a4b5cae2c695f5fab182a691d63620a6c58cc2c591610dfa918891889190611bb2565b60405180910390a35061050e600161012d55565b5f82815260c96020526040902060010154610e2881610e75565b61050e8383610f97565b5f80516020611d93833981519152610e4981610e75565b506001600160a01b03919091165f90815261015f60205260409020805460ff1916911515919091179055565b61066c81336112be565b610e87611191565b60fb805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258610ebc3390565b6040516001600160a01b03909116815260200160405180910390a1565b610ee1611317565b60fb805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33610ebc565b610f1c8282610a3c565b6104de575f82815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055610f533390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610fa18282610a3c565b156104de575f82815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b7f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e36104de81610e75565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561105a5761050e83611360565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156110b4575060408051601f3d908101601f191682019092526110b191810190611c01565b60015b6111175760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840161057f565b5f80516020611d7383398151915281146111855760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840161057f565b5061050e8383836113fb565b60fb5460ff16156111d75760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161057f565b565b600261012d540361122c5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161057f565b600261012d55565b600161012d55565b5f54610100900460ff166111d75760405162461bcd60e51b815260040161057f90611c18565b5f54610100900460ff166112885760405162461bcd60e51b815260040161057f90611c18565b6111d7611425565b5f54610100900460ff166112b65760405162461bcd60e51b815260040161057f90611c18565b6111d7611457565b6112c88282610a3c565b6104de576112d58161147d565b6112e083602061148f565b6040516020016112f1929190611c85565b60408051601f198184030181529082905262461bcd60e51b825261057f91600401611cf9565b60fb5460ff166111d75760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161057f565b6001600160a01b0381163b6113cd5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161057f565b5f80516020611d7383398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6114048361162c565b5f825111806114105750805b1561050e5761141f838361166b565b50505050565b5f54610100900460ff1661144b5760405162461bcd60e51b815260040161057f90611c18565b60fb805460ff19169055565b5f54610100900460ff166112345760405162461bcd60e51b815260040161057f90611c18565b60606104b36001600160a01b03831660145b60605f61149d836002611d2b565b6114a8906002611bee565b67ffffffffffffffff8111156114c0576114c0611928565b6040519080825280601f01601f1916602001820160405280156114ea576020820181803683370190505b509050600360fc1b815f8151811061150457611504611b5f565b60200101906001600160f81b03191690815f1a905350600f60fb1b8160018151811061153257611532611b5f565b60200101906001600160f81b03191690815f1a9053505f611554846002611d2b565b61155f906001611bee565b90505b60018111156115d6576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061159357611593611b5f565b1a60f81b8282815181106115a9576115a9611b5f565b60200101906001600160f81b03191690815f1a90535060049490941c936115cf81611d42565b9050611562565b5083156116255760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161057f565b9392505050565b61163581611360565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606116258383604051806060016040528060278152602001611db36027913960605f80856001600160a01b0316856040516116a79190611d57565b5f60405180830381855af49150503d805f81146116df576040519150601f19603f3d011682016040523d82523d5f602084013e6116e4565b606091505b50915091506116f5868383876116ff565b9695505050505050565b6060831561176d5782515f03611766576001600160a01b0385163b6117665760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161057f565b5081611777565b611777838361177f565b949350505050565b81511561178f5781518083602001fd5b8060405162461bcd60e51b815260040161057f9190611cf9565b5f602082840312156117b9575f80fd5b81356001600160e01b031981168114611625575f80fd5b80356001600160a01b03811681146117e6575f80fd5b919050565b5f805f805f608086880312156117ff575f80fd5b611808866117d0565b9450611816602087016117d0565b935060408601359250606086013567ffffffffffffffff80821115611839575f80fd5b818801915088601f83011261184c575f80fd5b81358181111561185a575f80fd5b89602082850101111561186b575f80fd5b9699959850939650602001949392505050565b803580151581146117e6575f80fd5b5f6020828403121561189d575f80fd5b6116258261187e565b5f602082840312156118b6575f80fd5b5035919050565b5f80604083850312156118ce575f80fd5b6118d7836117d0565b91506118e5602084016117d0565b90509250929050565b5f80604083850312156118ff575f80fd5b823591506118e5602084016117d0565b5f6020828403121561191f575f80fd5b611625826117d0565b634e487b7160e01b5f52604160045260245ffd5b5f806040838503121561194d575f80fd5b611956836117d0565b9150602083013567ffffffffffffffff80821115611972575f80fd5b818501915085601f830112611985575f80fd5b81358181111561199757611997611928565b604051601f8201601f19908116603f011681019083821181831017156119bf576119bf611928565b816040528281528860208487010111156119d7575f80fd5b826020860160208301375f6020848301015280955050505050509250929050565b5f805f60408486031215611a0a575f80fd5b611a13846117d0565b9250602084013567ffffffffffffffff80821115611a2f575f80fd5b818601915086601f830112611a42575f80fd5b813581811115611a50575f80fd5b8760208260051b8501011115611a64575f80fd5b6020830194508093505050509250925092565b5f8060408385031215611a88575f80fd5b611a91836117d0565b946020939093013593505050565b5f8060408385031215611ab0575f80fd5b611ab9836117d0565b91506118e56020840161187e565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f60018201611b9857611b98611b73565b5060010190565b818103818111156104b3576104b3611b73565b604080825281018390525f6001600160fb1b03841115611bd0575f80fd5b8360051b808660608501376020830193909352500160600192915050565b808201808211156104b3576104b3611b73565b5f60208284031215611c11575f80fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b5f5b83811015611c7d578181015183820152602001611c65565b50505f910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351611cbc816017850160208801611c63565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611ced816028840160208801611c63565b01602801949350505050565b602081525f8251806020840152611d17816040850160208701611c63565b601f01601f19169190910160400192915050565b80820281158282048414176104b3576104b3611b73565b5f81611d5057611d50611b73565b505f190190565b5f8251611d68818460208701611c63565b919091019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b08416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212205ed235b1becd25faa88fb8ccb6dfd7de7038c95bda7f043e06dc52fe437575fd64736f6c63430008140033