Refactoring

OOP-way