#9 refactoring... It could be endless process;)