'use strict';var wellKnownSymbol=require('./well-known-symbol-f1447879.js'),arrayIteration=require('./array-iteration-ec368d38.js'),arrayMethodHasSpeciesSupport$1=require('./array-method-has-species-support-43b9931e.js');var $ = wellKnownSymbol._;
var $filter = arrayIteration.a.filter;
var arrayMethodHasSpeciesSupport = arrayMethodHasSpeciesSupport$1.a;

var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');

// `Array.prototype.filter` method
// https://tc39.es/ecma262/#sec-array.prototype.filter
// with adding support of @@species
$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
  filter: function filter(callbackfn /* , thisArg */) {
    return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
  }
});