Now update the dedup to skip ways and interps (already sorted):


Edit

            auto f1 = std::async(std::launch::async, [&]{ deduplicate(data.cell_to_ways); });
            auto f2 = std::async(std::launch::async, [&]{ deduplicate(data.cell_to_addrs); });
            auto f3 = std::async(std::launch::async, [&]{ deduplicate(data.cell_to_interps); });
            auto f4 = std::async(std::launch::async, [&]{ deduplicate(data.cell_to_admin); });

            // cell_to_ways and cell_to_interps are already sorted from concat_and_sort
            auto f2 = std::async(std::launch::async, [&]{ deduplicate(data.cell_to_addrs); });
            auto f4 = std::async(std::launch::async, [&]{ deduplicate(data.cell_to_admin); });