Mime enables it's users to copy transactions made by an external ethereum address.
- Alice "follows" Bob's address by deploying a smart contract.
- Bob makes transaction(ex. deposits DAI on AAVE).
- Bob's tx is included in block.
- Alice's contract deposits it's DAI on AAVE.
When deploying a smart contract a "strategy" must be set. The strategy is a contract containing a set of ABI encoded method calls manipulators.
- A strategy with ABI manipulators set for certain methods identifiers is deployed.
- Alice follows Bob and provides a valid strategy.
- Alice deposits funds to she's contract.
- Bob makes a transaction.
- The transaction is catched by Mime.
- Mime checks if the transaction fits any manipulator defined in strategy.
- Mime gets Bob's transaction data and submits it Alice's smart contract.
- Alice's smart contract verifies Bob's signature.
- Alice's smart contract checks if Bob's tx fits in strategy.
- Alice's contract manipulates the transaction.
- Alice's contract makes a delegatecall.
- Alice's contract refunds mime protocol for used gas.
- ERC20 approve.
- AAVE deposits.
- Pods.finance.
- Uniswap.
- SushiSwap.
- 1inch.
- Yearn.
mimeprotocol.com