https://pythonhomework.pythonprogramminghelp.com/3-greatest-hacks-for-markov-queuing-models/