location refactor; more muscle