Add solution
Add tests