# YAW
- BYOG - Bring your own gas
- GSN - Relayers to pay fee on behaf of you
- YAW - Pay gas from your accumulated cDai
## User Flow
### User signup
- User clicks on create wallet button
- App creates an EOA, prefund it with 0.05`eth`
- App deploys a smart contract wallet with `msg.sender` is above EOA
- App returns a wallet dashboard back to the user
- Wallet is locked until successful wallet setup phase
### Wallet Setup
- App displays a banner to maintain a minimum account balance of 5 DAI to unlock the wallet
- User will send 5 DAIs from some other wallet to this newly created wallet
- App detects a balance change and prompt for user confirmations to supply those DAIs to `compound.finnance`
- After successful tx, user account will be unlocked and ready to use
### DAPP Interaction
- App will display a banner with realtime free transaction counter. This value is derived from user's current`cDai` balance and curret gas price.
- User starts interacting with a dApp in his laptop
- User initiates a walletconnect communication by connecting his mobile browser wallet to desktop dApp
- User creates a tx
- App will check the current eth balance of user's EOA and trigger a liquid event in case if the current eth balance is less than pre-configured threshold amount (0.05eth)
- Liquid event will trigger a cDai/eth swap from uniswap.exchange and refund the EOA to facilitate gas fee for future txs
**NOTE:** User will never see any eth in the whole user-DApp interaction lifecycle
- Check DAI balance, if DAI balance < X display banner
- Else display DAI balance & EOA Eth balance / gasPrice x tokenTransfer gas cost rounded down