always map data, but only cache when there is new data