added more func