refactored fetching methods into model