refactors a little