refactoring + styles