major refactor of code location and naming