/* */ 
var ctx = require("./$.ctx"),
    get = require("./$.iter").get,
    call = require("./$.iter-call");
module.exports = function(iterable, entries, fn, that) {
  var iterator = get(iterable),
      f = ctx(fn, that, entries ? 2 : 1),
      step;
  while (!(step = iterator.next()).done) {
    if (call(iterator, f, step.value, entries) === false) {
      return call.close(iterator);
    }
  }
};
