ERC4626
This smart contract is an extension of the ERC20 standard. It allows users to deposit and withdraw assets, mint and redeem shares, and perform accounting calculations. It also includes hooks for additional logic before withdrawals and after deposits.