'use strict';varToInteger=require('es-abstract/2018/ToInteger');varToLength=require('es-abstract/2018/ToLength');varToObject=require('es-abstract/2018/ToObject');varSameValueZero=require('es-abstract/2018/SameValueZero');var$isNaN=require('es-abstract/helpers/isNaN');var$isFinite=require('es-abstract/helpers/isFinite');varGetIntrinsic=require('es-abstract/GetIntrinsic');varcallBound=require('es-abstract/helpers/callBound');varisString=require('is-string');var$charAt=callBound('String.prototype.charAt');var$indexOf=GetIntrinsic('%Array.prototype.indexOf%');// TODO: use callBind.apply without breaking IE 8module.exports=functionincludes(searchElement){varfromIndex=arguments.length>1?ToInteger(arguments[1]):0;if($indexOf&&!$isNaN(searchElement)&&$isFinite(fromIndex)&&typeofsearchElement!=='undefined'){return$indexOf.apply(this,arguments)>-1;}varO=ToObject(this);varlength=ToLength(O.length);if(length===0){returnfalse;}vark=fromIndex>=0?fromIndex:Math.max(0,length+fromIndex);while(k<length){if(SameValueZero(searchElement,isString(O)?$charAt(O,k):O[k])){returntrue;}k+=1;}returnfalse;};