add_map_entry_at
add_map_entry_at(end, tmp, cache_map[idx].type, idx + 1);
i -= add_map_entry_at(start, tmp, type, i);
i -= add_map_entry_at(start, tmp, new_type, i);
add_map_entry_at(start, end, type, i);