https://django.pythonprogramminghelp.com/how-to-completely-change-nyman-factorization-theorem/