export async function * takeGen<T> (iter: AsyncIterable<T>, num: number): AsyncIterable<T> {
  let rem = num
  for await (const elem of iter) {
    if (rem-- <= 0) {
      return