16 txs
17 calls
constructor
constructor(address _indexUtils, address _dexAdapter, address _indexManager, address _leverageManager, address _aspTknFactory, address _aspTknOracleFactory, address _fraxlendPairFactory, address _aspOwnershipTransfer)
functions
aspOwnershipTransfer
viewfunction aspOwnershipTransfer() view returns (address)
aspTknFactory
viewfunction aspTknFactory() view returns (address)
aspTknOracleFactory
viewfunction aspTknOracleFactory() view returns (address)
dexAdapter
viewfunction dexAdapter() view returns (address)
fraxlendPairFactory
viewfunction fraxlendPairFactory() view returns (address)
indexManager
viewfunction indexManager() view returns (address)
indexUtils
viewfunction indexUtils() view returns (address)
leverageManager
viewfunction leverageManager() view returns (address)
owner
viewfunction owner() view returns (address)
addLvfSupportForPod
nonpayablefunction addLvfSupportForPod(address _pod, bytes _aspTknOracleRequiredImmutables, bytes _aspTknOracleOptionalImmutables, bytes _fraxlendPairConfigData) returns (address _aspTkn, address _aspTknOracle, address _fraxlendPair)
createPodAndAddLvfSupport
nonpayablefunction createPodAndAddLvfSupport(address _borrowTkn, bytes _podConstructorArgs, bytes _aspTknOracleRequiredImmutables, bytes _aspTknOracleOptionalImmutables, bytes _fraxlendPairConfigData, bool _isSelfLending) returns (address _newPod, address _aspTkn, address _aspTknOracle, address _fraxlendPair)
renounceOwnership
nonpayablefunction renounceOwnership()
setAspOwnershipTransfer
nonpayablefunction setAspOwnershipTransfer(address _newOwner)
setLevMgrAndFactories
nonpayablefunction setLevMgrAndFactories(address _indexUtils, address _dexAdapter, address _indexManager, address _leverageManager, address _aspTknFactory, address _aspTknOracleFactory, address _fraxlendPairFactory)
transferContractOwnership
nonpayablefunction transferContractOwnership(address _ownable, address _newOwner)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
AddLvfSupportForPod
event AddLvfSupportForPod(address _pod, address _aspTkn, address _aspTknOracle, address _lendingPair)
CreateLvfPod
event CreateLvfPod(address _pod, address _aspTkn, address _aspTknOracle, address _lendingPair)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
SetAspOwnershipTransfer
event SetAspOwnershipTransfer(address _prevOwner, address _newOwner)
TransferContractOwnership
event TransferContractOwnership(address _ownable, address _currentOwner, address _newOwner)
errors
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
SafeERC20FailedOperation
error SafeERC20FailedOperation(address token)
creation bytecode
0x608060405234801561000f575f5ffd5b5060405161230638038061230683398101604081905261002e91610292565b338061005357604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b61005c81610099565b5061006c888888888888886100e8565b600880546001600160a01b0319166001600160a01b03929092169190911790555061032495505050505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038716156100fd578661010a565b6001546001600160a01b03165b600180546001600160a01b0319166001600160a01b039283161790558616156101335785610140565b6002546001600160a01b03165b600280546001600160a01b0319166001600160a01b039283161790558516156101695784610176565b6003546001600160a01b03165b600380546001600160a01b0319166001600160a01b0392831617905584161561019f57836101ac565b6004546001600160a01b03165b600480546001600160a01b0319166001600160a01b039283161790558316156101d557826101e2565b6005546001600160a01b03165b600580546001600160a01b0319166001600160a01b0392831617905582161561020b5781610218565b6006546001600160a01b03165b600680546001600160a01b0319166001600160a01b03928316179055811615610241578061024e565b6007546001600160a01b03165b600780546001600160a01b0319166001600160a01b039290921691909117905550505050505050565b80516001600160a01b038116811461028d575f5ffd5b919050565b5f5f5f5f5f5f5f5f610100898b0312156102aa575f5ffd5b6102b389610277565b97506102c160208a01610277565b96506102cf60408a01610277565b95506102dd60608a01610277565b94506102eb60808a01610277565b93506102f960a08a01610277565b925061030760c08a01610277565b915061031560e08a01610277565b90509295985092959890939650565b611fd5806103315f395ff3fe608060405234801561000f575f5ffd5b50600436106100fb575f3560e01c806381fd6c0211610093578063aa92133e11610063578063aa92133e146101f4578063bde658ea14610231578063c209bf0314610244578063f2fde38b14610267575f5ffd5b806381fd6c02146101ab5780638da5cb5b146101be57806391f03efd146101ce57806397bfdcc8146101e1575f5ffd5b806359f5a164116100ce57806359f5a1641461016a5780635db48b971461017d578063712aad4f14610190578063715018a6146101a3575f5ffd5b80631934f83c146100ff5780632baa9f061461012f578063309a7f33146101425780634fd6936f14610157575b5f5ffd5b600754610112906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b600554610112906001600160a01b031681565b610155610150366004611677565b61027a565b005b610155610165366004611708565b61029a565b61015561017836600461172a565b610303565b600154610112906001600160a01b031681565b600354610112906001600160a01b031681565b610155610417565b600454610112906001600160a01b031681565b5f546001600160a01b0316610112565b600254610112906001600160a01b031681565b600854610112906001600160a01b031681565b610207610202366004611845565b61042a565b604080516001600160a01b0394851681529284166020840152921691810191909152606001610126565b600654610112906001600160a01b031681565b6102576102523660046118f2565b61081d565b60405161012694939291906119c6565b610155610275366004611708565b610c7a565b610282610cb7565b61029187878787878787610ce3565b50505050505050565b6102a2610cb7565b600880546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527faaf38130326cc9aa8508f3233bd916cd6933caac5cdfb66db228c5849309c441910160405180910390a15050565b61030b610cb7565b5f826001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610348573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036c91906119f1565b60405163f2fde38b60e01b81526001600160a01b0384811660048301529192509084169063f2fde38b906024015f604051808303815f87803b1580156103b0575f5ffd5b505af11580156103c2573d5f5f3e3d5ffd5b5050604080516001600160a01b038781168252858116602083015286168183015290517f95a6a0391832f8441689ac2619e917a4b4c8a10024778a953dc9e3e15a4c31159350908190036060019150a1505050565b61041f610cb7565b6104285f610e72565b565b5f5f5f610435610cb7565b5f876001600160a01b0316634f4ce61d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610472573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049691906119f1565b60048054604051632dd01a5d60e11b81526001600160a01b03808516938201939093529293505f92911690635ba034ba90602401602060405180830381865afa1580156104e5573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050991906119f1565b6001600160a01b03160361054a5760405162461bcd60e51b815260206004820152600360248201526223299960e91b60448201526064015b60405180910390fd5b600554604080516326ee0d1b60e01b815290515f926001600160a01b0316916326ee0d1b9160048083019260209291908290030181865afa158015610591573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105b59190611a0c565b90508015610651575f896001600160a01b03166394cc699e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105fa573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061061e91906119f1565b90506106356001600160a01b038216333085610ec1565b60055461064f906001600160a01b03838116911684610f2e565b505b61074360405180602001604052805f8152508a6001600160a01b03166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa15801561069e573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106c59190810190611a72565b8b6001600160a01b03166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610700573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107279190810190611a72565b6002546001548e916001600160a01b0390811691165f80610fb5565b60065460405163a1458ce560e01b81529196506001600160a01b03169063a1458ce59061077a9088908c908c905f90600401611ad9565b6020604051808303815f875af1158015610796573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107ba91906119f1565b93506107c882868689611137565b92506107d4898461126c565b7f64dda83d416db8cd8fa7ba8ccc4ceac7a0a1a572cbb9a2ea16ebc60fd81dd5d08986868660405161080994939291906119c6565b60405180910390a150509450945094915050565b60048054604051632dd01a5d60e11b81526001600160a01b03898116938201939093525f9283928392839283921690635ba034ba90602401602060405180830381865afa158015610870573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089491906119f1565b6001600160a01b0316036108d05760405162461bcd60e51b815260206004820152600360248201526246533160e81b6044820152606401610541565b60408051602080820183525f8083528351918201909352828152600254600154610910938e939092909186916001600160a01b0390811691168c80610fb5565b60065460405163a1458ce560e01b81529192506001600160a01b03169063a1458ce5906109479084908d908d905f90600401611ad9565b6020604051808303815f875af1158015610963573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061098791906119f1565b92506109958b82858a611137565b91506109ac8a876109a6575f6112d4565b836112d4565b94508515610a405760408051602080820183525f80835283519182019093528281526002546001546109f2948f94939290916001600160a01b0391821691168c83610fb5565b9350806001600160a01b0316846001600160a01b031614610a3b5760405162461bcd60e51b815260206004820152600360248201526204153560ec1b6044820152606401610541565b610a44565b8093505b60405163be9c8dbb60e01b81526001600160a01b03868116600483015285169063be9c8dbb906024015f604051808303815f87803b158015610a84575f5ffd5b505af1158015610a96573d5f5f3e3d5ffd5b505060085460405163f2fde38b60e01b81526001600160a01b039182166004820152908716925063f2fde38b91506024015f604051808303815f87803b158015610ade575f5ffd5b505af1158015610af0573d5f5f3e3d5ffd5b50505050826001600160a01b031663cf5aae19866001600160a01b03166394cc699e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b3f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b6391906119f1565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201526024015f604051808303815f87803b158015610ba1575f5ffd5b505af1158015610bb3573d5f5f3e3d5ffd5b50505050610bc1858361126c565b604051631c6c959760e01b81525f60048201526001600160a01b03831690631c6c959790602401610180604051808303815f875af1158015610c05573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c299190611bd1565b5050505050507f655ae55e42c92fb2ca82be6661448ca0e503690a5da205d66ae21e6d264a61e085858585604051610c6494939291906119c6565b60405180910390a1509650965096509692505050565b610c82610cb7565b6001600160a01b038116610cab57604051631e4fbdf760e01b81525f6004820152602401610541565b610cb481610e72565b50565b5f546001600160a01b031633146104285760405163118cdaa760e01b8152336004820152602401610541565b6001600160a01b03871615610cf85786610d05565b6001546001600160a01b03165b600180546001600160a01b0319166001600160a01b03928316179055861615610d2e5785610d3b565b6002546001600160a01b03165b600280546001600160a01b0319166001600160a01b03928316179055851615610d645784610d71565b6003546001600160a01b03165b600380546001600160a01b0319166001600160a01b03928316179055841615610d9a5783610da7565b6004546001600160a01b03165b600480546001600160a01b0319166001600160a01b03928316179055831615610dd05782610ddd565b6005546001600160a01b03165b600580546001600160a01b0319166001600160a01b03928316179055821615610e065781610e13565b6006546001600160a01b03165b600680546001600160a01b0319166001600160a01b03928316179055811615610e3c5780610e49565b6007546001600160a01b03165b600780546001600160a01b0319166001600160a01b039290921691909117905550505050505050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040516001600160a01b038481166024830152838116604483015260648201839052610f289186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b03838183161783525050505061139b565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301525f919085169063dd62ed3e90604401602060405180830381865afa158015610f7b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f9f9190611a0c565b9050610f288484610fb08585611c87565b611407565b87515f9015610fdc5788806020019051810190610fd29190611ca6565b50929a5090985050505b5f88604051602001610fee9190611d86565b60405160208183030381529060405290505f886040516020016110119190611db7565b604051602081830303815290604052905083156110aa576005546040516302035ed760e21b81526001600160a01b039091169063080d7b5c9061106490859085908a908e908e908e905f90600401611dcd565b602060405180830381865afa15801561107f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a391906119f1565b9250611129565b600554604051632f6983d760e21b81526001600160a01b039091169063bda60f5c906110e690859085908a908e908e908e905f90600401611dcd565b6020604051808303815f875af1158015611102573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061112691906119f1565b92505b505098975050505050505050565b5f5f61114586868686611496565b90505f60075f9054906101000a90046001600160a01b03166001600160a01b03166389f09bd46040518163ffffffff1660e01b8152600401602060405180830381865afa158015611198573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111bc9190611a0c565b905080156111f3576111d96001600160a01b038816333084610ec1565b6007546111f3906001600160a01b03898116911683610f2e565b6007546040516203ba1b60e51b81526001600160a01b03909116906277436090611221908590600401611e36565b6020604051808303815f875af115801561123d573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061126191906119f1565b979650505050505050565b60048054604051631656118b60e01b81526001600160a01b03858116938201939093528383166024820152911690631656118b906044015f604051808303815f87803b1580156112ba575f5ffd5b505af11580156112cc573d5f5f3e3d5ffd5b505050505050565b5f5f5f5f5f5f878060200190518101906112ee9190611ca6565b600354949950929750909550935091506001600160a01b03908116906398d98fe7908790879087908c161561132c576113278c8861156a565b61132e565b865b866040518663ffffffff1660e01b815260040161134f959493929190611e48565b6020604051808303815f875af115801561136b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138f91906119f1565b98975050505050505050565b5f5f60205f8451602086015f885af1806113ba576040513d5f823e3d81fd5b50505f513d915081156113d15780600114156113de565b6001600160a01b0384163b155b15610f2857604051635274afe760e01b81526001600160a01b0385166004820152602401610541565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b179052611458848261160a565b610f28576040516001600160a01b0384811660248301525f604483015261148c91869182169063095ea7b390606401610ef6565b610f28848261139b565b60605f5f5f5f5f5f5f888060200190518101906114b39190611eaf565b96509650965096509650965096508b8b8b8989898989898960405160200161154a9a999897969594939291906001600160a01b039a8b168152988a1660208a0152968916604089015263ffffffff9590951660608801529290961660808601526001600160401b031660a085015260c084019490945260e08301939093526101008201929092526101208101919091526101400190565b604051602081830303815290604052975050505050505050949350505050565b60605f5f5f5f5f5f878060200190518101906115869190611f18565b96509650965096509650965050888686868686866040516020016115ec97969594939291906001600160a01b03978816815295871660208701529386166040860152918516606085015284166080840152831660a083015290911660c082015260e00190565b60405160208183030381529060405296505050505050505b92915050565b5f5f5f5f60205f8651602088015f8a5af192503d91505f5190508280156116495750811561163b5780600114611649565b5f866001600160a01b03163b115b9695505050505050565b6001600160a01b0381168114610cb4575f5ffd5b803561167281611653565b919050565b5f5f5f5f5f5f5f60e0888a03121561168d575f5ffd5b873561169881611653565b965060208801356116a881611653565b955060408801356116b881611653565b945060608801356116c881611653565b935060808801356116d881611653565b925060a08801356116e881611653565b915060c08801356116f881611653565b8091505092959891949750929550565b5f60208284031215611718575f5ffd5b813561172381611653565b9392505050565b5f5f6040838503121561173b575f5ffd5b823561174681611653565b9150602083013561175681611653565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b60405160a081016001600160401b038111828210171561179757611797611761565b60405290565b604051601f8201601f191681016001600160401b03811182821017156117c5576117c5611761565b604052919050565b5f6001600160401b038211156117e5576117e5611761565b50601f01601f191660200190565b5f82601f830112611802575f5ffd5b8135611815611810826117cd565b61179d565b818152846020838601011115611829575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f5f5f60808587031215611858575f5ffd5b843561186381611653565b935060208501356001600160401b0381111561187d575f5ffd5b611889878288016117f3565b93505060408501356001600160401b038111156118a4575f5ffd5b6118b0878288016117f3565b92505060608501356001600160401b038111156118cb575f5ffd5b6118d7878288016117f3565b91505092959194509250565b80358015158114611672575f5ffd5b5f5f5f5f5f5f60c08789031215611907575f5ffd5b61191087611667565b955060208701356001600160401b0381111561192a575f5ffd5b61193689828a016117f3565b95505060408701356001600160401b03811115611951575f5ffd5b61195d89828a016117f3565b94505060608701356001600160401b03811115611978575f5ffd5b61198489828a016117f3565b93505060808701356001600160401b0381111561199f575f5ffd5b6119ab89828a016117f3565b9250506119ba60a088016118e3565b90509295509295509295565b6001600160a01b03948516815292841660208401529083166040830152909116606082015260800190565b5f60208284031215611a01575f5ffd5b815161172381611653565b5f60208284031215611a1c575f5ffd5b5051919050565b5f82601f830112611a32575f5ffd5b8151602083015f611a45611810846117cd565b9050828152858383011115611a58575f5ffd5b8282602083015e5f92810160200192909252509392505050565b5f60208284031215611a82575f5ffd5b81516001600160401b03811115611a97575f5ffd5b611aa384828501611a23565b949350505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b6001600160a01b03851681526080602082018190525f90611afc90830186611aab565b8281036040840152611b0e8186611aab565b9150506bffffffffffffffffffffffff8316606083015295945050505050565b805163ffffffff81168114611672575f5ffd5b80516001600160401b0381168114611672575f5ffd5b80516fffffffffffffffffffffffffffffffff81168114611672575f5ffd5b5f60408284031215611b86575f5ffd5b604080519081016001600160401b0381118282101715611ba857611ba8611761565b604052905080611bb783611b57565b8152611bc560208401611b57565b60208201525092915050565b5f5f5f5f5f5f868803610180811215611be8575f5ffd5b8751602089015160408a01519198509650945060a0605f1982011215611c0c575f5ffd5b50611c15611775565b611c2160608901611b2e565b8152611c2f60808901611b2e565b6020820152611c4060a08901611b41565b6040820152611c5160c08901611b41565b6060820152611c6260e08901611b41565b60808201529250611c77886101008901611b76565b91506119ba886101408901611b76565b8082018082111561160457634e487b7160e01b5f52601160045260245ffd5b5f5f5f5f5f60a08688031215611cba575f5ffd5b85516001600160401b03811115611ccf575f5ffd5b611cdb88828901611a23565b95505060208601516001600160401b03811115611cf6575f5ffd5b611d0288828901611a23565b94505060408601516001600160401b03811115611d1d575f5ffd5b611d2988828901611a23565b93505060608601516001600160401b03811115611d44575f5ffd5b611d5088828901611a23565b9250506080860151611d6181611653565b809150509295509295909350565b5f81518060208401855e5f93019283525090919050565b7f4175746f20436f6d706f756e64696e67204c5020666f7220000000000000000081525f6117236018830184611d6f565b61617360f01b81525f6117236002830184611d6f565b60e081525f611ddf60e083018a611aab565b8281036020840152611df1818a611aab565b971515604084015250506001600160a01b0394851660608201529284166080840152921660a08201526bffffffffffffffffffffffff90911660c09091015292915050565b602081525f6117236020830184611aab565b60a081525f611e5a60a0830188611aab565b8281036020840152611e6c8188611aab565b90508281036040840152611e808187611aab565b90508281036060840152611e948186611aab565b91505060018060a01b03831660808301529695505050505050565b5f5f5f5f5f5f5f60e0888a031215611ec5575f5ffd5b611ece88611b2e565b96506020880151611ede81611653565b9550611eec60408901611b41565b606089015160808a015160a08b015160c0909b0151999c989b5091999098919790965090945092505050565b5f5f5f5f5f5f5f60e0888a031215611f2e575f5ffd5b8751611f3981611653565b6020890151909750611f4a81611653565b6040890151909650611f5b81611653565b6060890151909550611f6c81611653565b6080890151909450611f7d81611653565b60a0890151909350611f8e81611653565b60c08901519092506116f88161165356fea2646970667358221220d873b41579586f903c841f153bdf2898ca0fa1d66a51430571cae8904b17cec564736f6c634300081c00330000000000000000000000002bcca7ea2c7eca696ace6d71c9719fb171a1054c000000000000000000000000440daf974bf6c97e9442fffd022ca554ee94219c0000000000000000000000006effcf94993d6a6081204fc3c30473468eb7666e0000000000000000000000004e6ef371c9cdde8c3e6716affeebad14c8c62d0b00000000000000000000000058a5b165697126acd3f3ef07133109495a5fb4f50000000000000000000000007b68b5c8ba1b2d399dc371270ea5cecf5b30adbe0000000000000000000000007769ee42787edbd1c189e07a279e11e2196e84ec00000000000000000000000088eafe23769a4fc2bbf52e77767c3693e6acfbd5