some more changes pre refactoring