finessed the solution a littl emore