Array.prototype.filter||(Array.prototype.filter=function(fun){if(null==this)throw new TypeError;var t=Object(this),len=t.length>>>0;if("function"!=typeof fun)throw new TypeError;var val,res=[],thisp=arguments[1];for(let i=0;i>>0;if(0!=len){var x,y,fromIndex=0|fromIndex;let k=Math.max(0<=fromIndex?fromIndex:len-Math.abs(fromIndex),0);for(;k>>0;for(let i=0;i{function isCallable(fn){return"function"==typeof fn||"[object Function]"===toStr.call(fn)}function toLength(value){return value=(value=>(value=Number(value),isNaN(value)?0:0!==value&&isFinite(value)?(0array.push(v)),array}var kValue,len=toLength(items.length),A=isCallable(this)?Object(new this(len)):new Array(len);let k=0;for(;k