function* setIntersection(i1, i2) {
    const s1 = new Set(i1);
    for (const item of i2) {
      if (s1.has(item)) {
        yield item;
      }
    }
  }
@param {Iterable<string>} i1
@param {Iterable<string>} i2