https://jython.pythonprogramminghelp.com/3-shocking-to-techniques-of-proof/