https://graphs.pythonprogramminghelp.com/5-weird-but-effective-for-probability-distributions/