peat,
    1. Let _next_ be ? IteratorStep(_iteratorRecord_).
    1. If _next_ is *false*, return _map_.
    1. Let _item_ be ? IteratorValue(_next_).
    1. Let _key_ be Call(_callbackfn_, *null*, « _item_ »)
    1. Let _status_ be Call(_set_, _map_, « _key_.[[Value]], _value_.[[Value]] »).
    1. If _status_ is an abrupt completion, return ? IteratorClose(_iteratorRecord_, _status_).
</emu-alg>
