Title: Object-Orientation, Abstraction, and Data Structures Using Scala