1. add model base function