https://richardbrunt.co.uk/blog/debugging-using-the-scientific-method/