0 txs
1 call
constructor
constructor(address _owner, address _admin, address _creatorFeeReceiver, address _fxFeeReceiver, uint256 _lockDuration)
functions
admin
viewfunction admin() view returns (address)
BASIS_POINTS
viewfunction BASIS_POINTS() view returns (uint256)
creatorFeeReceiver
viewfunction creatorFeeReceiver() view returns (address)
creatorFeeSplit
viewfunction creatorFeeSplit() view returns (uint256)
exited
viewfunction exited() view returns (bool)
fxFeeReceiver
viewfunction fxFeeReceiver() view returns (address)
fxFeeSplit
viewfunction fxFeeSplit() view returns (uint256)
getAccruedFees
viewfunction getAccruedFees() view returns (uint256 fees0, uint256 fees1)
getCurrentPrice0
viewfunction getCurrentPrice0() view returns (uint224)
getRemainingLockTime
viewfunction getRemainingLockTime() view returns (uint256)
lastAmount0
viewfunction lastAmount0() view returns (uint112)
lastAmount1
viewfunction lastAmount1() view returns (uint112)
lockDuration
viewfunction lockDuration() view returns (uint256)
lockStartTime
viewfunction lockStartTime() view returns (uint256)
owner
viewfunction owner() view returns (address)
pool
viewfunction pool() view returns (address)
exit
nonpayablefunction exit()
lock
nonpayablefunction lock(address _pool)
renounceAdmin
nonpayablefunction renounceAdmin()
renounceOwnership
nonpayablefunction renounceOwnership()
setCreatorFeeReceiver
nonpayablefunction setCreatorFeeReceiver(address _creator)
setFxFeeReceiver
nonpayablefunction setFxFeeReceiver(address _fx)
transferAdmin
nonpayablefunction transferAdmin(address _newAdmin)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
updateFeeSplit
nonpayablefunction updateFeeSplit(uint256 _fx, uint256 _creator)
updateLockDuration
nonpayablefunction updateLockDuration(uint256 _duration)
events
AdminTransferred
event AdminTransferred(address indexed previousAdmin, address indexed newAdmin)
CreatorFeeReceiverTransferred
event CreatorFeeReceiverTransferred(address indexed previousReceiver, address indexed newReceiver)
FeeReceiversUpdated
event FeeReceiversUpdated(address indexed creator, address indexed fx)
FeeReceiverTransferred
event FeeReceiverTransferred(address indexed previousReceiver, address indexed newReceiver)
FeeSplitUpdated
event FeeSplitUpdated(uint256 fx, uint256 creator)
FxFeeReceiverTransferred
event FxFeeReceiverTransferred(address indexed previousReceiver, address indexed newReceiver)
LockDurationUpdated
event LockDurationUpdated(uint256 oldDuration, uint256 newDuration)
LockInitialized
event LockInitialized(uint256 startTime, uint256 duration)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
PoolExited
event PoolExited(address indexed owner, uint256 fees0, uint256 fees1, uint256 principal0, uint256 principal1)
PoolLocked
event PoolLocked(address indexed pool, uint112 amount0, uint112 amount1)
TransferAdmin
event TransferAdmin(address indexed oldAdmin, address indexed newAdmin)
errors
AdminableUnauthorizedAccount
error AdminableUnauthorizedAccount(address admin, address caller)
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
UniswapV2Locker__AlreadyExited
error UniswapV2Locker__AlreadyExited()
UniswapV2Locker__AlreadyInitialized
error UniswapV2Locker__AlreadyInitialized()
UniswapV2Locker__InvalidAdmin
error UniswapV2Locker__InvalidAdmin()
UniswapV2Locker__InvalidFeeReceiver
error UniswapV2Locker__InvalidFeeReceiver()
UniswapV2Locker__InvalidFeeSplit
error UniswapV2Locker__InvalidFeeSplit()
UniswapV2Locker__InvalidLockDuration
error UniswapV2Locker__InvalidLockDuration()
UniswapV2Locker__LockNotInitialized
error UniswapV2Locker__LockNotInitialized()
UniswapV2Locker__LockPeriodActive
error UniswapV2Locker__LockPeriodActive()
UniswapV2Locker__NoLPTokensDeposited
error UniswapV2Locker__NoLPTokensDeposited()
UniswapV2Locker__NotAdmin
error UniswapV2Locker__NotAdmin()
UniswapV2Locker__NotFeeReceiver
error UniswapV2Locker__NotFeeReceiver()
UniswapV2Locker__NothingToBurn
error UniswapV2Locker__NothingToBurn()
UniswapV2Locker__NotOwnerOrAdmin
error UniswapV2Locker__NotOwnerOrAdmin()
creation bytecode
0x608060405234801561000f575f5ffd5b50604051611c27380380611c2783398101604081905261002e91610371565b83856001600160a01b03811661005e57604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b610067816100f6565b506001600160a01b038116610098576040516317b75e8b60e01b81525f600482018190526024820152604401610055565b6100a25f82610145565b50805f036100c3576040516304ff644760e21b815260040160405180910390fd5b6100cc81610195565b6100d5836101fb565b6100de82610273565b6100ec6103e86123286102eb565b50505050506103f0565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600180546001600160a01b0319166001600160a01b0383811691821790925560405190918416907fbdd36143ee09de60bdefca70680e0f71189b2ed7acee364b53917ad433fdaf80905f90a35050565b805f036101b5576040516304ff644760e21b815260040160405180910390fd5b600680549082905560408051828152602081018490527f960da93dd9b69d9002b820a04d4dba66c8e69ce03fc13fcf89429fadd93607c891015b60405180910390a15050565b6001600160a01b038116610222576040516360a828f960e11b815260040160405180910390fd5b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f847ae10ff36521df91d37ccd29e9506cb507541fe15077eb800240da46baaf8c905f90a35050565b6001600160a01b03811661029a576040516360a828f960e11b815260040160405180910390fd5b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f5d997cf5ad52499592e8d3cb1cd4039be087c5dcab1ef312c74c9518b687e8c3905f90a35050565b6127106102f882846103cb565b1461031657604051632fcb310360e21b815260040160405180910390fd5b6008829055600981905560408051838152602081018390527f03bf6313e18d458e1a96e6cec449cb8d3876bae380d782be154fa0cb42b6536291016101ef565b80516001600160a01b038116811461036c575f5ffd5b919050565b5f5f5f5f5f60a08688031215610385575f5ffd5b61038e86610356565b945061039c60208701610356565b93506103aa60408701610356565b92506103b860608701610356565b9150608086015190509295509295909350565b808201808211156103ea57634e487b7160e01b5f52601160045260245ffd5b92915050565b61182a806103fd5f395ff3fe608060405234801561000f575f5ffd5b5060043610610187575f3560e01c80638032d347116100d9578063d477edf411610093578063f2fde38b1161006e578063f2fde38b14610339578063f435f5a71461034c578063f851a4401461035f578063fb1faf9114610372575f5ffd5b8063d477edf414610315578063e1f1c4a714610328578063e9fad8ee14610331575f5ffd5b80638032d3471461028c5780638bad0c0a146102b75780638da5cb5b146102bf578063a2b3bb04146102cf578063aa71916a146102e2578063d331caa014610302575f5ffd5b80635ce6c327116101445780636c37d5fc1161011f5780636c37d5fc14610260578063715018a61461026957806375829def146102715780637a8cd15614610284575f5ffd5b80635ce6c3271461022057806362c7fa761461024457806363d813c51461024d575f5ffd5b8063045544431461018b57806316db87a6146101a757806316f0115b146101bc5780631f3da150146101e75780632bb27cea1461020457806348733c5514610217575b5f5ffd5b61019460065481565b6040519081526020015b60405180910390f35b6101ba6101b536600461161a565b61038c565b005b6004546101cf906001600160a01b031681565b6040516001600160a01b03909116815260200161019e565b6101ef6103a0565b6040805192835260208301919091520161019e565b6003546101cf906001600160a01b031681565b61019460095481565b60045461023490600160a01b900460ff1681565b604051901515815260200161019e565b61019460075481565b6101ba61025b36600461161a565b6105fa565b61019460085481565b6101ba61060b565b6101ba61027f36600461161a565b61061e565b610194610630565b60055461029f906001600160701b031681565b6040516001600160701b03909116815260200161019e565b6101ba610670565b5f546001600160a01b03166101cf565b6101ba6102dd366004611635565b610682565b6102ea610698565b6040516001600160e01b03909116815260200161019e565b6002546101cf906001600160a01b031681565b6101ba610323366004611655565b610725565b61019461271081565b6101ba610736565b6101ba61034736600461161a565b610c9d565b6101ba61035a36600461161a565b610cdc565b6001546101cf906001600160a01b031681565b60055461029f90600160701b90046001600160701b031681565b610394610f98565b61039d81610fc4565b50565b6004545f908190600160a01b900460ff16806103c557506004546001600160a01b0316155b156103d257505f91829150565b6004546005546001600160a01b03909116905f90610402906001600160701b03600160701b820481169116611680565b90505f5f836001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610442573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061046691906116b2565b506040516370a0823160e01b815230600482015291935091505f906001600160a01b038616906370a0823190602401602060405180830381865afa1580156104b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d491906116fe565b90505f856001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610513573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053791906116fe565b90505f8161054e6001600160701b03871685611680565b6105589190611729565b90505f8261056f6001600160701b03871686611680565b6105799190611729565b90505f61059b610596896001600160701b03808b16908a1661103c565b6110f3565b90505f6105b86105968a6001600160701b03808b16908c1661103c565b90508184116105c7575f6105d1565b6105d1828561173c565b9b508083116105e0575f6105ea565b6105ea818461173c565b9a50505050505050505050509091565b61060261124b565b61039d8161128b565b610613610f98565b61061c5f611303565b565b61062661124b565b61039d3382611352565b5f6007545f0361063f57505f90565b5f600654600754610650919061174f565b9050804210610660575f91505090565b61066a428261173c565b91505090565b61067861124b565b61061c335f611352565b61068a61124b565b61069482826113a2565b5050565b5f5f5f60045f9054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156106eb573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070f91906116b2565b509150915061071e8282611415565b9250505090565b61072d61124b565b61039d816114a2565b61073e610f98565b600454600160a01b900460ff161561076957604051636479263960e11b815260040160405180910390fd5b6007545f0361078b576040516316bd05ab60e01b815260040160405180910390fd5b60065460075461079b919061174f565b4210156107bb57604051631b41584f60e11b815260040160405180910390fd5b6004805460ff60a01b198116600160a01b179091556005546001600160a01b03909116905f906107fd906001600160701b03600160701b820481169116611680565b90505f5f836001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa15801561083d573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086191906116b2565b506040516370a0823160e01b815230600482015291935091505f906001600160a01b038616906370a0823190602401602060405180830381865afa1580156108ab573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cf91906116fe565b9050805f036108f157604051633dab900160e01b815260040160405180910390fd5b60405163a9059cbb60e01b81526001600160a01b03861660048201819052602482018390529063a9059cbb906044016020604051808303815f875af115801561093c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109609190611762565b5060405163226bf2d160e21b81523060048201525f9081906001600160a01b038816906389afcb449060240160408051808303815f875af11580156109a7573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109cb9190611781565b90925090505f6109eb610596886001600160701b03808a1690891661103c565b90505f610a08610596896001600160701b03808a16908b1661103c565b90505f828511610a18575f610a22565b610a22838661173c565b90505f828511610a32575f610a3c565b610a3c838661173c565b90505f8b6001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a7b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a9f91906117a3565b90505f8c6001600160a01b031663d21220a76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ade573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0291906117a3565b90508315610b6d575f61271060085486610b1c9190611680565b610b269190611729565b90505f610b33828761173c565b600354909150610b50906001600160a01b03868116911684611500565b600254610b6a906001600160a01b03868116911683611500565b50505b8215610bd6575f61271060085485610b859190611680565b610b8f9190611729565b90505f610b9c828661173c565b600354909150610bb9906001600160a01b03858116911684611500565b600254610bd3906001600160a01b03858116911683611500565b50505b5f610be1858a61173c565b90505f610bee858a61173c565b90505f610c025f546001600160a01b031690565b90508215610c1e57610c1e6001600160a01b0386168285611500565b8115610c3857610c386001600160a01b0385168284611500565b6040805188815260208101889052908101849052606081018390526001600160a01b038216907fe5cd3590e59e635fd9984540eb3ac8b73ffc6fffa3eec776c2e07cf450e65e199060800160405180910390a250505050505050505050505050505050565b610ca5610f98565b6001600160a01b038116610cd357604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b61039d81611303565b60075415610cfd576040516303ae02f160e11b815260040160405180910390fd5b600480546001600160a01b0319166001600160a01b03831690811782556040516370a0823160e01b8152309281019290925282915f91906370a0823190602401602060405180830381865afa158015610d58573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d7c91906116fe565b9050805f03610d9e57604051630797d69160e51b815260040160405180910390fd5b426007819055505f5f836001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015610de3573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e0791906116b2565b50915091505f846001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e49573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e6d91906116fe565b905080610e836001600160701b03851686611680565b610e8d9190611729565b600580546dffffffffffffffffffffffffffff19166001600160701b039283161790558190610ebe90841686611680565b610ec89190611729565b600580546001600160701b03928316600160701b9081026dffffffffffffffffffffffffffff60701b19831681179384905560408051918616938616939093178152920490921660208201526001600160a01b038816917fffe84ffb6686b29e4804d1ea80d5bfae02e90e0d4ab24e86eaa8d375766611dd910160405180910390a27f0fc15b9cd3906871d634702afcc102b7c2c215e57eb303b3f1393a07d9a0b44a600754600654604051610f88929190918252602082015260400190565b60405180910390a1505050505050565b5f546001600160a01b0316331461061c5760405163118cdaa760e01b8152336004820152602401610cca565b6001600160a01b038116610feb576040516360a828f960e11b815260040160405180910390fd5b600280546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f847ae10ff36521df91d37ccd29e9506cb507541fe15077eb800240da46baaf8c905f90a35050565b5f838302815f1985870982811083820303915050805f036110705783828161106657611066611715565b04925050506110ec565b808411611087576110876003851502601118611557565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150505b9392505050565b5f60018211611100575090565b816001600160801b82106111195760809190911c9060401b5b6801000000000000000082106111345760409190911c9060201b5b640100000000821061114b5760209190911c9060101b5b6201000082106111605760109190911c9060081b5b61010082106111745760089190911c9060041b5b601082106111875760049190911c9060021b5b600482106111935760011b5b600302600190811c908185816111ab576111ab611715565b048201901c905060018185816111c3576111c3611715565b048201901c905060018185816111db576111db611715565b048201901c905060018185816111f3576111f3611715565b048201901c9050600181858161120b5761120b611715565b048201901c9050600181858161122357611223611715565b048201901c905061124281858161123c5761123c611715565b04821190565b90039392505050565b6001546001600160a01b0316331461061c576001546040516317b75e8b60e01b81526001600160a01b039091166004820152336024820152604401610cca565b6001600160a01b0381166112b2576040516360a828f960e11b815260040160405180910390fd5b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f5d997cf5ad52499592e8d3cb1cd4039be087c5dcab1ef312c74c9518b687e8c3905f90a35050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600180546001600160a01b0319166001600160a01b0383811691821790925560405190918416907fbdd36143ee09de60bdefca70680e0f71189b2ed7acee364b53917ad433fdaf80905f90a35050565b6127106113af828461174f565b146113cd57604051632fcb310360e21b815260040160405180910390fd5b6008829055600981905560408051838152602081018390527f03bf6313e18d458e1a96e6cec449cb8d3876bae380d782be154fa0cb42b6536291015b60405180910390a15050565b5f5f836001600160701b031611801561143657505f826001600160701b0316115b6114825760405162461bcd60e51b815260206004820181905260248201527f5551313132783131323a20494e53554646494349454e545f52455345525645536044820152606401610cca565b5f61148c83611568565b90506114988185611580565b9150505b92915050565b805f036114c2576040516304ff644760e21b815260040160405180910390fd5b600680549082905560408051828152602081018490527f960da93dd9b69d9002b820a04d4dba66c8e69ce03fc13fcf89429fadd93607c89101611409565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611552908490611594565b505050565b634e487b715f52806020526024601cfd5b5f61149c600160701b6001600160701b0384166117be565b5f6110ec6001600160701b038316846117ef565b5f5f60205f8451602086015f885af1806115b3576040513d5f823e3d81fd5b50505f513d915081156115ca5780600114156115d7565b6001600160a01b0384163b155b1561160057604051635274afe760e01b81526001600160a01b0385166004820152602401610cca565b50505050565b6001600160a01b038116811461039d575f5ffd5b5f6020828403121561162a575f5ffd5b81356110ec81611606565b5f5f60408385031215611646575f5ffd5b50508035926020909101359150565b5f60208284031215611665575f5ffd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761149c5761149c61166c565b80516001600160701b03811681146116ad575f5ffd5b919050565b5f5f5f606084860312156116c4575f5ffd5b6116cd84611697565b92506116db60208501611697565b9150604084015163ffffffff811681146116f3575f5ffd5b809150509250925092565b5f6020828403121561170e575f5ffd5b5051919050565b634e487b7160e01b5f52601260045260245ffd5b5f8261173757611737611715565b500490565b8181038181111561149c5761149c61166c565b8082018082111561149c5761149c61166c565b5f60208284031215611772575f5ffd5b815180151581146110ec575f5ffd5b5f5f60408385031215611792575f5ffd5b505080516020909101519092909150565b5f602082840312156117b3575f5ffd5b81516110ec81611606565b6001600160e01b038181168382168181029092169181830481148215176117e7576117e761166c565b505092915050565b5f6001600160e01b0383168061180757611807611715565b6001600160e01b0392909216919091049291505056fea164736f6c634300081b000a00000000000000000000000012345678901234567890123456789012345678900000000000000000000000001234567890123456789012345678901234567890000000000000000000000000123456789012345678901234567890123456789000000000000000000000000012345678901234567890123456789012345678900000000000000000000000000000000000000000000000000000000000000001