First commit with problems 1-4