https://courses.grainger.illinois.edu/ece443/sp2025/secure/HW/HW4/HW4.pdf