new functions added