miscellaneous model functions