This should be `std::tuple` rather than `std::pair`, right?