Prepend an item to the beginning of an iterable
function unshift(...next) {
    return function (it) {
        return __asyncGenerator(this, arguments, function* () {
            for (let i = 0; i < next.length; ++i)
                yield yield __await(next[next.length - i - 1]);
            yield __await(yield* __asyncDelegator(__asyncValues(it)));
        });
    };
}