Framework for CS3213 Homework 3