Part 2.1 almost working