First parts of actual assignment 3