What is the type of O? Is it "STL" friendly? Something like ```std::copy (begin, end, std::back_inserter(out));```