refactoring, mostly pointers