Models complete. may add additional helper functions later