Refactoring && reorginazing