Solved 21 and refactorings