my initial solution