Revised assignment 1