. Implement MOC parameter in RiskModules - DONE
. Use custom EnumerableMap for eTokenStatus and riskModuleStatus. - DONE
. AssetManager in Solidity - DONE
. Upgreadable contracts - DONE
. Variable payout: payout as parameter of resolve - DONE
. Scribble annotations / mythril - Partially DONE
. PolicyPool contract size (now I need runs=100 to compile it) - DONE
. github - CI - DONE
. Change in pricing - DONE
. InsolvencyManager / InsolvencyHook - DONE
. receiveGrant  - DONE
. Governance - DONE
. Implement changeStatus and remove for eToken / riskModule - DONE
. Implement roles and governance - DONE
. Remove CHECKPOINT_ROLE - DONE
. withdrawWonPurePremiums - DONE
. expirePolicy - DONE
. Whitelisting - EToken level - DONE
. AAVEAssetManager in Solidity - DONE
. Reinvest amUSDC into Curve
. RiskModule events
. OTONOMI integration - In progress
. Reserve separation / accounting / Support of other currency reserves
. Checks-Effects-Interactions pattern
  . In resolvePolicy
  . In newPolicy
  . In deposit / withdraw
. RiskModule pause -> resume -> active

To chat with Felipe:

. Governance
. EIP-170 and PolicyPool - Strategies to split the contract and reduce size

alias b-disable="patch /usr/local/lib/python3.9/site-packages/brownie/project/main.py brownie-disable.patch"
alias b-enable="patch -R /usr/local/lib/python3.9/site-packages/brownie/project/main.py brownie-disable.patch"



- Create Ensuro Subgraph

. EToken.totalWithdrawable is not OK. Uses SCR interest rate as fixed number, calculating one year interest when perhaps the duration of the lock is not so long.
  Can be fixed anyway touching _liquidityRequirement (<1)


TODO v2
=======

. cancelPolicy (permission? purePremium / CoC / ensuroFee)
. minimumPremium : make it not recursive
. ensuroFee / premiumForRm (discussion)
. RM specific eTokens
. Separated premium pools
. Avoid small ERC20 transfers (ensuroFee and others)
. Cascade asset manager?
. deterministic / provided by input policyId
. mix unlockScr and discreteEarning and emit a single event with both the unlock amount and the adjustment
. Emit individual events for asset management/eToken to track asset management APY.
