https://coinmarketcap.com/community/articles/6645ffbd655cc346c5671380/
Reentrancy attacks in smart contracts, explained