added more map function