Наверняка я далёк от правильного решения, буду рад любой подсказке