'use strict'; 
 | 
var classof = require('../internals/classof'); 
 | 
var getMethod = require('../internals/get-method'); 
 | 
var isNullOrUndefined = require('../internals/is-null-or-undefined'); 
 | 
var Iterators = require('../internals/iterators'); 
 | 
var wellKnownSymbol = require('../internals/well-known-symbol'); 
 | 
  
 | 
var ITERATOR = wellKnownSymbol('iterator'); 
 | 
  
 | 
module.exports = function (it) { 
 | 
  if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR) 
 | 
    || getMethod(it, '@@iterator') 
 | 
    || Iterators[classof(it)]; 
 | 
}; 
 |