update
use new perfect inherited function
Merge branch 'models'