added map2 and map class