use struct DoRequestRet to take the place of std::tuple<bool, size_t,