text: // generator with the do while loop
  function* getValue(stop) {
      var i = 0;
      do {
          yield ++i;
      } while (i % stop != 0);
  }
  
  // function to print the value and invoke next
  function printVal(g, v) {
      if (!v.done) {
          console.log(v.value);
          setImmediate(printVal, g, g.next());
      }
  }
  
  (() => {
      var gen = getValue(6);
      printVal(gen, gen.next());
  })();
  