add 5 new functions