improve pop_back