https://courses.grainger.illinois.edu/ece313/sp2025/secure/Section-G-2025/homework/hw5.pdf