https://courses.grainger.illinois.edu/ece342/fa2019/secure/Exams/Past/midterm1fa16.pdf