This is an ERC-20 contract modified according to OpenZeppelin's implementation and it features the following characteristics:
- There is no initial allocation, all tokens are generated through minting.
- Anyone can call the mint function of the contract for free.
- A mint can be available every 50 seconds.
- The reward for each mint is fixed and will be halved after every 400,000 blocks.
- Minting will stop when the total number of tokens reaches 8,000,000,000.