refactor the locations a bit more