assignment 3 init