From db2d03920730288d7d94856488791116e424345a Mon Sep 17 00:00:00 2001 From: ImgBotApp Date: Wed, 17 Feb 2021 01:22:05 +0000 Subject: [PATCH] [ImgBot] Optimize images /UML.svg -- 94.55kb -> 81.41kb (13.9%) Signed-off-by: ImgBotApp --- UML.svg | 937 +------------------------------------------------------- 1 file changed, 1 insertion(+), 936 deletions(-) diff --git a/UML.svg b/UML.svg index 9b01351..61a82e6 100644 --- a/UML.svg +++ b/UML.svg @@ -1,936 +1 @@ - - - - - - -UmlClassDiagram - - - -0 - -Migrations - -Public: -   owner: address -   last_completed_migration: uint - -Public: -    <<modifier>> restricted() -    constructor() -    setCompleted(completed: uint) -    upgrade(new_address: address) - - - -0->0 - - - - - -1 - -RariFundController - -Private: -   _fundDisabled: bool -   _rariFundManagerContract: address -   _rariFundRebalancerAddress: address -   _supportedPools: uint8[] -   COMP_TOKEN: address -   ROOK_TOKEN: address -   _weth: IEtherToken -   _cachedBalances: uint256[] -Public: -   IS_RARI_FUND_CONTROLLER: bool -   _poolsWithFunds: mapping(uint8=>bool) -   _aaveReferralCode: uint16 -   _enzymeComptroller: address - -Internal: -    addPool(pool: uint8) -    _withdrawFromPool(pool: uint8, amount: uint256) -    _withdrawAllFromPool(pool: uint8) -External: -    setFundManager(newContract: address) -    setFundRebalancer(newAddress: address) -    disableFund() -    enableFund() -    upgradeFundController(newContract: address) -    approveWethToPool(pool: uint8, amount: uint256) -    approvekEtherToKeeperDaoPool(amount: uint256) -    setAaveReferralCode(referralCode: uint16) -    setEnzymeComptroller(comptroller: address) -    depositToPool(pool: uint8, amount: uint256) -    withdrawFromPool(pool: uint8, amount: uint256) -    withdrawAllFromPool(pool: uint8) -    withdrawAllFromPoolOnUpgrade(pool: uint8) -    withdrawToManager(amount: uint256) -    approveTo0x(erc20Contract: address, amount: uint256) -    unwrapAllWeth() -    getRawFundBalances(): (uint256, uint8[], uint256[]) -Public: -    <<fallback>> () -    <<payable>> marketSell0xOrdersFillOrKill(inputErc20Contract: address, orders: LibOrder.Order[], signatures: bytes[], takerAssetFillAmount: uint256) -    <<event>> FundManagerSet(newAddress: address) -    <<event>> FundRebalancerSet(newAddress: address) -    <<event>> FundDisabled() -    <<event>> FundEnabled() -    <<event>> PoolAllocation(action: PoolAllocationAction, pool: LiquidityPool, amount: uint256) -    <<event>> CurrencyTrade(inputErc20Contract: address, inputAmount: uint256, outputAmount: uint256) -    <<modifier>> onlyManager() -    <<modifier>> onlyRebalancer() -    <<modifier>> fundEnabled() -    constructor() -    _upgradeFundController(newContract: address) -    _getPoolBalance(pool: uint8): uint256 -    getPoolBalance(pool: uint8): uint256 -    getEntireBalance(): uint256 -    hasETHInPool(pool: uint8): bool -    withdrawFromPoolKnowingBalance(pool: uint8, amount: uint256, initialBalance: uint256) - - - -1->1 - - - - - -16 - -<<Library>> -ZeroExExchangeController - -Private: -   EXCHANGE_CONTRACT: address -   _exchange: IExchange -   ERC20_PROXY_CONTRACT: address - -Internal: -    allowance(erc20Contract: address): uint256 -    approve(erc20Contract: address, amount: uint256): bool -    marketSellOrdersFillOrKill(orders: LibOrder.Order[], signatures: bytes[], takerAssetFillAmount: uint256, protocolFee: uint256): uint256[] -    marketBuyOrdersFillOrKill(orders: LibOrder.Order[], signatures: bytes[], makerAssetFillAmount: uint256, protocolFee: uint256): uint256[] - - - -1->16 - - - - - -22 - -<<Library>> -KeeperDaoPoolController - -Private: -   KEEPERDAO_CONTRACT: address -   _liquidityPool: ILiquidityPool -   ETHEREUM_ADDRESS: address - -Internal: -    calculatekEtherWithdrawAmount(amount: uint256): uint256 -External: -    getBalance(): uint256 -    approve(amount: uint256) -    deposit(amount: uint256) -    withdraw(amount: uint256) -    withdrawAll(): bool - - - -1->22 - - - - - -1enum0 - -<<enum>> -LiquidityPool - -dYdX -Compound -KeeperDAO -Aave -Alpha -Enzyme - - - -1enum0->1 - - - - - -1enum1 - -<<enum>> -PoolAllocationAction - -Deposit -Withdraw -WithdrawAll - - - -1enum1->1 - - - - - -2 - -RariFundManager - -Private: -   _fundDisabled: bool -   _rariFundControllerContract: address -   _rariFundTokenContract: address -   _rariFundProxyContract: address -   _rariFundRebalancerAddress: address -   _supportedPools: uint8[] -   _authorizedFundManagerDataSource: address -   _rawFundBalanceCache: int256 -   _netDeposits: int256 -   _interestFeeRate: uint256 -   _rawInterestAccruedAtLastFeeRateChange: int256 -   _interestFeesGeneratedAtLastFeeRateChange: int256 -   _interestFeesClaimed: uint256 -   _interestFeeMasterBeneficiary: address -Public: -   rariFundController: RariFundController -   rariFundToken: RariFundToken -   _cachePoolBalance: bool -   _poolBalanceCache: mapping(uint8=>uint256) - -Internal: -    addPool(pool: uint8) -    getPoolBalance(pool: uint8): uint256 -    _depositTo(to: address, amount: uint256): bool -    getREPTBurnAmount(from: address, amount: uint256): uint256 -    _withdrawFrom(from: address, amount: uint256): bool -    _depositFees(): uint8 -External: -    <<payable>> deposit(): bool -    <<payable>> depositTo(to: address): bool -    addMissingPools() -    upgradeFundManager(newContract: address) -    authorizeFundManagerDataSource(authorizedFundManagerDataSource: address) -    setFundManagerData(data: FundManagerData) -    setFundController(newContract: address) -    setFundToken(newContract: address) -    setFundProxy(newContract: address) -    setFundRebalancer(newAddress: address) -    disableFund() -    enableFund() -    balanceOf(account: address): uint256 -    withdraw(amount: uint256): bool -    withdrawFrom(from: address, amount: uint256): bool -    setInterestFeeRate(rate: uint256) -    setInterestFeeMasterBeneficiary(beneficiary: address) -    depositFees(): bool -    withdrawFees(): bool -Public: -    <<fallback>> () -    <<event>> FundManagerUpgraded(newContract: address) -    <<event>> FundControllerSet(newContract: address) -    <<event>> FundTokenSet(newContract: address) -    <<event>> FundProxySet(newContract: address) -    <<event>> FundRebalancerSet(newAddress: address) -    <<event>> FundDisabled() -    <<event>> FundEnabled() -    <<event>> Deposit(sender: address, payee: address, amount: uint256, reptMinted: uint256) -    <<event>> Withdrawal(sender: address, payee: address, amount: uint256, reptBurned: uint256) -    <<event>> InterestFeeDeposit(beneficiary: address, amount: uint256) -    <<event>> InterestFeeWithdrawal(beneficiary: address, amountEth: uint256) -    <<modifier>> onlyToken() -    <<modifier>> onlyProxy() -    <<modifier>> onlyRebalancer() -    <<modifier>> fundEnabled() -    <<modifier>> cachePoolBalance() -    <<modifier>> cacheRawFundBalance() -    initialize() -    getRawFundBalance(): uint256 -    getFundBalance(): uint256 -    getRawInterestAccrued(): int256 -    getInterestAccrued(): int256 -    getInterestFeeRate(): uint256 -    getInterestFeesGenerated(): int256 -    getInterestFeesUnclaimed(): uint256 - - - -2->1 - - - - - -2->2 - - - - - -4 - -RariFundToken - -Public: -   rariGovernanceTokenDistributor: IRariGovernanceTokenDistributor - -External: -    setGovernanceTokenDistributor(newContract: address, force: bool) -Public: -    <<event>> GovernanceTokenDistributorSet(newContract: address) -    initialize() -    transfer(recipient: address, amount: uint256): bool -    transferFrom(sender: address, recipient: address, amount: uint256): bool -    mint(account: address, amount: uint256): bool -    burn(amount: uint256) -    burnFrom(account: address, amount: uint256) -    fundManagerBurnFrom(account: address, amount: uint256) - - - -2->4 - - - - - -5 - -<<Interface>> -IRariGovernanceTokenDistributor - - - -External: -     disabled(): bool -     distributionStartBlock(): uint256 -     distributionEndBlock(): uint256 -     refreshDistributionSpeeds(pool: RariPool, newBalance: uint256) -     refreshDistributionSpeeds(pool: RariPool) -     distributeRgt(holder: address, pool: RariPool): uint256 -     beforeFirstPoolTokenTransferIn(holder: address, pool: RariPool) - - - -2->5 - - - - - -2struct0 - -<<struct>> -FundManagerData - -netDeposits: int256 -rawInterestAccruedAtLastFeeRateChange: int256 -interestFeesGeneratedAtLastFeeRateChange: int256 -interestFeesClaimed: uint256 - - - -2struct0->2 - - - - - -3 - -RariFundProxy - -Private: -   _erc20Contracts: mapping(string=>address) -   _rariFundManagerContract: address -   WETH_CONTRACT: address -   _weth: IEtherToken -Public: -   rariFundManager: RariFundManager - -External: -    setFundManager(newContract: address) -Public: -    <<fallback>> () -    <<payable>> exchangeAndDeposit(inputErc20Contract: address, inputAmount: uint256, orders: LibOrder.Order[], signatures: bytes[], takerAssetFillAmount: uint256) -    <<payable>> withdrawAndExchange(inputAmount: uint256, outputErc20Contract: address, orders: LibOrder.Order[], signatures: bytes[], makerAssetFillAmount: uint256) -    <<event>> FundManagerSet(newContract: address) -    <<event>> PreDepositExchange(inputErc20Contract: address, payee: address, makerAssetFilledAmount: uint256, depositAmount: uint256) -    <<event>> PostWithdrawalExchange(outputErc20Contract: address, payee: address, withdrawalAmount: uint256, takerAssetFilledAmount: uint256) -    constructor() - - - -3->2 - - - - - -3->16 - - - - - -4->5 - - - - - -6 - -<<Abstract>> -AToken - - - -External: -    <<abstract>> redeem(_amount: uint256) -Public: -    <<abstract>> balanceOf(_user: address): uint256 - - - -7 - -<<Abstract>> -LendingPool - - - -External: -    <<abstract>> deposit(_reserve: address, _amount: uint256, _referralCode: uint16) - - - -8 - -<<Abstract>> -Bank - - - -External: -    <<abstract>> deposit() -    <<abstract>> withdraw(share: uint256) -Public: -    <<abstract>> totalETH(): uint256 - - - -9 - -<<Interface>> -CEther - - - -External: -     mint() -     redeem(redeemTokens: uint): uint -     redeemUnderlying(redeemAmount: uint): uint -     balanceOf(account: address): uint -     balanceOfUnderlying(owner: address): uint - - - -10 - -<<Abstract>> -Getters - - - -Public: -    <<abstract>> getAccountBalances(account: Account.Info): (address[], Types.Par[], Types.Wei[]) - - - -23 - -<<Library>> -Account - - - - - - - -10->23 - - - - - -25 - -<<Library>> -Types - - - - - - - -10->25 - - - - - -11 - -<<Abstract>> -Operation - - - -Public: -    <<abstract>> operate(accounts: Account.Info[], actions: Actions.ActionArgs[]) - - - -12 - -SoloMargin - - - - - - - -12->10 - - - - - -12->11 - - - - - -23struct0 - -<<struct>> -Info - -owner: address -number: uint256 - - - -23struct0->23 - - - - - -24 - -<<Library>> -Actions - - - - - - - -24->25 - - - - - -24struct0 - -<<struct>> -ActionArgs - -actionType: ActionType -accountId: uint256 -amount: Types.AssetAmount -primaryMarketId: uint256 -secondaryMarketId: uint256 -otherAddress: address -otherAccountId: uint256 -data: bytes - - - -24struct0->24 - - - - - -24enum0 - -<<enum>> -ActionType - -Deposit -Withdraw -Transfer -Buy -Sell -Trade -Liquidate -Vaporize -Call - - - -24enum0->24 - - - - - -25struct0 - -<<struct>> -AssetAmount - -sign: bool -denomination: AssetDenomination -ref: AssetReference -value: uint256 - - - -25struct0->25 - - - - - -25struct1 - -<<struct>> -Par - -sign: bool -value: uint128 - - - -25struct1->25 - - - - - -25struct2 - -<<struct>> -Wei - -sign: bool -value: uint256 - - - -25struct2->25 - - - - - -25enum0 - -<<enum>> -AssetDenomination - -Wei -Par - - - -25enum0->25 - - - - - -25enum1 - -<<enum>> -AssetReference - -Delta -Target - - - -25enum1->25 - - - - - -13 - -<<Interface>> -ComptrollerLib - - - -External: -     calcGrossShareValue(_requireFinality: bool): (grossShareValue_: uint256, isValid_: bool) -     buyShares(_buyers: address[], _investmentAmounts: uint256[], _minSharesQuantities: uint256[]): (sharesReceivedAmounts_: uint256[]) -     redeemShares(): (payoutAssets_: address[], payoutAmounts_: uint256[]) -     redeemSharesDetailed(_sharesQuantity: uint256, _additionalAssets: address[], _assetsToSkip: address[]): (payoutAssets_: address[], payoutAmounts_: uint256[]) -     getVaultProxy(): (vaultProxy_: address) - - - -14 - -<<Interface>> -IKToken - - - -External: -     underlying(): address -     totalSupply(): uint256 -     balanceOf(account: address): uint256 -     transfer(recipient: address, amount: uint256): bool -     allowance(owner: address, spender: address): uint256 -     approve(spender: address, amount: uint256): bool -     transferFrom(sender: address, recipient: address, amount: uint256): bool -     mint(recipient: address, amount: uint256): bool -     burnFrom(sender: address, amount: uint256) -     addMinter(sender: address) -     renounceMinter() - - - -15 - -<<Interface>> -ILiquidityPool - -Public: -   payable: FunctionTypeName() - -External: -     kToken(_token: address): IKToken -     register(_kToken: IKToken) -     renounceOperator() -     deposit(_token: address, _amount: uint256): uint256 -     withdraw(_to: address, _kToken: IKToken, _kTokenAmount: uint256) -     borrowableBalance(_token: address): uint256 -     underlyingBalance(_token: address, _owner: address): uint256 - - - -15->14 - - - - - -5enum0 - -<<enum>> -RariPool - -Stable -Yield -Ethereum - - - -5enum0->5 - - - - - -17 - -<<Library>> -AavePoolController - -Private: -   LENDING_POOL_CONTRACT: address -   _lendingPool: LendingPool -   LENDING_POOL_CORE_CONTRACT: address -   AETH_CONTRACT: address -   aETH: AToken -   ETHEREUM_ADDRESS: address - -External: -    getBalance(): uint256 -    deposit(amount: uint256, referralCode: uint16) -    withdraw(amount: uint256) -    withdrawAll() - - - -17->6 - - - - - -17->7 - - - - - -18 - -<<Library>> -AlphaPoolController - -Private: -   IBETH_CONTRACT: address -   _ibEth: Bank - -External: -    getBalance(): uint256 -    deposit(amount: uint256) -    withdraw(amount: uint256) -    withdrawAll(): bool - - - -18->8 - - - - - -19 - -<<Library>> -CompoundPoolController - -Private: -   cETH_CONTACT_ADDRESS: address -   _cETHContract: CEther - -External: -    getBalance(): uint256 -    deposit(amount: uint256) -    withdraw(amount: uint256) -    withdrawAll(): bool - - - -19->9 - - - - - -20 - -<<Library>> -DydxPoolController - -Private: -   SOLO_MARGIN_CONTRACT: address -   _soloMargin: SoloMargin -   WETH_MARKET_ID: uint256 -   WETH_CONTRACT: address -   _weth: IEtherToken - -External: -    getBalance(): uint256 -    approve(amount: uint256) -    deposit(amount: uint256) -    withdraw(amount: uint256) -    withdrawAll() - - - -20->12 - - - - - -20->23 - - - - - -20->24 - - - - - -20->25 - - - - - -21 - -<<Library>> -EnzymePoolController - -Private: -   WETH_CONTRACT: address -   _weth: IEtherToken -   IBETH_CONTRACT: address - -External: -    getBalance(comptroller: address): uint256 -    approve(comptroller: address, amount: uint256) -    deposit(comptroller: address, amount: uint256) -    withdraw(comptroller: address, amount: uint256) -    withdrawAll(comptroller: address) - - - -21->13 - - - - - -22->14 - - - - - -22->15 - - - - - +UmlClassDiagram0MigrationsPublic:owner: addresslast_completed_migration: uintPublic:<<modifier>> restricted()constructor()setCompleted(completed: uint)upgrade(new_address: address)0->01RariFundControllerPrivate:_fundDisabled: bool_rariFundManagerContract: address_rariFundRebalancerAddress: address_supportedPools: uint8[]COMP_TOKEN: addressROOK_TOKEN: address_weth: IEtherToken_cachedBalances: uint256[]Public:IS_RARI_FUND_CONTROLLER: bool_poolsWithFunds: mapping(uint8=>bool)_aaveReferralCode: uint16_enzymeComptroller: addressInternal:addPool(pool: uint8)_withdrawFromPool(pool: uint8, amount: uint256)_withdrawAllFromPool(pool: uint8)External:setFundManager(newContract: address)setFundRebalancer(newAddress: address)disableFund()enableFund()upgradeFundController(newContract: address)approveWethToPool(pool: uint8, amount: uint256)approvekEtherToKeeperDaoPool(amount: uint256)setAaveReferralCode(referralCode: uint16)setEnzymeComptroller(comptroller: address)depositToPool(pool: uint8, amount: uint256)withdrawFromPool(pool: uint8, amount: uint256)withdrawAllFromPool(pool: uint8)withdrawAllFromPoolOnUpgrade(pool: uint8)withdrawToManager(amount: uint256)approveTo0x(erc20Contract: address, amount: uint256)unwrapAllWeth()getRawFundBalances(): (uint256, uint8[], uint256[])Public:<<fallback>> ()<<payable>> marketSell0xOrdersFillOrKill(inputErc20Contract: address, orders: LibOrder.Order[], signatures: bytes[], takerAssetFillAmount: uint256)<<event>> FundManagerSet(newAddress: address)<<event>> FundRebalancerSet(newAddress: address)<<event>> FundDisabled()<<event>> FundEnabled()<<event>> PoolAllocation(action: PoolAllocationAction, pool: LiquidityPool, amount: uint256)<<event>> CurrencyTrade(inputErc20Contract: address, inputAmount: uint256, outputAmount: uint256)<<modifier>> onlyManager()<<modifier>> onlyRebalancer()<<modifier>> fundEnabled()constructor()_upgradeFundController(newContract: address)_getPoolBalance(pool: uint8): uint256getPoolBalance(pool: uint8): uint256getEntireBalance(): uint256hasETHInPool(pool: uint8): boolwithdrawFromPoolKnowingBalance(pool: uint8, amount: uint256, initialBalance: uint256)1->116<<Library>>ZeroExExchangeControllerPrivate:EXCHANGE_CONTRACT: address_exchange: IExchangeERC20_PROXY_CONTRACT: addressInternal:allowance(erc20Contract: address): uint256approve(erc20Contract: address, amount: uint256): boolmarketSellOrdersFillOrKill(orders: LibOrder.Order[], signatures: bytes[], takerAssetFillAmount: uint256, protocolFee: uint256): uint256[]marketBuyOrdersFillOrKill(orders: LibOrder.Order[], signatures: bytes[], makerAssetFillAmount: uint256, protocolFee: uint256): uint256[]1->1622<<Library>>KeeperDaoPoolControllerPrivate:KEEPERDAO_CONTRACT: address_liquidityPool: ILiquidityPoolETHEREUM_ADDRESS: addressInternal:calculatekEtherWithdrawAmount(amount: uint256): uint256External:getBalance(): uint256approve(amount: uint256)deposit(amount: uint256)withdraw(amount: uint256)withdrawAll(): bool1->221enum0<<enum>>LiquidityPooldYdXCompoundKeeperDAOAaveAlphaEnzyme1enum0->11enum1<<enum>>PoolAllocationActionDepositWithdrawWithdrawAll1enum1->12RariFundManagerPrivate:_fundDisabled: bool_rariFundControllerContract: address_rariFundTokenContract: address_rariFundProxyContract: address_rariFundRebalancerAddress: address_supportedPools: uint8[]_authorizedFundManagerDataSource: address_rawFundBalanceCache: int256_netDeposits: int256_interestFeeRate: uint256_rawInterestAccruedAtLastFeeRateChange: int256_interestFeesGeneratedAtLastFeeRateChange: int256_interestFeesClaimed: uint256_interestFeeMasterBeneficiary: addressPublic:rariFundController: RariFundControllerrariFundToken: RariFundToken_cachePoolBalance: bool_poolBalanceCache: mapping(uint8=>uint256)Internal:addPool(pool: uint8)getPoolBalance(pool: uint8): uint256_depositTo(to: address, amount: uint256): boolgetREPTBurnAmount(from: address, amount: uint256): uint256_withdrawFrom(from: address, amount: uint256): bool_depositFees(): uint8External:<<payable>> deposit(): bool<<payable>> depositTo(to: address): booladdMissingPools()upgradeFundManager(newContract: address)authorizeFundManagerDataSource(authorizedFundManagerDataSource: address)setFundManagerData(data: FundManagerData)setFundController(newContract: address)setFundToken(newContract: address)setFundProxy(newContract: address)setFundRebalancer(newAddress: address)disableFund()enableFund()balanceOf(account: address): uint256withdraw(amount: uint256): boolwithdrawFrom(from: address, amount: uint256): boolsetInterestFeeRate(rate: uint256)setInterestFeeMasterBeneficiary(beneficiary: address)depositFees(): boolwithdrawFees(): boolPublic:<<fallback>> ()<<event>> FundManagerUpgraded(newContract: address)<<event>> FundControllerSet(newContract: address)<<event>> FundTokenSet(newContract: address)<<event>> FundProxySet(newContract: address)<<event>> FundRebalancerSet(newAddress: address)<<event>> FundDisabled()<<event>> FundEnabled()<<event>> Deposit(sender: address, payee: address, amount: uint256, reptMinted: uint256)<<event>> Withdrawal(sender: address, payee: address, amount: uint256, reptBurned: uint256)<<event>> InterestFeeDeposit(beneficiary: address, amount: uint256)<<event>> InterestFeeWithdrawal(beneficiary: address, amountEth: uint256)<<modifier>> onlyToken()<<modifier>> onlyProxy()<<modifier>> onlyRebalancer()<<modifier>> fundEnabled()<<modifier>> cachePoolBalance()<<modifier>> cacheRawFundBalance()initialize()getRawFundBalance(): uint256getFundBalance(): uint256getRawInterestAccrued(): int256getInterestAccrued(): int256getInterestFeeRate(): uint256getInterestFeesGenerated(): int256getInterestFeesUnclaimed(): uint2562->12->24RariFundTokenPublic:rariGovernanceTokenDistributor: IRariGovernanceTokenDistributorExternal:setGovernanceTokenDistributor(newContract: address, force: bool)Public:<<event>> GovernanceTokenDistributorSet(newContract: address)initialize()transfer(recipient: address, amount: uint256): booltransferFrom(sender: address, recipient: address, amount: uint256): boolmint(account: address, amount: uint256): boolburn(amount: uint256)burnFrom(account: address, amount: uint256)fundManagerBurnFrom(account: address, amount: uint256)2->45<<Interface>>IRariGovernanceTokenDistributorExternal:disabled(): booldistributionStartBlock(): uint256distributionEndBlock(): uint256refreshDistributionSpeeds(pool: RariPool, newBalance: uint256)refreshDistributionSpeeds(pool: RariPool)distributeRgt(holder: address, pool: RariPool): uint256beforeFirstPoolTokenTransferIn(holder: address, pool: RariPool)2->52struct0<<struct>>FundManagerDatanetDeposits: int256rawInterestAccruedAtLastFeeRateChange: int256interestFeesGeneratedAtLastFeeRateChange: int256interestFeesClaimed: uint2562struct0->23RariFundProxyPrivate:_erc20Contracts: mapping(string=>address)_rariFundManagerContract: addressWETH_CONTRACT: address_weth: IEtherTokenPublic:rariFundManager: RariFundManagerExternal:setFundManager(newContract: address)Public:<<fallback>> ()<<payable>> exchangeAndDeposit(inputErc20Contract: address, inputAmount: uint256, orders: LibOrder.Order[], signatures: bytes[], takerAssetFillAmount: uint256)<<payable>> withdrawAndExchange(inputAmount: uint256, outputErc20Contract: address, orders: LibOrder.Order[], signatures: bytes[], makerAssetFillAmount: uint256)<<event>> FundManagerSet(newContract: address)<<event>> PreDepositExchange(inputErc20Contract: address, payee: address, makerAssetFilledAmount: uint256, depositAmount: uint256)<<event>> PostWithdrawalExchange(outputErc20Contract: address, payee: address, withdrawalAmount: uint256, takerAssetFilledAmount: uint256)constructor()3->23->164->56<<Abstract>>ATokenExternal:<<abstract>> redeem(_amount: uint256)Public:<<abstract>> balanceOf(_user: address): uint2567<<Abstract>>LendingPoolExternal:<<abstract>> deposit(_reserve: address, _amount: uint256, _referralCode: uint16)8<<Abstract>>BankExternal:<<abstract>> deposit()<<abstract>> withdraw(share: uint256)Public:<<abstract>> totalETH(): uint2569<<Interface>>CEtherExternal:mint()redeem(redeemTokens: uint): uintredeemUnderlying(redeemAmount: uint): uintbalanceOf(account: address): uintbalanceOfUnderlying(owner: address): uint10<<Abstract>>GettersPublic:<<abstract>> getAccountBalances(account: Account.Info): (address[], Types.Par[], Types.Wei[])23<<Library>>Account10->2325<<Library>>Types10->2511<<Abstract>>OperationPublic:<<abstract>> operate(accounts: Account.Info[], actions: Actions.ActionArgs[])12SoloMargin12->1012->1123struct0<<struct>>Infoowner: addressnumber: uint25623struct0->2324<<Library>>Actions24->2524struct0<<struct>>ActionArgsactionType: ActionTypeaccountId: uint256amount: Types.AssetAmountprimaryMarketId: uint256secondaryMarketId: uint256otherAddress: addressotherAccountId: uint256data: bytes24struct0->2424enum0<<enum>>ActionTypeDepositWithdrawTransferBuySellTradeLiquidateVaporizeCall24enum0->2425struct0<<struct>>AssetAmountsign: booldenomination: AssetDenominationref: AssetReferencevalue: uint25625struct0->2525struct1<<struct>>Parsign: boolvalue: uint12825struct1->2525struct2<<struct>>Weisign: boolvalue: uint25625struct2->2525enum0<<enum>>AssetDenominationWeiPar25enum0->2525enum1<<enum>>AssetReferenceDeltaTarget25enum1->2513<<Interface>>ComptrollerLibExternal:calcGrossShareValue(_requireFinality: bool): (grossShareValue_: uint256, isValid_: bool)buyShares(_buyers: address[], _investmentAmounts: uint256[], _minSharesQuantities: uint256[]): (sharesReceivedAmounts_: uint256[])redeemShares(): (payoutAssets_: address[], payoutAmounts_: uint256[])redeemSharesDetailed(_sharesQuantity: uint256, _additionalAssets: address[], _assetsToSkip: address[]): (payoutAssets_: address[], payoutAmounts_: uint256[])getVaultProxy(): (vaultProxy_: address)14<<Interface>>IKTokenExternal:underlying(): addresstotalSupply(): uint256balanceOf(account: address): uint256transfer(recipient: address, amount: uint256): boolallowance(owner: address, spender: address): uint256approve(spender: address, amount: uint256): booltransferFrom(sender: address, recipient: address, amount: uint256): boolmint(recipient: address, amount: uint256): boolburnFrom(sender: address, amount: uint256)addMinter(sender: address)renounceMinter()15<<Interface>>ILiquidityPoolPublic:payable: FunctionTypeName()External:kToken(_token: address): IKTokenregister(_kToken: IKToken)renounceOperator()deposit(_token: address, _amount: uint256): uint256withdraw(_to: address, _kToken: IKToken, _kTokenAmount: uint256)borrowableBalance(_token: address): uint256underlyingBalance(_token: address, _owner: address): uint25615->145enum0<<enum>>RariPoolStableYieldEthereum5enum0->517<<Library>>AavePoolControllerPrivate:LENDING_POOL_CONTRACT: address_lendingPool: LendingPoolLENDING_POOL_CORE_CONTRACT: addressAETH_CONTRACT: addressaETH: ATokenETHEREUM_ADDRESS: addressExternal:getBalance(): uint256deposit(amount: uint256, referralCode: uint16)withdraw(amount: uint256)withdrawAll()17->617->718<<Library>>AlphaPoolControllerPrivate:IBETH_CONTRACT: address_ibEth: BankExternal:getBalance(): uint256deposit(amount: uint256)withdraw(amount: uint256)withdrawAll(): bool18->819<<Library>>CompoundPoolControllerPrivate:cETH_CONTACT_ADDRESS: address_cETHContract: CEtherExternal:getBalance(): uint256deposit(amount: uint256)withdraw(amount: uint256)withdrawAll(): bool19->920<<Library>>DydxPoolControllerPrivate:SOLO_MARGIN_CONTRACT: address_soloMargin: SoloMarginWETH_MARKET_ID: uint256WETH_CONTRACT: address_weth: IEtherTokenExternal:getBalance(): uint256approve(amount: uint256)deposit(amount: uint256)withdraw(amount: uint256)withdrawAll()20->1220->2320->2420->2521<<Library>>EnzymePoolControllerPrivate:WETH_CONTRACT: address_weth: IEtherTokenIBETH_CONTRACT: addressExternal:getBalance(comptroller: address): uint256approve(comptroller: address, amount: uint256)deposit(comptroller: address, amount: uint256)withdraw(comptroller: address, amount: uint256)withdrawAll(comptroller: address)21->1322->1422->15 \ No newline at end of file