CSE 340 Course
Work in progress...