added new functions _2