0 txs
1 call
constructor
constructor(address tokenFactory_, address token_, address teamRecipient_, uint256 teamReward_, address treasuryRecipient_, uint256 treasuryReward_)
functions
BASIS_POINTS
viewfunction BASIS_POINTS() view returns (uint256)
factory
viewfunction factory() view returns (address)
getLpTokenIdsForUser
viewfunction getLpTokenIdsForUser(address user) view returns (uint256[])
getTotalFeesClaimed
viewfunction getTotalFeesClaimed(uint256 tokenId) view returns (uint256, uint256)
owner
viewfunction owner() view returns (address)
positionManager
viewfunction positionManager() view returns (address)
teamOverrideRewardRecipientForToken
viewfunction teamOverrideRewardRecipientForToken(uint256) view returns (address recipient, uint256 reward, uint256 lpTokenId)
teamRecipient
viewfunction teamRecipient() view returns (address)
teamReward
viewfunction teamReward() view returns (uint256)
totalFeesClaimedPerToken
viewfunction totalFeesClaimedPerToken(uint256, address) view returns (uint256)
treasuryRecipient
viewfunction treasuryRecipient() view returns (address)
treasuryReward
viewfunction treasuryReward() view returns (uint256)
userRewardRecipientForToken
viewfunction userRewardRecipientForToken(uint256) view returns (address recipient, uint256 lpTokenId)
userTokenIds
viewfunction userTokenIds(address, uint256) view returns (uint256)
version
viewfunction version() view returns (string)
addUserRewardRecipient
nonpayablefunction addUserRewardRecipient(tuple recipient)
collectRewards
nonpayablefunction collectRewards(uint256 _tokenId) returns (uint256, uint256)
onERC721Received
nonpayablefunction onERC721Received(address, address from, uint256 id, bytes) returns (bytes4)
renounceOwnership
nonpayablefunction renounceOwnership()
replaceUserRewardRecipient
nonpayablefunction replaceUserRewardRecipient(tuple recipient)
setOverrideTeamRewardsForToken
nonpayablefunction setOverrideTeamRewardsForToken(uint256 tokenId, address newTeamRecipient, uint256 newTeamReward)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateFactory
nonpayablefunction updateFactory(address newFactory)
updateTeamRecipient
nonpayablefunction updateTeamRecipient(address newRecipient)
updateTeamReward
nonpayablefunction updateTeamReward(uint256 newReward)
updateTreasuryRecipient
nonpayablefunction updateTreasuryRecipient(address newRecipient)
updateTreasuryReward
nonpayablefunction updateTreasuryReward(uint256 newReward)
withdrawERC20
nonpayablefunction withdrawERC20(address _token, address recipient)
withdrawETH
nonpayablefunction withdrawETH(address recipient)
events
ClaimedRewards
event ClaimedRewards(address indexed claimer, address indexed token0, address indexed token1, uint256 indextokenId, uint256 amount0, uint256 amount1, uint256 totalAmount1, uint256 totalAmount0)
LockId
event LockId(uint256 _id)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Received
event Received(address indexed from, uint256 tokenId)
errors
InvalidTokenId
error InvalidTokenId(uint256 tokenId)
NoRewardsToCollect
error NoRewardsToCollect()
NotAllowed
error NotAllowed(address user)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ReentrancyGuardReentrantCall
error ReentrancyGuardReentrantCall()
creation bytecode
0x60a03461029357601f611b0b38819003918201601f19168301916001600160401b038311848410176102975780849260c09460405283398101031261029357610047816102ab565b90610054602082016102ab565b610060604083016102ab565b9260608301519060a0610075608086016102ab565b940151946001600160a01b0316928315610280575f80546001600160a01b03198116861782556040519186916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a360018055600280546001600160a01b03191673c36442b4a4522e871399cd717abdd847ab11fe88179055612710841161023e575061271086116101ee578583018084116101da57612710106101955760018060a01b03811660018060a01b0319600354161760035560805260018060a01b031660018060a01b0319600454161760045560055560018060a01b0319600654161760065560018060a01b031660018060a01b0319600754161760075560085560405161184b90816102c08239608051815050f35b60405162461bcd60e51b815260206004820152601f60248201527f546f74616c207265776172642063616e6e6f74206578636565642031303025006044820152606490fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152602260248201527f5472656173757279207265776172642063616e6e6f7420657863656564203130604482015261302560f01b6064820152608490fd5b62461bcd60e51b815260206004820152601e60248201527f5465616d207265776172642063616e6e6f7420657863656564203130302500006044820152606490fd5b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b03821682036102935756fe60806040526004361015610011575f80fd5b5f3560e01c80630865a481146113da5780630af50d891461139157806313949da014611345578063150b7a0214611281578063182d48c61461123c5780631def07081461121f57806337ad4d8b146111f757806354fd4d501461119a5780635d9b506f146111595780635e22f94f146110f2578063690d83201461109e578063715018a614611047578063791b98bc1461101f57806382f0622a146110025780638da5cb5b14610fdb5780639456fbcc14610e8c5780639c9b1d8714610dea578063af0c7c2914610c05578063b18486d714610612578063c45a0155146105ea578063cc17e15d14610592578063cd8852f0146104de578063d9f165dc14610447578063db89721e14610393578063e1f1c4a714610377578063eb4eebc71461034f578063f2fde38b146102ca578063f5cd7a53146102375763f863247914610158575f80fd5b3461023357602036600319011261023357602460043561018060018060a01b03600254166040519384809263133f757160e31b82528560048301525afa8015610228576040925f905f926101eb575b505f838152600960208181528683206001600160a01b0394851684528152868320549583529081528582209390921681529181529083902054835192835290820152f35b905061020f91506101803d8111610221575b6102078183611482565b810190611731565b5050505050505050925090505f6101a7565b503d6101fd565b6040513d5f823e3d90fd5b5f80fd5b34610233576020366003190112610233576004356102536117ef565b612710811161027a5761027561271061026e600554846115af565b11156115bc565b600855005b60405162461bcd60e51b815260206004820152602260248201527f5472656173757279207265776172642063616e6e6f7420657863656564203130604482015261302560f01b6064820152608490fd5b34610233576020366003190112610233576102e3611434565b6102eb6117ef565b6001600160a01b0316801561033c575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b5f525f60045260245ffd5b34610233575f366003190112610233576007546040516001600160a01b039091168152602090f35b34610233575f3660031901126102335760206040516127108152f35b346102335760603660031901126102335760043560026103b161141e565b91604435926103be6117ef565b6001600160a01b0316926103d3841515611505565b6103e1612710821115611563565b6103f361271061026e600854846115af565b6040519361040085611466565b8452602080850191825260408086018481525f948552600b909252909220935184546001600160a01b0319166001600160a01b039190911617845551600184015551910155005b3461023357602036600319011261023357610460611434565b6104686117ef565b6001600160a01b0316801561048e576001600160601b0360a01b60045416176004555f80f35b60405162461bcd60e51b815260206004820152602260248201527f466163746f72792063616e6e6f7420626520746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b34610233576020366003190112610233576001600160a01b036104ff611434565b165f52600c60205260405f20604051806020835491828152019081935f5260205f20905f5b81811061057c575050508161053a910382611482565b604051918291602083019060208452518091526040830191905f5b818110610563575050500390f35b8251845285945060209384019390920191600101610555565b8254845260209093019260019283019201610524565b34610233576040366003190112610233576105ab611434565b6001600160a01b03165f908152600c6020526040902080546024359190821015610233576020916105db916114dc565b90549060031b1c604051908152f35b34610233575f366003190112610233576004546040516001600160a01b039091168152602090f35b3461023357602036600319011261023357600435600260015414610bf6576002600155805f52600a60205260405f2060405161064d8161144a565b60206001808060a01b038454169384845201549101528015610be35760018060a01b0360025416604051916080830183811067ffffffffffffffff821117610bcf57604090815284845230602085019081526001600160801b0385830181815260608701828152845163fc6f786560e01b81529751600489015292516001600160a01b0316602488015251811660448701529051166064850152836084815f865af1918215610228575f935f93610b94575b50831580610b8c575b610b7d576101806024916040519283809263133f757160e31b82528960048301525afa908115610228575f905f92610b50575b506006546005545f888152600b602052604090819020905191986001600160a01b0395861696948616959093169161077281611466565b60018060a01b038254169081815260406002600185015494856020850152015491015280610b45575b5050815f52600960205260405f20845f5260205260405f20878154906107c0916115af565b9055815f52600960205260405f20855f5260205260405f20868154906107e5916115af565b90556008546107f481896117dc565b61271090049061080490886117dc565b6127109004916108148a8a6117dc565b61271090049961082490896117dc565b61271090048a610834848c6116ee565b9061083e916116ee565b9a8161084a868c6116ee565b90610854916116ee565b60075460405163a9059cbb60e01b81526001600160a01b03909116600482015260248101959095529488856044815a6020945f91f1908115610228576108d195602092610b2a575b5060075460405163a9059cbb60e01b81526001600160a01b039091166004820152602481019190915294859081906044820190565b03815f8d5af19081156102285761091b94602092610b0f575b5060405163a9059cbb60e01b81526001600160a01b0385166004820152602481019190915293849081906044820190565b03815f8b5af19182156102285761096693602093610af4575b5060405163a9059cbb60e01b81526001600160a01b039091166004820152602481019190915291829081906044820190565b03815f8a5af1801561022857610ad7575b5060018811610a7a575b600181116109dd575b7fd18152a69fd89794dc922992da1f3dfd9a80b1d2da3347b610216159d9e7c5bc9160a0916040998a51928352602083015289820152876060820152866080820152a46001805582519182526020820152f35b60405163a9059cbb60e01b81526001600160a01b038416600482015260248101829052916020836044815f8a5af1918215610228576040997fd18152a69fd89794dc922992da1f3dfd9a80b1d2da3347b610216159d9e7c5bc9460a094610a4b575b5099509150915061098a565b610a6c9060203d602011610a73575b610a648183611482565b8101906116d6565b508b610a3f565b503d610a5a565b60405163a9059cbb60e01b81526001600160a01b0384166004820152602481018990526020816044815f895af1801561022857610ab8575b50610981565b610ad09060203d602011610a7357610a648183611482565b5088610ab2565b610aef9060203d602011610a7357610a648183611482565b610977565b610b0a90843d8611610a7357610a648183611482565b610934565b610b2590833d8511610a7357610a648183611482565b6108ea565b610b4090833d8511610a7357610a648183611482565b61089c565b91509750888061079b565b9050610b6b91506101803d8111610221576102078183611482565b5050505050505050925090508661073b565b637b3dcc5160e01b5f5260045ffd5b508215610708565b935091506040833d604011610bc7575b81610bb160409383611482565b81010312610233576020835193015191856106ff565b3d9150610ba4565b634e487b7160e01b5f52604160045260245ffd5b5063ed15e6cf60e01b5f5260045260245ffd5b633ee5aeb560e01b5f5260045ffd5b3461023357610c13366114a4565b8051610c29906001600160a01b03161515611608565b6020810190610c3a82511515611660565b81515f52600a60205260405f2060405190610c548261144a565b80546001600160a01b0390811680845260019092015460208401525f54163314159081610ddf575b50610dcc5782515f52600a6020525f600160408220828155015560018060a01b039051165f52600c60205260405f20915f5b835480821015610dbf57610cc282866114dc565b90549060031b1c835114610cd95750600101610cae565b9192915f19810191908211610dab57610d06610cf8610d1e93876114dc565b90549060031b1c91866114dc565b90919082549060031b91821b915f19901b1916179055565b8254928315610d9757610d95935f190190610d3982826114dc565b8154905f199060031b1b19169055555b81515f908152600a60209081526040808320935184546001600160a01b0319166001600160a01b039190911690811785558551600190950194909455928252600c9052209051906116ac565b005b634e487b7160e01b5f52603160045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b505090610d959250610d49565b63fa5cd00f60e01b5f523360045260245ffd5b905033141584610c7c565b3461023357602036600319011261023357610e03611434565b610e0b6117ef565b6001600160a01b03168015610e31576001600160601b0360a01b60075416176007555f80f35b60405162461bcd60e51b815260206004820152602d60248201527f547265617375727920726563697069656e742063616e6e6f742062652074686560448201526c207a65726f206164647265737360981b6064820152608490fd5b3461023357604036600319011261023357610ea5611434565b610ead61141e565b90610eb66117ef565b6001600160a01b0316908115610f9757610eda6001600160a01b0382161515611608565b6040516370a0823160e01b815230600482015290602082602481865afa918215610228575f92610f61575b5060405163a9059cbb60e01b81526001600160a01b0390911660048201526024810191909152906020908290815f81604481015b03925af1801561022857610f4957005b610d959060203d602011610a7357610a648183611482565b91506020823d602011610f8f575b81610f7c60209383611482565b8101031261023357905190610f39610f05565b3d9150610f6f565b606460405162461bcd60e51b815260206004820152602060248201527f546f6b656e2063616e6e6f7420626520746865207a65726f20616464726573736044820152fd5b34610233575f366003190112610233575f546040516001600160a01b039091168152602090f35b34610233575f366003190112610233576020600554604051908152f35b34610233575f366003190112610233576002546040516001600160a01b039091168152602090f35b34610233575f3660031901126102335761105f6117ef565b5f80546001600160a01b0319811682556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b34610233576020366003190112610233575f8080806110bb611434565b6110c36117ef565b6001600160a01b03166110d7811515611608565b47908282156110e9575bf11561022857005b506108fc6110e1565b3461023357611100366114a4565b5f546001600160a01b031633141580611144575b610dcc578051610d959190611133906001600160a01b03161515611608565b6020810190610d4982511515611660565b506004546001600160a01b0316331415611114565b34610233576020366003190112610233576004356111756117ef565b611183612710821115611563565b61119561271061026e600854846115af565b600555005b34610233575f366003190112610233576040516111b68161144a565b600581526040602082019164181718171960d91b83528151928391602083525180918160208501528484015e5f828201840152601f01601f19168101030190f35b34610233575f366003190112610233576006546040516001600160a01b039091168152602090f35b34610233575f366003190112610233576020600854604051908152f35b34610233576020366003190112610233576004355f908152600a6020908152604091829020805460019091015483516001600160a01b03909216825291810191909152f35b346102335760803660031901126102335761129a611434565b506112a361141e565b60643567ffffffffffffffff8111610233573660238201121561023357806004013567ffffffffffffffff81116102335736910160240111610233576004546001600160a01b0391821691168103611333577f88a5966d370b9919b20f3e2c13ff65706f196a4e32cc2c12bf57088f8852587460206040516044358152a2604051630a85bd0160e11b8152602090f35b63fa5cd00f60e01b5f5260045260245ffd5b346102335760203660031901126102335761135e611434565b6113666117ef565b6001600160a01b031661137a811515611505565b6001600160601b0360a01b60065416176006555f80f35b34610233576020366003190112610233576004355f52600b602052606060405f2060018060a01b0381541690600260018201549101549060405192835260208301526040820152f35b34610233576040366003190112610233576113f361141e565b6004355f52600960205260405f209060018060a01b03165f52602052602060405f2054604051908152f35b602435906001600160a01b038216820361023357565b600435906001600160a01b038216820361023357565b6040810190811067ffffffffffffffff821117610bcf57604052565b6060810190811067ffffffffffffffff821117610bcf57604052565b90601f8019910116810190811067ffffffffffffffff821117610bcf57604052565b6040906003190112610233576040516114bc8161144a565b6004356001600160a01b0381168103610233578152602435602082015290565b80548210156114f1575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b1561150c57565b60405162461bcd60e51b815260206004820152602960248201527f5465616d20726563697069656e742063616e6e6f7420626520746865207a65726044820152686f206164647265737360b81b6064820152608490fd5b1561156a57565b60405162461bcd60e51b815260206004820152601e60248201527f5465616d207265776172642063616e6e6f7420657863656564203130302500006044820152606490fd5b91908201809211610dab57565b156115c357565b60405162461bcd60e51b815260206004820152601f60248201527f546f74616c207265776172642063616e6e6f74206578636565642031303025006044820152606490fd5b1561160f57565b60405162461bcd60e51b8152602060048201526024808201527f526563697069656e742063616e6e6f7420626520746865207a65726f206164646044820152637265737360e01b6064820152608490fd5b1561166757565b60405162461bcd60e51b815260206004820152601a60248201527f4c5020746f6b656e2049442063616e6e6f74206265207a65726f0000000000006044820152606490fd5b9081549168010000000000000000831015610bcf5782610d069160016116d4950181556114dc565b565b90816020910312610233575180151581036102335790565b91908203918211610dab57565b51906001600160a01b038216820361023357565b51908160020b820361023357565b51906001600160801b038216820361023357565b9190826101809103126102335781516001600160601b0381168103610233579161175d602082016116fb565b9161176a604083016116fb565b91611777606082016116fb565b91608082015162ffffff81168103610233579161179660a0820161170f565b916117a360c0830161170f565b916117b060e0820161171d565b9161010082015191610120810151916117d96101606117d2610140850161171d565b930161171d565b90565b81810292918115918404141715610dab57565b5f546001600160a01b0316330361180257565b63118cdaa760e01b5f523360045260245ffdfea2646970667358221220ebf6bfa833630c1d3a330678b7cfee9ea359568825b13be4cc2061e1e5ff75fd64736f6c634300081c00330000000000000000000000003ed003167a0c7fbfa69ba00483d3764393728cca000000000000000000000000c36442b4a4522e871399cd717abdd847ab11fe88000000000000000000000000118eff77d88fc4817e0bbc765a852e427cb82aee0000000000000000000000000000000000000000000000000000000000000021000000000000000000000000f20d0ebd8223dff22cfaf05f05490215250155770000000000000000000000000000000000000000000000000000000000000021