intial attempt at solution