Подправлен интерфейс(абстрагирован от бд)