Refactor II

More refactoring