// By the end this snippet of code should sum it all up
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract Coin is ERC20, Ownable{
}
https://www.canva.com/design/DAGX2bNokA4/GxsU4k_ZwuyNJrqcK4LaNw/edit
In Solana, anytime you want to create a token, you can just call an existing SPL Token Program (a pre-deployed smart contract), and then make tokens using a program that has already been deployed on the blockchain. Each wallet needs an Associated Token Account (ATA) to hold tokens for a specific mint.
But on Ethereum, you typically deploy a new smart contract for every token—though this is often done using factory patterns or templates like OpenZeppelin’s contracts.
transfer, balanceOf, or approve.The diagram shows how data (like balances) is organized and stored in Ethereum's World State, which is like a universal ledger.

The diagram shows how data (like balances) is organized and stored in Ethereum's World State, which is like a universal ledger.
There are two main types of addresses in Ethereum:
Any token on the blockchain other than the native token
example: USDT, USDC: they have all been created using the ERC 20 token