docs: function objectIterator(obj, sort, kv = false) {
    let keys = Object.keys(obj);
    keys = typeof sort === 'function' ? keys.sort(sort) : keys.sort();
    let index = 0;
  
    return {
      next() {
        if (index < keys.length) {
          const k = keys[index++];
          const value = {};
          if (kv) {
            value.k = k;
            value.v = obj[k];
          } else {
            value[k] = obj[k];
          }
          return {
            value,
            done: false
          };
        }
        return {
          done: true
        };
      }
    };
  }