add some new features on model