'use strict'; 
 | 
var uncurryThis = require('../internals/function-uncurry-this'); 
 | 
var fails = require('../internals/fails'); 
 | 
var classof = require('../internals/classof-raw'); 
 | 
  
 | 
var $Object = Object; 
 | 
var split = uncurryThis(''.split); 
 | 
  
 | 
// fallback for non-array-like ES3 and non-enumerable old V8 strings 
 | 
module.exports = fails(function () { 
 | 
  // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 
 | 
  // eslint-disable-next-line no-prototype-builtins -- safe 
 | 
  return !$Object('z').propertyIsEnumerable(0); 
 | 
}) ? function (it) { 
 | 
  return classof(it) === 'String' ? split(it, '') : $Object(it); 
 | 
} : $Object; 
 |