started one more refactoring :)