(($) => {
  $.plugin('find', function(context, count) {
    if (!context) {
      return $();
    }
    count = count || null;
    let kids = [];

    this.each((el) => {
      kids.push([].slice.call(el.getElementsByTagName('*')));
    });

    kids = $.matches(kids.concat.apply([], kids), context);

    if (count !== null) {
      kids = kids.slice(0, count);
    }

    return kids;
  });
})(collector);