types::none_type insert(types::list<T> &seq, long n, F &&value) { n = n % (1 + seq.size()); // +1 because we want to be able to insert at // the end of seq if (n < 0) n += seq.size(); seq.insert(n, std::forward<F>(value)); return __builtin__::None; }