229 txs
254 calls
constructor
constructor(address _phoenix, address _inferno, address _titanX, (address v3Router, address v3Factory, address positionManager, address owner) _s)
functions
getTwapAmountV3
viewfunction getTwapAmountV3(address tokenIn, address tokenOut, uint256 amount) view returns (uint256 twapAmount, uint224 slippage)
owner
viewfunction owner() view returns (address)
positionManager
viewfunction positionManager() view returns (address)
slippageAdmin
viewfunction slippageAdmin() view returns (address)
slippageConfigs
viewfunction slippageConfigs(address pool) view returns (uint224 slippage, uint32 twapLookback)
state
viewfunction state() view returns (uint32 lastBurnTs, uint32 intervalBetweenBurns, uint128 swapCap, uint64 incentive)
totalPhoenixBurnt
viewfunction totalPhoenixBurnt() view returns (uint256)
v3Factory
viewfunction v3Factory() view returns (address)
v3Router
viewfunction v3Router() view returns (address)
burnPhoenix
nonpayablefunction burnPhoenix()
buyNBurn
nonpayablefunction buyNBurn(uint32 _deadline)
changeIncentive
nonpayablefunction changeIncentive(uint64 _newIncentive)
changeIntervalBetweenBurns
nonpayablefunction changeIntervalBetweenBurns(uint32 _newIntervalBetweenBurns)
changeSlippageAdmin
nonpayablefunction changeSlippageAdmin(address _new)
changeSlippageConfig
nonpayablefunction changeSlippageConfig(address pool, uint224 _newSlippage, uint32 _newLookBack)
changeSwapCap
nonpayablefunction changeSwapCap(uint128 _newCap)
renounceOwnership
nonpayablefunction renounceOwnership()
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
BuyAndBurn
event BuyAndBurn(uint256 indexed phoenixAmount, uint256 indexed infernoAmount)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
Address0
error Address0()
Amount0
error Amount0()
Expired
error Expired()
GreaterThan
error GreaterThan(uint256 a, uint256 b)
IntervalWait
error IntervalWait()
OnlyEOA
error OnlyEOA()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SwapAction__OnlySlippageAdmin
error SwapAction__OnlySlippageAdmin()
SwapActions__InvalidSlippage
error SwapActions__InvalidSlippage()
SwapActions__Observations
error SwapActions__Observations()
T
error T()
creation bytecode
0x610140604052348015610010575f5ffd5b5060405161248038038061248083398101604081905261002f916101ac565b606081015181906001600160a01b03811661006357604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61006c81610118565b50805161007881610167565b602082015161008681610167565b505060408101516001600160a01b0390811660a052815181166080526020820151811660c052606090910151600180546001600160a01b03191691831691909117905593841660e052509082166101005216610120526003805467ffffffff00000001600160c01b03167e2386f26fc10000000000000000000000000000000000000000025800000000179055610276565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811661018e576040516359c662df60e11b815260040160405180910390fd5b50565b80516001600160a01b03811681146101a7575f5ffd5b919050565b5f5f5f5f84860360e08112156101c0575f5ffd5b6101c986610191565b94506101d760208701610191565b93506101e560408701610191565b92506080605f19820112156101f8575f5ffd5b50604051608081016001600160401b038111828210171561022757634e487b7160e01b5f52604160045260245ffd5b60405261023660608701610191565b815261024460808701610191565b602082015261025560a08701610191565b604082015261026660c08701610191565b6060820152939692955090935050565b60805160a05160c05160e051610100516101205161217661030a5f395f818161052f015281816105a20152818161062a015261081401525f818161064b015261067901525f8181610451015281816104a30152818161069a015281816106c401526106f301525f81816101fa015261097501525f6101d301525f818161011a01528181610d540152610e7901526121765ff3fe608060405234801561000f575f5ffd5b5060043610610111575f3560e01c80637c887c591161009e578063beb1e79d1161006e578063beb1e79d14610252578063c19d93fb14610282578063e121ce4114610303578063efcdf9261461035e578063f2fde38b14610371575f5ffd5b80637c887c59146101f55780638da5cb5b1461021c578063904c51b61461022c5780639f47f0481461023f575f5ffd5b8063457c7afa116100e4578063457c7afa1461019457806353a3cfff146101a757806365c1cd35146101af578063715018a6146101c6578063791b98bc146101ce575f5ffd5b80630dc91306146101155780632c192066146101595780632cf744831461016e5780633a237aa014610181575b5f5ffd5b61013c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61016c61016736600461192c565b610384565b005b61016c61017c366004611964565b6103d5565b60015461013c906001600160a01b031681565b61016c6101a2366004611993565b610416565b61016c61044b565b6101b860045481565b604051908152602001610150565b61016c610505565b61013c7f000000000000000000000000000000000000000000000000000000000000000081565b61013c7f000000000000000000000000000000000000000000000000000000000000000081565b5f546001600160a01b031661013c565b61016c61023a366004611964565b610518565b61016c61024d3660046119ae565b6108d0565b610265610260366004611a01565b61096d565b604080519283526001600160e01b03909116602083015201610150565b6003546102c39063ffffffff80821691640100000000810490911690600160401b81046001600160801b031690600160c01b900467ffffffffffffffff1684565b6040805163ffffffff95861681529490931660208501526001600160801b039091169183019190915267ffffffffffffffff166060820152608001610150565b61033a610311366004611993565b60026020525f90815260409020546001600160e01b03811690600160e01b900463ffffffff1682565b604080516001600160e01b03909316835263ffffffff909116602083015201610150565b61016c61036c366004611a3f565b610acc565b61016c61037f366004611993565b610b0e565b61038c610b50565b8067ffffffffffffffff1667016345785d8a00006103aa8282610b7c565b50506003805467ffffffffffffffff909216600160c01b026001600160c01b03909216919091179055565b6103dd610b50565b8063ffffffff166103ed81610bae565b506003805463ffffffff9092166401000000000267ffffffff0000000019909216919091179055565b8061042081610bce565b610428610b50565b50600180546001600160a01b0319166001600160a01b0392909216919091179055565b5f6104757f0000000000000000000000000000000000000000000000000000000000000000610bf5565b90508060045f8282546104889190611a79565b9091555050604051630852cd8d60e31b8152600481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342966c68906024015f604051808303815f87803b1580156104ec575f5ffd5b505af11580156104fe573d5f5f3e3d5ffd5b5050505050565b61050d610b50565b6105165f610c63565b565b8061052281610cb2565b61052a610cd9565b6105537f0000000000000000000000000000000000000000000000000000000000000000610bf5565b61055c81610bae565b6003805463ffffffff8082169161057d916401000000009091041642611a8c565b101561059c57604051637b22948960e01b815260040160405180910390fd5b5f6105c67f0000000000000000000000000000000000000000000000000000000000000000610bf5565b8254909150600160401b90046001600160801b03168111156105f657508054600160401b90046001600160801b03165b81545f90610616908390600160c01b900467ffffffffffffffff16610d04565b90506106228183611a8c565b91505f6106717f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000858a610d2f565b90505f6106c07f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000848b610d2f565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663a9059cbb7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663018193386040518163ffffffff1660e01b8152600401602060405180830381865afa15801561074d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107719190611a9f565b610783846706f05b59d3b20000610d04565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af11580156107cb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ef9190611ace565b506107f861044b565b60405163a9059cbb60e01b8152336004820152602481018490527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610862573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108869190611ace565b50604051849082907f3dcdee83a97284b298a1d5197ac6adf342aa15c061ded0d9318e9b7bf6879cd2905f90a35050825463ffffffff19164263ffffffff16179092555050505050565b8063ffffffff166108e081610bae565b6108e8610efc565b670de0b6b3a76400006001600160e01b038416111561091a576040516338fd8f3960e21b815260040160405180910390fd5b506040805180820182526001600160e01b03938416815263ffffffff92831660208083019182526001600160a01b039096165f90815260029096529190942093519051909116600160e01b029116179055565b5f5f5f6109a67f00000000000000000000000000000000000000000000000000000000000000006109a18888612710610f3b565b610fb1565b6001600160a01b0381165f908152600260209081526040918290208251808401909352546001600160e01b0381168352600160e01b900463ffffffff1690820181905291925090158015610a02575080516001600160e01b0316155b15610a455760405180604001604052806702c68af0bb140000670de0b6b3a7640000610a2e9190611ae7565b67ffffffffffffffff168152600f60209091015290505b5f8160200151603c610a579190611b07565b90505f610a6384611097565b90508163ffffffff168163ffffffff161015610a925760405163c15607ef60e01b815260040160405180910390fd5b5f610a9d858461124f565b5090505f610aaa82611484565b855197509050610abc818a8d8d61179f565b9750505050505050935093915050565b610ad4610b50565b600380546001600160801b03909216600160401b0277ffffffffffffffffffffffffffffffff000000000000000019909216919091179055565b610b16610b50565b6001600160a01b038116610b4457604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b610b4d81610c63565b50565b5f546001600160a01b031633146105165760405163118cdaa760e01b8152336004820152602401610b3b565b818181811015610ba85760405163f5c38b6160e01b815260048101929092526024820152604401610b3b565b50505050565b805f03610b4d57604051635a53a6e960e01b815260040160405180910390fd5b6001600160a01b038116610b4d576040516359c662df60e11b815260040160405180910390fd5b6040516370a0823160e01b81523060048201525f906001600160a01b038316906370a0823190602401602060405180830381865afa158015610c39573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c5d9190611b2d565b92915050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b8063ffffffff16421115610b4d57604051630407b05b60e31b815260040160405180910390fd5b333b158015610ce757503233145b61051657604051639f8129d160e01b815260040160405180910390fd5b5f815f19048311820215610d1f5763c4c5d7f55f526004601cfd5b50670de0b6b3a764000091020490565b5f5f5f610d3d87878761096d565b60405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018990529294509092509088169063095ea7b3906044016020604051808303815f875af1158015610db0573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dd49190611ace565b506040805160a081019091526bffffffffffffffffffffffff19606089811b821660c084015261027160ec1b60d484015288901b1660d78201525f908060eb81016040516020818303038152906040528152602001306001600160a01b031681526020018663ffffffff168152602001878152602001610e5d85856001600160e01b0316610d04565b905260405163c04b8d5960e01b81529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c04b8d5990610eae908490600401611b44565b6020604051808303815f875af1158015610eca573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eee9190611b2d565b93505050505b949350505050565b6001546001600160a01b0316331480610f1e57505f546001600160a01b031633145b610516576040516322a6b32160e21b815260040160405180910390fd5b604080516060810182525f8082526020820181905291810191909152826001600160a01b0316846001600160a01b03161115610f75579192915b6040518060600160405280856001600160a01b03168152602001846001600160a01b031681526020018362ffffff1681525090505b9392505050565b5f81602001516001600160a01b0316825f01516001600160a01b031610610fd6575f5ffd5b815160208084015160408086015181516001600160a01b0395861681860152949092168482015262ffffff90911660608085019190915281518085038201815260808501909252815191909201206001600160f81b031960a08401529085901b6bffffffffffffffffffffffff191660a183015260b58201527fe34f199b19b2b4f47f68442619d555527d244f78a3297ea89325f843f87b8b5460d582015260f50160408051601f1981840301815291905280516020909101209392505050565b5f5f5f836001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e060405180830381865afa1580156110d6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110fa9190611bc4565b5050509350935050505f8161ffff161161113b5760405162461bcd60e51b81526020600482015260026024820152614e4960f01b6044820152606401610b3b565b5f806001600160a01b03861663252c09d784611158876001611c57565b6111629190611c85565b6040516001600160e01b031960e084901b16815261ffff9091166004820152602401608060405180830381865afa15801561119f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111c39190611cb9565b9350505091508061123b5760405163252c09d760e01b81525f60048201526001600160a01b0387169063252c09d790602401608060405180830381865afa158015611210573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112349190611cb9565b5091935050505b6112458242611d0e565b9695505050505050565b5f5f8263ffffffff165f0361128b5760405162461bcd60e51b8152602060048201526002602482015261042560f41b6044820152606401610b3b565b6040805160028082526060820183525f9260208301908036833701905050905083815f815181106112be576112be611d3e565b602002602001019063ffffffff16908163ffffffff16815250505f816001815181106112ec576112ec611d3e565b602002602001019063ffffffff16908163ffffffff16815250505f5f866001600160a01b031663883bdbfd846040518263ffffffff1660e01b81526004016113349190611d52565b5f60405180830381865afa15801561134e573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526113759190810190611e61565b915091505f825f8151811061138c5761138c611d3e565b6020026020010151836001815181106113a7576113a7611d3e565b60200260200101516113b99190611f26565b90505f825f815181106113ce576113ce611d3e565b6020026020010151836001815181106113e9576113e9611d3e565b60200260200101516113fb9190611f53565b905063ffffffff881661140e8184611f72565b97505f8360060b12801561142d57506114278184611fae565b60060b15155b15611440578761143c81611fcf565b9850505b63ffffffff8916640100000000600160c01b03602084901b1661146a6001600160a01b0383611ff0565b6114749190612021565b9750505050505050509250929050565b5f5f5f8360020b12611499578260020b6114a0565b8260020b5f035b9050620d89e88111156114c6576040516315e4079d60e11b815260040160405180910390fd5b5f816001165f036114db57600160801b6114ed565b6ffffcb933bd6fad37aa2d162d1a5940015b70ffffffffffffffffffffffffffffffffff1690506002821615611521576ffff97272373d413259a46990580e213a0260801c5b6004821615611540576ffff2e50f5f656932ef12357cf3c7fdcc0260801c5b600882161561155f576fffe5caca7e10e4e61c3624eaa0941cd00260801c5b601082161561157e576fffcb9843d60f6159c9db58835c9266440260801c5b602082161561159d576fff973b41fa98c081472e6896dfb254c00260801c5b60408216156115bc576fff2ea16466c96a3843ec78b326b528610260801c5b60808216156115db576ffe5dee046a99a2a811c461f1969c30530260801c5b6101008216156115fb576ffcbe86c7900a88aedcffc83b479aa3a40260801c5b61020082161561161b576ff987a7253ac413176f2b074cf7815e540260801c5b61040082161561163b576ff3392b0822b70005940c7a398e4b70f30260801c5b61080082161561165b576fe7159475a2c29b7443b29c7fa6e889d90260801c5b61100082161561167b576fd097f3bdfd2022b8845ad8f792aa58250260801c5b61200082161561169b576fa9f746462d870fdf8a65dc1f90e061e50260801c5b6140008216156116bb576f70d869a156d2a1b890bb3df62baf32f70260801c5b6180008216156116db576f31be135f97d08fd981231505542fcfa60260801c5b620100008216156116fc576f09aa508b5b7a84e1c677de54f3e99bc90260801c5b6202000082161561171c576e5d6af8dedb81196699c329225ee6040260801c5b6204000082161561173b576d2216e584f5fa1ea926041bedfe980260801c5b62080000821615611758576b048a170391f7dc42444e8fa20260801c5b5f8460020b131561177757805f198161177357611773611c71565b0490505b64010000000081061561178b57600161178d565b5f5b60ff16602082901c0192505050919050565b5f6001600160801b036001600160a01b03861611611812575f6117cc60026001600160a01b038816612132565b9050826001600160a01b0316846001600160a01b0316106117fb576117f6600160c01b8683611865565b61180a565b61180a8186600160c01b611865565b915050610ef4565b5f61182b6001600160a01b03871680600160401b611865565b9050826001600160a01b0316846001600160a01b03161061185a57611855600160801b8683611865565b611245565b6112458186600160801b5b5f838302815f1985870982811083820303915050805f036118995783828161188f5761188f611c71565b0492505050610faa565b8084116118b0576118b0600385150260111861191b565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b634e487b715f52806020526024601cfd5b5f6020828403121561193c575f5ffd5b813567ffffffffffffffff81168114610faa575f5ffd5b63ffffffff81168114610b4d575f5ffd5b5f60208284031215611974575f5ffd5b8135610faa81611953565b6001600160a01b0381168114610b4d575f5ffd5b5f602082840312156119a3575f5ffd5b8135610faa8161197f565b5f5f5f606084860312156119c0575f5ffd5b83356119cb8161197f565b925060208401356001600160e01b03811681146119e6575f5ffd5b915060408401356119f681611953565b809150509250925092565b5f5f5f60608486031215611a13575f5ffd5b8335611a1e8161197f565b92506020840135611a2e8161197f565b929592945050506040919091013590565b5f60208284031215611a4f575f5ffd5b81356001600160801b0381168114610faa575f5ffd5b634e487b7160e01b5f52601160045260245ffd5b80820180821115610c5d57610c5d611a65565b81810381811115610c5d57610c5d611a65565b5f60208284031215611aaf575f5ffd5b8151610faa8161197f565b80518015158114611ac9575f5ffd5b919050565b5f60208284031215611ade575f5ffd5b610faa82611aba565b67ffffffffffffffff8281168282160390811115610c5d57610c5d611a65565b63ffffffff8181168382160290811690818114611b2657611b26611a65565b5092915050565b5f60208284031215611b3d575f5ffd5b5051919050565b602081525f825160a0602084015280518060c0850152806020830160e086015e5f60e0828601015260018060a01b0360208601511660408501526040850151606085015260608501516080850152608085015160a085015260e0601f19601f8301168501019250505092915050565b805161ffff81168114611ac9575f5ffd5b5f5f5f5f5f5f5f60e0888a031215611bda575f5ffd5b8751611be58161197f565b8097505060208801518060020b8114611bfc575f5ffd5b9550611c0a60408901611bb3565b9450611c1860608901611bb3565b9350611c2660808901611bb3565b925060a088015160ff81168114611c3b575f5ffd5b9150611c4960c08901611aba565b905092959891949750929550565b61ffff8181168382160190811115610c5d57610c5d611a65565b634e487b7160e01b5f52601260045260245ffd5b5f61ffff831680611c9857611c98611c71565b8061ffff84160691505092915050565b8051600681900b8114611ac9575f5ffd5b5f5f5f5f60808587031215611ccc575f5ffd5b8451611cd781611953565b9350611ce560208601611ca8565b92506040850151611cf58161197f565b9150611d0360608601611aba565b905092959194509250565b63ffffffff8281168282160390811115610c5d57610c5d611a65565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b602080825282518282018190525f918401906040840190835b81811015611d8f57835163ffffffff16835260209384019390920191600101611d6b565b509095945050505050565b604051601f8201601f1916810167ffffffffffffffff81118282101715611dc357611dc3611d2a565b604052919050565b5f67ffffffffffffffff821115611de457611de4611d2a565b5060051b60200190565b5f82601f830112611dfd575f5ffd5b8151611e10611e0b82611dcb565b611d9a565b8082825260208201915060208360051b860101925085831115611e31575f5ffd5b602085015b83811015611e57578051611e498161197f565b835260209283019201611e36565b5095945050505050565b5f5f60408385031215611e72575f5ffd5b825167ffffffffffffffff811115611e88575f5ffd5b8301601f81018513611e98575f5ffd5b8051611ea6611e0b82611dcb565b8082825260208201915060208360051b850101925087831115611ec7575f5ffd5b6020840193505b82841015611ef057611edf84611ca8565b825260209384019390910190611ece565b80955050505050602083015167ffffffffffffffff811115611f10575f5ffd5b611f1c85828601611dee565b9150509250929050565b600682810b9082900b03667fffffffffffff198112667fffffffffffff82131715610c5d57610c5d611a65565b6001600160a01b038281168282160390811115610c5d57610c5d611a65565b5f8160060b8360060b80611f8857611f88611c71565b667fffffffffffff1982145f1982141615611fa557611fa5611a65565b90059392505050565b5f8260060b80611fc057611fc0611c71565b808360060b0791505092915050565b5f8160020b627fffff198103611fe757611fe7611a65565b5f190192915050565b6001600160c01b0381811683821681810290921691818304811482151761201957612019611a65565b505092915050565b5f6001600160c01b0383168061203957612039611c71565b6001600160c01b03929092169190910492915050565b6001815b600184111561208a5780850481111561206e5761206e611a65565b600184161561207c57908102905b60019390931c928002612053565b935093915050565b5f826120a057506001610c5d565b816120ac57505f610c5d565b81600181146120c257600281146120cc576120e8565b6001915050610c5d565b60ff8411156120dd576120dd611a65565b50506001821b610c5d565b5060208310610133831016604e8410600b841016171561210b575081810a610c5d565b6121175f19848461204f565b805f190482111561212a5761212a611a65565b029392505050565b5f610faa60ff84168361209256fea2646970667358221220316b7ab837a03e2c6e67fbceca2c85097b9a560b90da25171cde883738a1091c64736f6c634300081b0033000000000000000000000000fe3f988a90dea3ee537bb43ec1aca7337a15d00200000000000000000000000000f116ac0c304c570daaa68fa6c30a86a04b5c5f000000000000000000000000f19308f923582a6f7c465e5ce7a9dc1bec6665b1000000000000000000000000e592427a0aece92de3edee1f18e0157c058615640000000000000000000000001f98431c8ad98523631ae4a59f267346ea31f984000000000000000000000000c36442b4a4522e871399cd717abdd847ab11fe880000000000000000000000008d40e3bb356a02a3a4dd6dba6cc890fd89675bda