refactored models, repository, pagination