https://medium.com/@abhishekmishra13k/unlocking-the-potential-of-generative-adversarial-networks-gans-a-beginners-overview-4ebdd0356da4