'use strict'; 
 | 
var uncurryThis = require('../internals/function-uncurry-this'); 
 | 
var iterateSimple = require('../internals/iterate-simple'); 
 | 
var MapHelpers = require('../internals/map-helpers'); 
 | 
  
 | 
var Map = MapHelpers.Map; 
 | 
var MapPrototype = MapHelpers.proto; 
 | 
var forEach = uncurryThis(MapPrototype.forEach); 
 | 
var entries = uncurryThis(MapPrototype.entries); 
 | 
var next = entries(new Map()).next; 
 | 
  
 | 
module.exports = function (map, fn, interruptible) { 
 | 
  return interruptible ? iterateSimple({ iterator: entries(map), next: next }, function (entry) { 
 | 
    return fn(entry[1], entry[0]); 
 | 
  }) : forEach(map, fn); 
 | 
}; 
 |