add model methods and helper methods