6 txs
14 calls
constructor
constructor(address _dailyEpochGauge, address _incentiveGauge)
functions
dailyEpochGauge
viewfunction dailyEpochGauge() view returns (address)
getHandler
viewfunction getHandler(uint256 tokenId) view returns (address)
getPoolAndPositionInfo
viewfunction getPoolAndPositionInfo(uint256 tokenId) view returns (tuple key, uint256 info)
getPoolKeyFromPositionInfo
viewfunction getPoolKeyFromPositionInfo(uint256 info) view returns (tuple)
getPositionLiquidity
viewfunction getPositionLiquidity(uint256 tokenId) view returns (uint128)
handlerIndex
viewfunction handlerIndex(string) view returns (uint256)
handlers
viewfunction handlers(uint256) view returns (address)
incentiveGauge
viewfunction incentiveGauge() view returns (address)
isAuthorizedCaller
viewfunction isAuthorizedCaller(address) view returns (bool)
owner
viewfunction owner() view returns (address)
ownerOf
viewfunction ownerOf(uint256 tokenId) view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
positionManager
viewfunction positionManager() view returns (address)
acceptOwnership
nonpayablefunction acceptOwnership()
addHandler
nonpayablefunction addHandler(address handler)
notifyBurn
nonpayablefunction notifyBurn(uint256 tokenId, address ownerAddr, uint256 info, uint256 liquidity, int256 feesAccrued)
notifyModifyLiquidity
nonpayablefunction notifyModifyLiquidity(uint256 tokenId, int256 liquidityChange, int256 feesAccrued)
notifySubscribe
nonpayablefunction notifySubscribe(uint256 tokenId, bytes data)
notifyUnsubscribe
nonpayablefunction notifyUnsubscribe(uint256 tokenId)
removeHandler
nonpayablefunction removeHandler(string handlerType)
renounceOwnership
nonpayablefunction renounceOwnership()
setAuthorizedCaller
nonpayablefunction setAuthorizedCaller(address caller, bool authorized)
setGauges
nonpayablefunction setGauges(address _dailyGauge, address _incentiveGauge)
setPositionManager
nonpayablefunction setPositionManager(address _positionManager)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
CallerAuthorized
event CallerAuthorized(address indexed caller, bool authorized)
GaugesUpdated
event GaugesUpdated(address dailyGauge, address incentiveGauge)
HandlerAdded
event HandlerAdded(address indexed handler, string handlerType)
HandlerRemoved
event HandlerRemoved(address indexed handler, string handlerType)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
errors
HandlerAlreadyExists
error HandlerAlreadyExists()
HandlerNotFound
error HandlerNotFound()
NotAuthorized
error NotAuthorized()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
ZeroAddress
error ZeroAddress()
creation bytecode
0x608060405234801561000f575f80fd5b50604051611b5a380380611b5a83398101604081905261002e9161014f565b338061005357604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61005c816100c9565b506001600160a01b038216158061007a57506001600160a01b038116155b156100985760405163d92e233d60e01b815260040160405180910390fd5b600480546001600160a01b039384166001600160a01b03199182161790915560058054929093169116179055610180565b600180546001600160a01b03191690556100e2816100e5565b50565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b038116811461014a575f80fd5b919050565b5f8060408385031215610160575f80fd5b61016983610134565b915061017760208401610134565b90509250929050565b6119cd8061018d5f395ff3fe608060405234801561000f575f80fd5b506004361061019a575f3560e01c806379ba5097116100e8578063d8865c2711610093578063e59b1bc21161006e578063e59b1bc2146103b2578063f208411f146103c5578063f2fde38b146103d8578063fb7d8a1e146103eb575f80fd5b8063d8865c2714610355578063e16e6d5014610368578063e30c3978146103a1575f80fd5b80638da5cb5b116100c35780638da5cb5b1461031f578063af45dd141461032f578063b1a9116f14610342575f80fd5b806379ba5097146102e35780637ba03aad146102eb5780638d57f6b21461030c575f80fd5b806355be489c116101485780636352211e116101235780636352211e146102b5578063715018a6146102c8578063791b98bc146102d0575f80fd5b806355be489c1461025d5780635760f2e31461027057806359d14b4114610283575f80fd5b806342659bdc1161017857806342659bdc14610217578063454bbd291461022a578063534674a61461023d575f80fd5b806315e417111461019e5780631efeed33146101b35780631f19ab50146101ec575b5f80fd5b6101b16101ac366004611322565b6103fe565b005b6101c66101c1366004611390565b61064d565b6040516fffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6005546101ff906001600160a01b031681565b6040516001600160a01b0390911681526020016101e3565b6101ff610225366004611390565b6106e2565b6101b16102383660046113c8565b61070a565b61025061024b366004611390565b610770565b6040516101e391906113ff565b6101ff61026b366004611390565b61085d565b6101b161027e366004611461565b610961565b6102a5610291366004611461565b60066020525f908152604090205460ff1681565b60405190151581526020016101e3565b6101ff6102c3366004611390565b61098b565b6101b1610a19565b6007546101ff906001600160a01b031681565b6101b1610a2c565b6102fe6102f9366004611390565b610a75565b6040516101e392919061147c565b6101b161031a3660046115b5565b610b36565b5f546001600160a01b03166101ff565b6101b161033d366004611390565b610c26565b6101b161035036600461160c565b610d08565b6101b1610363366004611650565b610e28565b610393610376366004611679565b805160208183018101805160038252928201919093012091525481565b6040519081526020016101e3565b6001546001600160a01b03166101ff565b6101b16103c03660046116c6565b610f28565b6004546101ff906001600160a01b031681565b6101b16103e6366004611461565b610fd9565b6101b16103f9366004611461565b611049565b610406611293565b5f600383836040516104199291906116f2565b9081526020016040518091039020549050805f0361044a576040516325fa6f2760e11b815260040160405180910390fd5b5f610456600183611701565b90505f6002828154811061046c5761046c611720565b5f9182526020822001546002546001600160a01b03909116925061049290600190611701565b90508083146105ad57600281815481106104ae576104ae611720565b5f91825260209091200154600280546001600160a01b0390921691859081106104d9576104d9611720565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055505f6002848154811061051857610518611720565b5f918252602082200154604080516392e33a3360e01b815290516001600160a01b03909216926392e33a33926004808401938290030181865afa158015610561573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526105889190810190611734565b90508460038260405161059b91906117a9565b90815260405190819003602001902055505b60028054806105be576105be6117bf565b5f8281526020902081015f1990810180546001600160a01b03191690550190556040516003906105f190889088906116f2565b90815260200160405180910390205f9055816001600160a01b03167fa15858ae37c624e48e7afeb6d1180630b018360fa1e55261179012b1c5e1d519878760405161063d9291906117d3565b60405180910390a2505050505050565b5f806106588361085d565b6040517f1efeed33000000000000000000000000000000000000000000000000000000008152600481018590529091506001600160a01b03821690631efeed3390602401602060405180830381865afa1580156106b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106db9190611801565b9392505050565b600281815481106106f1575f80fd5b5f918252602090912001546001600160a01b0316905081565b610712611293565b6001600160a01b0382165f81815260066020908152604091829020805460ff191685151590811790915591519182527f100c9fd652c7b273c9266f92f22ac2352eb8d7232013ac0439e9066a9227f369910160405180910390a25050565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526007546001600160a01b03166107c35760405163d92e233d60e01b815260040160405180910390fd5b5f66ffffffffffffff1983166007546040517f86b6be7d00000000000000000000000000000000000000000000000000000000815266ffffffffffffff19831660048201529192506001600160a01b0316906386b6be7d9060240160a060405180830381865afa158015610839573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106db91906118c4565b6002545f90815b81811015610947576002818154811061087f5761087f611720565b5f918252602090912001546040517fc0fa19b8000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b039091169063c0fa19b890602401602060405180830381865afa1580156108e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061090b91906118de565b1561093f576002818154811061092357610923611720565b5f918252602090912001546001600160a01b0316949350505050565b600101610864565b506040516325fa6f2760e11b815260040160405180910390fd5b610969611293565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b5f806109968361085d565b6040517f6352211e000000000000000000000000000000000000000000000000000000008152600481018590529091506001600160a01b03821690636352211e90602401602060405180830381865afa1580156109f5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106db91906118f9565b610a21611293565b610a2a5f6112bf565b565b60015433906001600160a01b03168114610a695760405163118cdaa760e01b81526001600160a01b03821660048201526024015b60405180910390fd5b610a72816112bf565b50565b6040805160a0810182525f8082526020820181905291810182905260608101829052608081018290529080610aa98461085d565b6040517f7ba03aad000000000000000000000000000000000000000000000000000000008152600481018690529091506001600160a01b03821690637ba03aad9060240160c060405180830381865afa158015610b08573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b2c9190611914565b9250925050915091565b335f9081526006602052604090205460ff16610b655760405163ea8e4eb560e01b815260040160405180910390fd5b600480546040516346abfb5960e11b81526001600160a01b0390911691638d57f6b291610b9691869186910161196d565b5f604051808303815f87803b158015610bad575f80fd5b505af1158015610bbf573d5f803e3d5ffd5b50506005546040516346abfb5960e11b81526001600160a01b039091169250638d57f6b29150610bf5908590859060040161196d565b5f604051808303815f87803b158015610c0c575f80fd5b505af1158015610c1e573d5f803e3d5ffd5b505050505050565b335f9081526006602052604090205460ff16610c555760405163ea8e4eb560e01b815260040160405180910390fd5b60048054604051632bd1774560e21b81529182018390526001600160a01b03169063af45dd14906024015f604051808303815f87803b158015610c96575f80fd5b505af1158015610ca8573d5f803e3d5ffd5b5050600554604051632bd1774560e21b8152600481018590526001600160a01b03909116925063af45dd1491506024015f604051808303815f87803b158015610cef575f80fd5b505af1158015610d01573d5f803e3d5ffd5b5050505050565b335f9081526006602052604090205460ff16610d375760405163ea8e4eb560e01b815260040160405180910390fd5b6004805460405163b1a9116f60e01b81529182018790526001600160a01b038681166024840152604483018690526064830185905260848301849052169063b1a9116f9060a4015f604051808303815f87803b158015610d95575f80fd5b505af1158015610da7573d5f803e3d5ffd5b505060055460405163b1a9116f60e01b8152600481018990526001600160a01b038881166024830152604482018890526064820187905260848201869052909116925063b1a9116f915060a4015f604051808303815f87803b158015610e0b575f80fd5b505af1158015610e1d573d5f803e3d5ffd5b505050505050505050565b335f9081526006602052604090205460ff16610e575760405163ea8e4eb560e01b815260040160405180910390fd5b6004805460405163d8865c2760e01b815291820185905260248201849052604482018390526001600160a01b03169063d8865c27906064015f604051808303815f87803b158015610ea6575f80fd5b505af1158015610eb8573d5f803e3d5ffd5b505060055460405163d8865c2760e01b81526004810187905260248101869052604481018590526001600160a01b03909116925063d8865c2791506064015f604051808303815f87803b158015610f0d575f80fd5b505af1158015610f1f573d5f803e3d5ffd5b50505050505050565b610f30611293565b6001600160a01b0382161580610f4d57506001600160a01b038116155b15610f6b5760405163d92e233d60e01b815260040160405180910390fd5b600480546001600160a01b038481166001600160a01b03199283168117909355600580549185169190921681179091556040805192835260208301919091527fa96d486927e973ce525df084882fc0a3a860f5e5507b61a2ab604265b91b52fb910160405180910390a15050565b610fe1611293565b600180546001600160a01b0383166001600160a01b031990911681179091556110115f546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b611051611293565b6001600160a01b0381166110785760405163d92e233d60e01b815260040160405180910390fd5b5f8190505f816001600160a01b03166392e33a336040518163ffffffff1660e01b81526004015f60405180830381865afa1580156110b8573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526110df9190810190611734565b90506003816040516110f191906117a9565b9081526020016040518091039020545f1415806111a95750600254158015906111a95750808051906020012060025f8154811061113057611130611720565b5f918252602082200154604080516392e33a3360e01b815290516001600160a01b03909216926392e33a33926004808401938290030181865afa158015611179573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526111a09190810190611734565b80519060200120145b156111e0576040517fcfbaaf7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280546001810182555f8290527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace0180546001600160a01b0319166001600160a01b0385161790555460405160039061123b9084906117a9565b908152602001604051809103902081905550826001600160a01b03167fa06939166614fd57d68baeeb04385cb07f69c6b1d2fd88ae1f36b9da990ea444826040516112869190611985565b60405180910390a2505050565b5f546001600160a01b03163314610a2a5760405163118cdaa760e01b8152336004820152602401610a60565b600180546001600160a01b0319169055610a72815f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f8060208385031215611333575f80fd5b823567ffffffffffffffff811115611349575f80fd5b8301601f81018513611359575f80fd5b803567ffffffffffffffff81111561136f575f80fd5b856020828401011115611380575f80fd5b6020919091019590945092505050565b5f602082840312156113a0575f80fd5b5035919050565b6001600160a01b0381168114610a72575f80fd5b8015158114610a72575f80fd5b5f80604083850312156113d9575f80fd5b82356113e4816113a7565b915060208301356113f4816113bb565b809150509250929050565b60a0810161145b82846001600160a01b0381511682526001600160a01b03602082015116602083015262ffffff6040820151166040830152606081015160020b60608301526001600160a01b0360808201511660808301525050565b92915050565b5f60208284031215611471575f80fd5b81356106db816113a7565b60c081016114d882856001600160a01b0381511682526001600160a01b03602082015116602083015262ffffff6040820151166040830152606081015160020b60608301526001600160a01b0360808201511660808301525050565b8260a08301529392505050565b634e487b7160e01b5f52604160045260245ffd5b60405160a0810167ffffffffffffffff8111828210171561151c5761151c6114e5565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561154b5761154b6114e5565b604052919050565b5f67ffffffffffffffff82111561156c5761156c6114e5565b50601f01601f191660200190565b5f61158c61158784611553565b611522565b905082815283838301111561159f575f80fd5b828260208301375f602084830101529392505050565b5f80604083850312156115c6575f80fd5b82359150602083013567ffffffffffffffff8111156115e3575f80fd5b8301601f810185136115f3575f80fd5b6116028582356020840161157a565b9150509250929050565b5f805f805f60a08688031215611620575f80fd5b853594506020860135611632816113a7565b94979496505050506040830135926060810135926080909101359150565b5f805f60608486031215611662575f80fd5b505081359360208301359350604090920135919050565b5f60208284031215611689575f80fd5b813567ffffffffffffffff81111561169f575f80fd5b8201601f810184136116af575f80fd5b6116be8482356020840161157a565b949350505050565b5f80604083850312156116d7575f80fd5b82356116e2816113a7565b915060208301356113f4816113a7565b818382375f9101908152919050565b8181038181111561145b57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611744575f80fd5b815167ffffffffffffffff81111561175a575f80fd5b8201601f8101841361176a575f80fd5b805161177861158782611553565b81815285602083850101111561178c575f80fd5b8160208401602083015e5f91810160200191909152949350505050565b5f82518060208501845e5f920191825250919050565b634e487b7160e01b5f52603160045260245ffd5b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b5f60208284031215611811575f80fd5b81516fffffffffffffffffffffffffffffffff811681146106db575f80fd5b805161183b816113a7565b919050565b5f60a08284031215611850575f80fd5b6118586114f9565b90508151611865816113a7565b81526020820151611875816113a7565b6020820152604082015162ffffff8116811461188f575f80fd5b60408201526060820151600281900b81146118a8575f80fd5b60608201526118b960808301611830565b608082015292915050565b5f60a082840312156118d4575f80fd5b6106db8383611840565b5f602082840312156118ee575f80fd5b81516106db816113bb565b5f60208284031215611909575f80fd5b81516106db816113a7565b5f8060c08385031215611925575f80fd5b61192f8484611840565b915060a083015190509250929050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b828152604060208201525f6116be604083018461193f565b602081525f6106db602083018461193f56fea264697066735822122020a263df134575def76e809dbc01edc8cff4f4006ed6aa6cd55dbe28439b867a64736f6c634300081a0033000000000000000000000000e578cc6d1baf15e43b18fdf8447efa13d39f2261000000000000000000000000c8c4b6bdd73bff1039c58b3e14d58e4df5d64441