https://trac.pythonprogramminghelp.com/5-that-are-proven-to-consumption-and-investment/