export function * take(n) {
  if (n <= 0) {
    return;
  }
  let i = 0;
  for (const value of this) {
    if (i >= n) {
      return;
    }
    yield value;
    i += 1;
  }
}

@@ -92,24 +92,53 @@
  of this) %7B%0A
+    yield value;%0A    i += 1;%0A
     if (i %3E=
@@ -167,37 +167,8 @@
   %7D%0A
-    yield value;%0A    i += 1;%0A
   %7D%0A

fix take bug