CD 2023 Assignment 2, Pt. A & B