First attempt at solution up