https://numbas.mathcentre.ac.uk/exam/7408/eee2013-practice-digital-electronics-assignment-20.zip?