clean up / refactoring