INF3380 assignment 1