You can spare the loop and just use `m_state.begin() + idx;`, or use `std::advance(it, idx)`