looking better but code needs clean up