added many function with maps