update some new functions