scheme updated and new functions added