docs: function product(iterables, repeat = 1) {
  
    let pools = (0, _.list)((0, _.ncycle)((0, _.reversed)((0, _.map)(_.list, iterables)), repeat));
  
    return (0, _.map)(_.list, (0, _._product)(pools, 0, pools.length));
  }