my first 4 solutions