Anarchy / Facebook AdBlock 2020

// ==UserScript==
// @name         Facebook AdBlock 2020
// @namespace    http://tampermonkey.net/
// @version      1.1.0
// @description  Remove Facebook Ads - Only English and Spanish
// @author       Anarchy
// @license      MIT
// @match        https://www.facebook.com/*
// @grant        none
// ==/UserScript==

const removeAds = () => {
    var langs = new Array(new Array('S', 'p', 'o', 'n', 's', 'o', 'r', 'e', 'd'),new Array('P', 'u', 'b', 'l', 'i', 'c', 'i', 'd', 'a'));
    var character = null;
    var letChecked = null;
    var feeds = document.getElementById('contentArea').querySelectorAll('[id*=hyperfeed_story_id]');
    for (var i = 0; i < feeds.length; i++)
    {
        var checkAds = feeds[i].querySelector('h5');
        if (checkAds !== null) {
            checkAds = checkAds.nextSibling;
        }

        if (checkAds !== undefined && checkAds !== '' && checkAds !== null) {
          for (var h = 0; h < langs.length; h++) {
            letChecked = new Array(false, false, false, false, false, false, false, false, false);
            for (var j = 0; j < langs[h].length; j++) {
                character = checkAds.querySelectorAll('[data-content="' + langs[h][j] + '"]');
                for (var k = 0; k < character.length; k++) {
                    if (character[k].offsetWidth > 0) {
                        letChecked[j] = true;
                    }
                }
            }
            if (letChecked.indexOf(false) === -1) {
              feeds[i].parentNode.removeChild(feeds[i]);
              console.log('Ad Removed');
            }
          }

        }

    }
}
(function() {
    window.addEventListener('load', () => {
        setTimeout(removeAds, 1000);
    });
    window.addEventListener('scroll', () => {
        setTimeout(removeAds, 1000);
    });
})();