0 txs
0 calls
constructor
constructor(address _factory, uint256 _defaultScalingFactor, uint256 _defaultFeeCap, address[] _pools, uint24[] _fees)
functions
customFee
viewfunction customFee(address _pool) view returns (uint24)
defaultFeeCap
viewfunction defaultFeeCap() view returns (uint256)
defaultScalingFactor
viewfunction defaultScalingFactor() view returns (uint256)
discounted
viewfunction discounted(address) view returns (uint24)
dynamicFeeConfig
viewfunction dynamicFeeConfig(address) view returns (uint24 baseFee, uint24 feeCap, uint64 scalingFactor)
factory
viewfunction factory() view returns (address)
getFee
viewfunction getFee(address _pool) view returns (uint24)
MAX_BASE_FEE
viewfunction MAX_BASE_FEE() view returns (uint256)
MAX_DISCOUNT
viewfunction MAX_DISCOUNT() view returns (uint256)
MAX_FEE_CAP
viewfunction MAX_FEE_CAP() view returns (uint256)
MAX_SCALING_FACTOR
viewfunction MAX_SCALING_FACTOR() view returns (uint256)
MAX_SECONDS_AGO
viewfunction MAX_SECONDS_AGO() view returns (uint32)
MIN_SECONDS_AGO
viewfunction MIN_SECONDS_AGO() view returns (uint32)
SCALING_PRECISION
viewfunction SCALING_PRECISION() view returns (uint256)
secondsAgo
viewfunction secondsAgo() view returns (uint32)
ZERO_FEE_INDICATOR
viewfunction ZERO_FEE_INDICATOR() view returns (uint256)
bulkUpdateFees
nonpayablefunction bulkUpdateFees(address[] _pools, uint24[] _fees)
deregisterDiscounted
nonpayablefunction deregisterDiscounted(address _discountOver)
registerDiscounted
nonpayablefunction registerDiscounted(address _discountReceiver, uint24 _discount)
resetDynamicFee
nonpayablefunction resetDynamicFee(address _pool)
setCustomFee
nonpayablefunction setCustomFee(address _pool, uint24 _fee)
setDefaultFeeCap
nonpayablefunction setDefaultFeeCap(uint256 _defaultFeeCap)
setDefaultScalingFactor
nonpayablefunction setDefaultScalingFactor(uint256 _defaultScalingFactor)
setFeeCap
nonpayablefunction setFeeCap(address _pool, uint24 _feeCap)
setScalingFactor
nonpayablefunction setScalingFactor(address _pool, uint64 _scalingFactor)
setSecondsAgo
nonpayablefunction setSecondsAgo(uint32 _secondsAgo)
events
CustomFeeSet
event CustomFeeSet(address indexed pool, uint24 indexed fee)
DefaultFeeCapSet
event DefaultFeeCapSet(uint256 indexed defaultFeeCap)
DefaultScalingFactorSet
event DefaultScalingFactorSet(uint256 indexed defaultScalingFactor)
DiscountedDeregistered
event DiscountedDeregistered(address indexed discountOver)
DiscountedRegistered
event DiscountedRegistered(address indexed discountReceiver, uint24 indexed discount)
DynamicFeeReset
event DynamicFeeReset(address indexed pool)
FeeCapSet
event FeeCapSet(address indexed pool, uint256 indexed feeCap)
ScalingFactorSet
event ScalingFactorSet(address indexed pool, uint256 indexed scalingFactor)
SecondsAgoSet
event SecondsAgoSet(uint32 indexed secondsAgo)
errors
No errors.
creation bytecode
0x60a06040526002805463ffffffff19166102581790553480156200002257600080fd5b50604051620022ef380380620022ef833981810160405260a08110156200004857600080fd5b8151602083015160408085015160608601805192519496939591949391820192846401000000008211156200007c57600080fd5b9083019060208201858111156200009257600080fd5b8251866020820283011164010000000082111715620000b057600080fd5b82525081516020918201928201910280838360005b83811015620000df578181015183820152602001620000c5565b50505050905001604052602001805160405193929190846401000000008211156200010957600080fd5b9083019060208201858111156200011f57600080fd5b82518660208202830111640100000000821117156200013d57600080fd5b82525081516020918201928201910280838360005b838110156200016c57818101518382015260200162000152565b50505050905001604052505050670de0b6b3a7640000841115620001bd576040805162461bcd60e51b815260206004820152600360248201526224a9a360e91b604482015290519081900360640190fd5b61c350831115620001fb576040805162461bcd60e51b81526020600482015260036024820152624d464360e81b604482015290519081900360640190fd5b6001600160601b0319606086901b16608052600084905560018390556200022485838362000285565b60405184907faccdee3168908f06c20b1d22a0720fc9310a4e0540bf5070d1f2cc3478ab4e3690600090a260405183907f7e32f98c3f8b49356115aabb08e354ae2bd994c337ff1ea63ad3e8424b346fd290600090a2505050505062000442565b815181518114620002c3576040805162461bcd60e51b81526020600482015260036024820152624c4d4d60e81b604482015290519081900360640190fd5b60008060005b838110156200043957848181518110620002df57fe5b602002602001015192506175308362ffffff161115806200030657506101a48362ffffff16145b6200033e576040805162461bcd60e51b815260206004820152600360248201526226a12360e91b604482015290519081900360640190fd5b8581815181106200034b57fe5b60200260200101519150866001600160a01b0316635b16ebb7836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015620003a357600080fd5b505afa158015620003b8573d6000803e3d6000fd5b505050506040513d6020811015620003cf57600080fd5b5051620003db57600080fd5b6001600160a01b038216600081815260046020526040808220805462ffffff191662ffffff881690811790915590519092917fe2150e4054ad34f299189d809c507f52c0c572bfef0504af03f43be0870cd35491a3600101620002c9565b50505050505050565b60805160601c611e3f620004b06000398061054d528061061452806107a4528061093b5280610a055280610add5280610c405280610d075280610e905280610fca52806110dc52806112195280611333528061148752806116195280611644528061170b5250611e3f6000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638c0186c6116100de578063d06152dd11610097578063da13da9111610071578063da13da911461050d578063dcf4eb2714610515578063e34955691461051d578063f6c013ef146105255761018d565b8063d06152dd146104d7578063d195d336146104df578063d71b77ae146105055761018d565b80638c0186c61461042f57806398cc7a371461044c578063a89196b614610454578063b88c914814610485578063ba743e38146104ab578063c45a0155146104b35761018d565b80635bb525ff1161014b578063689e5efa11610125578063689e5efa1461038a57806375397ff1146103bb578063838640e3146103ec578063892d3145146104095761018d565b80635bb525ff1461030b57806360b3042c14610361578063633dd145146103825761018d565b80624dd0fe146101925780631ad7b127146101ca57806338c55d46146101ed578063448384b8146102075780634d419abc1461020f57806351ac4e0b1461024d575b600080fd5b6101c8600480360360408110156101a857600080fd5b5080356001600160a01b0316906020013567ffffffffffffffff1661054b565b005b6101c8600480360360208110156101e057600080fd5b503563ffffffff166107a2565b6101f5610903565b60408051918252519081900360200190f35b6101f5610909565b6102356004803603602081101561022557600080fd5b50356001600160a01b0316610915565b6040805162ffffff9092168252519081900360200190f35b6101c86004803603604081101561026357600080fd5b810190602081018135600160201b81111561027d57600080fd5b82018360208201111561028f57600080fd5b803590602001918460208302840111600160201b831117156102b057600080fd5b919390929091602081019035600160201b8111156102cd57600080fd5b8201836020820111156102df57600080fd5b803590602001918460208302840111600160201b8311171561030057600080fd5b509092509050610939565b6103316004803603602081101561032157600080fd5b50356001600160a01b0316610a94565b6040805162ffffff948516815292909316602083015267ffffffffffffffff168183015290519081900360600190f35b610369610aca565b6040805163ffffffff9092168252519081900360200190f35b610369610acf565b6101c8600480360360408110156103a057600080fd5b5080356001600160a01b0316906020013562ffffff16610adb565b6101c8600480360360408110156103d157600080fd5b5080356001600160a01b0316906020013562ffffff16610c3e565b6101c86004803603602081101561040257600080fd5b5035610e8e565b6101c86004803603602081101561041f57600080fd5b50356001600160a01b0316610fc8565b6101c86004803603602081101561044557600080fd5b50356110da565b6101f5611211565b6101c86004803603604081101561046a57600080fd5b5080356001600160a01b0316906020013562ffffff16611217565b6102356004803603602081101561049b57600080fd5b50356001600160a01b031661142c565b6101f5611611565b6104bb611617565b604080516001600160a01b039092168252519081900360200190f35b6101f561163b565b6101c8600480360360208110156104f557600080fd5b50356001600160a01b0316611642565b6101f5611801565b610369611807565b6101f561180e565b6101f5611814565b6102356004803603602081101561053b57600080fd5b50356001600160a01b031661181b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a457600080fd5b505afa1580156105b8573d6000803e3d6000fd5b505050506040513d60208110156105ce57600080fd5b50516001600160a01b03163314610612576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635b16ebb7836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561067f57600080fd5b505afa158015610693573d6000803e3d6000fd5b505050506040513d60208110156106a957600080fd5b50516106b457600080fd5b6001600160a01b0382166000908152600460205260409020546301000000900462ffffff16158015906106f95750670de0b6b3a76400008167ffffffffffffffff1611155b610730576040805162461bcd60e51b815260206004820152600360248201526224a9a360e91b604482015290519081900360640190fd5b6001600160a01b03821660008181526004602052604080822080546dffffffffffffffff0000000000001916600160301b67ffffffffffffffff87169081029190911790915590519092917f30c247ef0dda66710b7fde1079bd6f5194755e8f285b64fb79d8124f7e42183091a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b1580156107fb57600080fd5b505afa15801561080f573d6000803e3d6000fd5b505050506040513d602081101561082557600080fd5b50516001600160a01b03163314610869576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b600263ffffffff82161080159061088857506201fffe63ffffffff8216105b6108bf576040805162461bcd60e51b815260206004820152600360248201526249534160e81b604482015290519081900360640190fd5b6002805463ffffffff191663ffffffff83169081179091556040517f7a30af0ec8d2cdbaa589a5d6743a47a62b12f68a8d8df30747c7fcc9c69436ad90600090a250565b6101a481565b670de0b6b3a764000081565b6001600160a01b03811660009081526004602052604090205462ffffff165b919050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b15801561099257600080fd5b505afa1580156109a6573d6000803e3d6000fd5b505050506040513d60208110156109bc57600080fd5b50516001600160a01b03163314610a00576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b610a8e7f00000000000000000000000000000000000000000000000000000000000000008585808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152505060408051602080890282810182019093528882529093508892508791829185019084908082843760009201919091525061183292505050565b50505050565b60046020526000908152604090205462ffffff808216916301000000810490911690600160301b900467ffffffffffffffff1683565b600281565b60025463ffffffff1681565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b158015610b3457600080fd5b505afa158015610b48573d6000803e3d6000fd5b505050506040513d6020811015610b5e57600080fd5b50516001600160a01b03163314610ba2576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b6207a1208162ffffff161115610be5576040805162461bcd60e51b81526020600482015260036024820152624d444360e81b604482015290519081900360640190fd5b6001600160a01b038216600081815260036020526040808220805462ffffff191662ffffff861690811790915590519092917fee3dd15d73f7ef85ed01fc28ee4377bc8f2f8ef1c7d184a76232198b5a36033a91a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b158015610c9757600080fd5b505afa158015610cab573d6000803e3d6000fd5b505050506040513d6020811015610cc157600080fd5b50516001600160a01b03163314610d05576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635b16ebb7836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610d7257600080fd5b505afa158015610d86573d6000803e3d6000fd5b505050506040513d6020811015610d9c57600080fd5b5051610da757600080fd5b60008162ffffff1611610de7576040805162461bcd60e51b815260206004820152600360248201526204643360ec1b604482015290519081900360640190fd5b61c3508162ffffff161115610e29576040805162461bcd60e51b81526020600482015260036024820152624d464360e81b604482015290519081900360640190fd5b6001600160a01b038216600081815260046020526040808220805465ffffff0000001916630100000062ffffff87169081029190911790915590519092917f580e5cae1c3e7e91049a0dce5893866a73af11163fd52389d95c2117d8df053b91a35050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b158015610ee757600080fd5b505afa158015610efb573d6000803e3d6000fd5b505050506040513d6020811015610f1157600080fd5b50516001600160a01b03163314610f55576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b670de0b6b3a7640000811115610f98576040805162461bcd60e51b815260206004820152600360248201526224a9a360e91b604482015290519081900360640190fd5b600081815560405182917faccdee3168908f06c20b1d22a0720fc9310a4e0540bf5070d1f2cc3478ab4e3691a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b15801561102157600080fd5b505afa158015611035573d6000803e3d6000fd5b505050506040513d602081101561104b57600080fd5b50516001600160a01b0316331461108f576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b6001600160a01b038116600081815260036020526040808220805462ffffff19169055517fe8221b863d410fc656f2cf857231979f0e9df138aea7aadc275b1e4613311d2e9190a250565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b15801561113357600080fd5b505afa158015611147573d6000803e3d6000fd5b505050506040513d602081101561115d57600080fd5b50516001600160a01b031633146111a1576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b61c3508111156111de576040805162461bcd60e51b81526020600482015260036024820152624d464360e81b604482015290519081900360640190fd5b600181905560405181907f7e32f98c3f8b49356115aabb08e354ae2bd994c337ff1ea63ad3e8424b346fd290600090a250565b61753081565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b15801561127057600080fd5b505afa158015611284573d6000803e3d6000fd5b505050506040513d602081101561129a57600080fd5b50516001600160a01b031633146112de576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b6175308162ffffff161115806112fa57506101a48162ffffff16145b611331576040805162461bcd60e51b815260206004820152600360248201526226a12360e91b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635b16ebb7836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561139e57600080fd5b505afa1580156113b2573d6000803e3d6000fd5b505050506040513d60208110156113c857600080fd5b50516113d357600080fd5b6001600160a01b038216600081815260046020526040808220805462ffffff191662ffffff861690811790915590519092917fe2150e4054ad34f299189d809c507f52c0c572bfef0504af03f43be0870cd35491a35050565b6001600160a01b0381166000908152600460205260408120805462ffffff8082169167ffffffffffffffff600160301b820416916301000000909104166101a4831415611480576000945050505050610934565b8261158f577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663380dc1c2876001600160a01b031663d0c93a7c6040518163ffffffff1660e01b815260040160206040518083038186803b1580156114ed57600080fd5b505afa158015611501573d6000803e3d6000fd5b505050506040513d602081101561151757600080fd5b5051604080516001600160e01b031960e085901b16815260029290920b6004830152516024808301926020929190829003018186803b15801561155957600080fd5b505afa15801561156d573d6000803e3d6000fd5b505050506040513d602081101561158357600080fd5b505162ffffff16611591565b825b9250816115a15750506000546001545b60006115ad87846119e4565b840190508181106115be57816115c0565b805b3260009081526003602052604090205490915062ffffff1615611607573260009081526003602052604081205461160190839062ffffff16620f4240611d1f565b90910390505b9695505050505050565b60005481565b7f000000000000000000000000000000000000000000000000000000000000000081565b620f424081565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d574afa96040518163ffffffff1660e01b815260040160206040518083038186803b15801561169b57600080fd5b505afa1580156116af573d6000803e3d6000fd5b505050506040513d60208110156116c557600080fd5b50516001600160a01b03163314611709576040805162461bcd60e51b81526020600482015260036024820152624e464d60e81b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635b16ebb7826040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561177657600080fd5b505afa15801561178a573d6000803e3d6000fd5b505050506040513d60208110156117a057600080fd5b50516117ab57600080fd5b6001600160a01b03811660008181526004602052604080822080546dffffffffffffffffffffff00000019169055517fc468f70535e94886b35ff615ecae1df3a7149178689eb6db7d69861cd9247d059190a250565b61c35081565b6201fffe81565b60015481565b6207a12081565b60036020526000908152604090205462ffffff1681565b81518151811461186f576040805162461bcd60e51b81526020600482015260036024820152624c4d4d60e81b604482015290519081900360640190fd5b60008060005b838110156119db5784818151811061188957fe5b602002602001015192506175308362ffffff161115806118af57506101a48362ffffff16145b6118e6576040805162461bcd60e51b815260206004820152600360248201526226a12360e91b604482015290519081900360640190fd5b8581815181106118f257fe5b60200260200101519150866001600160a01b0316635b16ebb7836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b15801561194957600080fd5b505afa15801561195d573d6000803e3d6000fd5b505050506040513d602081101561197357600080fd5b505161197e57600080fd5b6001600160a01b038216600081815260046020526040808220805462ffffff191662ffffff881690811790915590519092917fe2150e4054ad34f299189d809c507f52c0c572bfef0504af03f43be0870cd35491a3600101611875565b50505050505050565b6000806000846001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160c06040518083038186803b158015611a2257600080fd5b505afa158015611a36573d6000803e3d6000fd5b505050506040513d60c0811015611a4c57600080fd5b5060208101516060909101516002805492945090925063ffffffff90911690810463ffffffff168261ffff161015611a8a5760009350505050611d19565b6040805160028082526060820183526000926020830190803683370190505090508181600081518110611ab957fe5b63ffffffff90921660209283029190910182015260405163883bdbfd60e01b8152600481018281528351602483015283516000936001600160a01b038c169363883bdbfd938793909283926044019185820191028083838b5b83811015611b2a578181015183820152602001611b12565b505050509050019250505060006040518083038186803b158015611b4d57600080fd5b505afa925050508015611c9357506040513d6000823e601f3d908101601f191682016040908152811015611b8057600080fd5b8101908080516040519392919084600160201b821115611b9f57600080fd5b908301906020820185811115611bb457600080fd5b82518660208202830111600160201b82111715611bd057600080fd5b82525081516020918201928201910280838360005b83811015611bfd578181015183820152602001611be5565b5050505090500160405260200180516040519392919084600160201b821115611c2557600080fd5b908301906020820185811115611c3a57600080fd5b82518660208202830111600160201b82111715611c5657600080fd5b82525081516020918201928201910280838360005b83811015611c83578181015183820152602001611c6b565b5050505090500160405250505060015b611ca557600095505050505050611d19565b8463ffffffff1682600081518110611cb957fe5b602002602001015183600181518110611cce57fe5b60200260200101510360060b81611ce157fe5b05925050508085036000600282900b8113611cfc5781611d01565b816000035b620f424062ffffff9091168a02049750505050505050505b92915050565b6000611d2c848484611d5a565b905060008280611d3857fe5b8486091115611d53576000198110611d4f57600080fd5b6001015b9392505050565b6000808060001985870986860292508281109083900303905080611d905760008411611d8557600080fd5b508290049050611d53565b808411611d9c57600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a0290910302918190038190046001018684119095039490940291909403929092049190911791909102915050939250505056fea264697066735822122074e6898cf0199c0a631a5a9565ca675b36cda1ba1d07c15c9f43fd93e0c0351464736f6c63430007060033000000000000000000000000ade65c38cd4849adba595a4323a8c7ddfe89716a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000271000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000