std::shared_ptr in IdManager