https://courses.grainger.illinois.edu/ece329/sp2025/secure/past_exams/329fa23_exam3_sol.pdf