new functions to be incorporated