Assignment 3: updated