Various Refactoring