done with map modified