Функциональщина переписана на ооп