more assignment 3 stuff