You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@unomi.apache.org by jk...@apache.org on 2022/11/03 10:00:24 UTC

[unomi-tracker] branch main updated: UNOMI-681: fix fallback for perso in case of control group detected (#11)

This is an automated email from the ASF dual-hosted git repository.

jkevan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/unomi-tracker.git


The following commit(s) were added to refs/heads/main by this push:
     new 6ddc3db  UNOMI-681: fix fallback for perso in case of control group detected (#11)
6ddc3db is described below

commit 6ddc3db72030264f6290d8db4e5a4191ecf48285
Author: kevan Jahanshahi <jk...@apache.org>
AuthorDate: Thu Nov 3 11:00:20 2022 +0100

    UNOMI-681: fix fallback for perso in case of control group detected (#11)
---
 dist/apache-unomi-tracker.cjs.js     |   31 +-
 dist/apache-unomi-tracker.cjs.js.map |    2 +-
 dist/apache-unomi-tracker.esm.js     |   31 +-
 dist/apache-unomi-tracker.esm.js.map |    2 +-
 dist/apache-unomi-tracker.umd.js     | 3203 +++++++++++++++++-----------------
 dist/apache-unomi-tracker.umd.js.map |    2 +-
 src/apache-unomi-tracker.js          |   37 +-
 7 files changed, 1670 insertions(+), 1638 deletions(-)

diff --git a/dist/apache-unomi-tracker.cjs.js b/dist/apache-unomi-tracker.cjs.js
index 2fe114d..606b3b5 100644
--- a/dist/apache-unomi-tracker.cjs.js
+++ b/dist/apache-unomi-tracker.cjs.js
@@ -190,22 +190,29 @@ var newTracker = function newTracker() {
       var target = personalization.id;
 
       wem._registerPersonalizationCallback(personalization, function (result) {
+        var selectedFilter = null;
         var successfulFilters = [];
 
-        for (var i = 0; i < result.length; i++) {
-          successfulFilters.push(variants[result[i]]);
-        }
+        var inControlGroup = wem._isInControlGroup(target); // In case of control group Unomi is not resolving any strategy or fallback for us. So we have to do the fallback here.
 
-        var selectedFilter = null;
 
-        if (successfulFilters.length > 0) {
-          selectedFilter = successfulFilters[0];
-          var minPos = successfulFilters[0].position;
+        if (inControlGroup && personalization.strategyOptions && personalization.strategyOptions.fallback) {
+          selectedFilter = variants[personalization.strategyOptions.fallback];
+          successfulFilters.push(selectedFilter);
+        } else {
+          for (var i = 0; i < result.length; i++) {
+            successfulFilters.push(variants[result[i]]);
+          }
+
+          if (successfulFilters.length > 0) {
+            selectedFilter = successfulFilters[0];
+            var minPos = successfulFilters[0].position;
 
-          if (minPos >= 0) {
-            for (var j = 1; j < successfulFilters.length; j++) {
-              if (successfulFilters[j].position < minPos) {
-                selectedFilter = successfulFilters[j];
+            if (minPos >= 0) {
+              for (var j = 1; j < successfulFilters.length; j++) {
+                if (successfulFilters[j].position < minPos) {
+                  selectedFilter = successfulFilters[j];
+                }
               }
             }
           }
@@ -227,7 +234,7 @@ var newTracker = function newTracker() {
             } // we now add control group information to event if the user is in the control group.
 
 
-            if (wem._isInControlGroup(target)) {
+            if (inControlGroup) {
               console.info('[WEM] Profile is in control group for target: ' + target + ', adding to personalization event...');
               selectedFilter.event.target.properties.inControlGroup = true;
 
diff --git a/dist/apache-unomi-tracker.cjs.js.map b/dist/apache-unomi-tracker.cjs.js.map
index cacb8c9..e760806 100644
--- a/dist/apache-unomi-tracker.cjs.js.map
+++ b/dist/apache-unomi-tracker.cjs.js.map
@@ -1 +1 @@
-{"version":3,"file":"apache-unomi-tracker.cjs.js","sources":["../src/apache-unomi-tracker.js","../src/index.js"],"sourcesContent":["/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements.  See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compl [...]
\ No newline at end of file
+{"version":3,"file":"apache-unomi-tracker.cjs.js","sources":["../src/apache-unomi-tracker.js","../src/index.js"],"sourcesContent":["/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements.  See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compl [...]
\ No newline at end of file
diff --git a/dist/apache-unomi-tracker.esm.js b/dist/apache-unomi-tracker.esm.js
index 89d8d85..932edc8 100644
--- a/dist/apache-unomi-tracker.esm.js
+++ b/dist/apache-unomi-tracker.esm.js
@@ -182,22 +182,29 @@ var newTracker = function newTracker() {
       var target = personalization.id;
 
       wem._registerPersonalizationCallback(personalization, function (result) {
+        var selectedFilter = null;
         var successfulFilters = [];
 
-        for (var i = 0; i < result.length; i++) {
-          successfulFilters.push(variants[result[i]]);
-        }
+        var inControlGroup = wem._isInControlGroup(target); // In case of control group Unomi is not resolving any strategy or fallback for us. So we have to do the fallback here.
 
-        var selectedFilter = null;
 
-        if (successfulFilters.length > 0) {
-          selectedFilter = successfulFilters[0];
-          var minPos = successfulFilters[0].position;
+        if (inControlGroup && personalization.strategyOptions && personalization.strategyOptions.fallback) {
+          selectedFilter = variants[personalization.strategyOptions.fallback];
+          successfulFilters.push(selectedFilter);
+        } else {
+          for (var i = 0; i < result.length; i++) {
+            successfulFilters.push(variants[result[i]]);
+          }
+
+          if (successfulFilters.length > 0) {
+            selectedFilter = successfulFilters[0];
+            var minPos = successfulFilters[0].position;
 
-          if (minPos >= 0) {
-            for (var j = 1; j < successfulFilters.length; j++) {
-              if (successfulFilters[j].position < minPos) {
-                selectedFilter = successfulFilters[j];
+            if (minPos >= 0) {
+              for (var j = 1; j < successfulFilters.length; j++) {
+                if (successfulFilters[j].position < minPos) {
+                  selectedFilter = successfulFilters[j];
+                }
               }
             }
           }
@@ -219,7 +226,7 @@ var newTracker = function newTracker() {
             } // we now add control group information to event if the user is in the control group.
 
 
-            if (wem._isInControlGroup(target)) {
+            if (inControlGroup) {
               console.info('[WEM] Profile is in control group for target: ' + target + ', adding to personalization event...');
               selectedFilter.event.target.properties.inControlGroup = true;
 
diff --git a/dist/apache-unomi-tracker.esm.js.map b/dist/apache-unomi-tracker.esm.js.map
index 3cbde92..e1a80e5 100644
--- a/dist/apache-unomi-tracker.esm.js.map
+++ b/dist/apache-unomi-tracker.esm.js.map
@@ -1 +1 @@
-{"version":3,"file":"apache-unomi-tracker.esm.js","sources":["../src/apache-unomi-tracker.js","../src/index.js"],"sourcesContent":["/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements.  See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compl [...]
\ No newline at end of file
+{"version":3,"file":"apache-unomi-tracker.esm.js","sources":["../src/apache-unomi-tracker.js","../src/index.js"],"sourcesContent":["/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements.  See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compl [...]
\ No newline at end of file
diff --git a/dist/apache-unomi-tracker.umd.js b/dist/apache-unomi-tracker.umd.js
index 57edd16..327be82 100644
--- a/dist/apache-unomi-tracker.umd.js
+++ b/dist/apache-unomi-tracker.umd.js
@@ -41,1467 +41,1467 @@
 
   var provider = Provider$3;
 
-  const Provider$2 = provider;
-
-  class Crawlers$1 extends Provider$2 {
-    constructor() {
-      super();
-
-      this.data = [
-        ' YLT',
-        '^Aether',
-        '^Amazon Simple Notification Service Agent$',
-        '^Amazon-Route53-Health-Check-Service',
-        '^b0t$',
-        '^bluefish ',
-        '^Calypso v\\/',
-        '^COMODO DCV',
-        '^Corax',
-        '^DangDang',
-        '^DavClnt',
-        '^DHSH',
-        '^docker\\/[0-9]',
-        '^Expanse',
-        '^FDM ',
-        '^git\\/',
-        '^Goose\\/',
-        '^Grabber',
-        '^Gradle\\/',
-        '^HTTPClient\\/',
-        '^HTTPing',
-        '^Java\\/',
-        '^Jeode\\/',
-        '^Jetty\\/',
-        '^Mail\\/',
-        '^Mget',
-        '^Microsoft URL Control',
-        '^Mikrotik\\/',
-        '^Netlab360',
-        '^NG\\/[0-9\\.]',
-        '^NING\\/',
-        '^npm\\/',
-        '^Nuclei',
-        '^PHP-AYMAPI\\/',
-        '^PHP\\/',
-        '^pip\\/',
-        '^pnpm\\/',
-        '^RMA\\/',
-        '^Ruby|Ruby\\/[0-9]',
-        '^Swurl ',
-        '^TLS tester ',
-        '^twine\\/',
-        '^ureq',
-        '^VSE\\/[0-9]',
-        '^WordPress\\.com',
-        '^XRL\\/[0-9]',
-        '^ZmEu',
-        '008\\/',
-        '13TABS',
-        '192\\.comAgent',
-        '2GDPR\\/',
-        '2ip\\.ru',
-        '404enemy',
-        '7Siters',
-        '80legs',
-        'a3logics\\.in',
-        'A6-Indexer',
-        'Abonti',
-        'Aboundex',
-        'aboutthedomain',
-        'Accoona-AI-Agent',
-        'acebookexternalhit\\/',
-        'acoon',
-        'acrylicapps\\.com\\/pulp',
-        'Acunetix',
-        'AdAuth\\/',
-        'adbeat',
-        'AddThis',
-        'ADmantX',
-        'AdminLabs',
-        'adressendeutschland',
-        'adreview\\/',
-        'adscanner',
-        'adstxt-worker',
-        'Adstxtaggregator',
-        'adstxt\\.com',
-        'Adyen HttpClient',
-        'AffiliateLabz\\/',
-        'affilimate-puppeteer',
-        'agentslug',
-        'AHC',
-        'aihit',
-        'aiohttp\\/',
-        'Airmail',
-        'akka-http\\/',
-        'akula\\/',
-        'alertra',
-        'alexa site audit',
-        'Alibaba\\.Security\\.Heimdall',
-        'Alligator',
-        'allloadin',
-        'AllSubmitter',
-        'alyze\\.info',
-        'amagit',
-        'Anarchie',
-        'AndroidDownloadManager',
-        'Anemone',
-        'AngleSharp',
-        'annotate_google',
-        'Anthill',
-        'Anturis Agent',
-        'Ant\\.com',
-        'AnyEvent-HTTP\\/',
-        'Apache Ant\\/',
-        'Apache Droid',
-        'Apache OpenOffice',
-        'Apache-HttpAsyncClient',
-        'Apache-HttpClient',
-        'ApacheBench',
-        'Apexoo',
-        'apimon\\.de',
-        'APIs-Google',
-        'AportWorm\\/',
-        'AppBeat\\/',
-        'AppEngine-Google',
-        'AppleSyndication',
-        'Aprc\\/[0-9]',
-        'Arachmo',
-        'arachnode',
-        'Arachnophilia',
-        'aria2',
-        'Arukereso',
-        'asafaweb',
-        'Asana\\/',
-        'Ask Jeeves',
-        'AskQuickly',
-        'ASPSeek',
-        'Asterias',
-        'Astute',
-        'asynchttp',
-        'Attach',
-        'attohttpc',
-        'autocite',
-        'AutomaticWPTester',
-        'Autonomy',
-        'awin\\.com',
-        'AWS Security Scanner',
-        'axios\\/',
-        'a\\.pr-cy\\.ru',
-        'B-l-i-t-z-B-O-T',
-        'Backlink-Ceck',
-        'backlink-check',
-        'BacklinkHttpStatus',
-        'BackStreet',
-        'BackupLand',
-        'BackWeb',
-        'Bad-Neighborhood',
-        'Badass',
-        'baidu\\.com',
-        'Bandit',
-        'basicstate',
-        'BatchFTP',
-        'Battleztar Bazinga',
-        'baypup\\/',
-        'BazQux',
-        'BBBike',
-        'BCKLINKS',
-        'BDFetch',
-        'BegunAdvertising',
-        'Bewica-security-scan',
-        'Bidtellect',
-        'BigBozz',
-        'Bigfoot',
-        'biglotron',
-        'BingLocalSearch',
-        'BingPreview',
-        'binlar',
-        'biNu image cacher',
-        'Bitacle',
-        'Bitrix link preview',
-        'biz_Directory',
-        'BKCTwitterUnshortener\\/',
-        'Black Hole',
-        'Blackboard Safeassign',
-        'BlackWidow',
-        'BlockNote\\.Net',
-        'BlogBridge',
-        'Bloglines',
-        'Bloglovin',
-        'BlogPulseLive',
-        'BlogSearch',
-        'Blogtrottr',
-        'BlowFish',
-        'boitho\\.com-dc',
-        'Boost\\.Beast',
-        'BPImageWalker',
-        'Braintree-Webhooks',
-        'Branch Metrics API',
-        'Branch-Passthrough',
-        'Brandprotect',
-        'BrandVerity',
-        'Brandwatch',
-        'Brodie\\/',
-        'Browsershots',
-        'BUbiNG',
-        'Buck\\/',
-        'Buddy',
-        'BuiltWith',
-        'Bullseye',
-        'BunnySlippers',
-        'Burf Search',
-        'Butterfly\\/',
-        'BuzzSumo',
-        'CAAM\\/[0-9]',
-        'CakePHP',
-        'Calculon',
-        'Canary%20Mail',
-        'CaretNail',
-        'catexplorador',
-        'CC Metadata Scaper',
-        'Cegbfeieh',
-        'censys',
-        'centuryb.o.t9[at]gmail.com',
-        'Cerberian Drtrs',
-        'CERT\\.at-Statistics-Survey',
-        'cf-facebook',
-        'cg-eye',
-        'changedetection',
-        'ChangesMeter',
-        'Charlotte',
-        'CheckHost',
-        'checkprivacy',
-        'CherryPicker',
-        'ChinaClaw',
-        'Chirp\\/',
-        'chkme\\.com',
-        'Chlooe',
-        'Chromaxa',
-        'CirrusExplorer',
-        'CISPA Vulnerability Notification',
-        'CISPA Web Analyser',
-        'Citoid',
-        'CJNetworkQuality',
-        'Clarsentia',
-        'clips\\.ua\\.ac\\.be',
-        'Cloud mapping',
-        'CloudEndure',
-        'CloudFlare-AlwaysOnline',
-        'Cloudflare-Healthchecks',
-        'Cloudinary',
-        'cmcm\\.com',
-        'coccoc',
-        'cognitiveseo',
-        'ColdFusion',
-        'colly -',
-        'CommaFeed',
-        'Commons-HttpClient',
-        'commonscan',
-        'contactbigdatafr',
-        'contentkingapp',
-        'Contextual Code Sites Explorer',
-        'convera',
-        'CookieReports',
-        'copyright sheriff',
-        'CopyRightCheck',
-        'Copyscape',
-        'cortex\\/',
-        'Cosmos4j\\.feedback',
-        'Covario-IDS',
-        'Craw\\/',
-        'Crescent',
-        'Criteo',
-        'Crowsnest',
-        'CSHttp',
-        'CSSCheck',
-        'Cula\\/',
-        'curb',
-        'Curious George',
-        'curl',
-        'cuwhois\\/',
-        'cybo\\.com',
-        'DAP\\/NetHTTP',
-        'DareBoost',
-        'DatabaseDriverMysqli',
-        'DataCha0s',
-        'Datafeedwatch',
-        'Datanyze',
-        'DataparkSearch',
-        'dataprovider',
-        'DataXu',
-        'Daum(oa)?[ \\/][0-9]',
-        'dBpoweramp',
-        'ddline',
-        'deeris',
-        'delve\\.ai',
-        'Demon',
-        'DeuSu',
-        'developers\\.google\\.com\\/\\+\\/web\\/snippet\\/',
-        'Devil',
-        'Digg',
-        'Digincore',
-        'DigitalPebble',
-        'Dirbuster',
-        'Discourse Forum Onebox',
-        'Dispatch\\/',
-        'Disqus\\/',
-        'DittoSpyder',
-        'dlvr',
-        'DMBrowser',
-        'DNSPod-reporting',
-        'docoloc',
-        'Dolphin http client',
-        'DomainAppender',
-        'DomainLabz',
-        'Domains Project\\/',
-        'Donuts Content Explorer',
-        'dotMailer content retrieval',
-        'dotSemantic',
-        'downforeveryoneorjustme',
-        'Download Wonder',
-        'downnotifier',
-        'DowntimeDetector',
-        'Drip',
-        'drupact',
-        'Drupal \\(\\+http:\\/\\/drupal\\.org\\/\\)',
-        'DTS Agent',
-        'dubaiindex',
-        'DuplexWeb-Google',
-        'DynatraceSynthetic',
-        'EARTHCOM',
-        'Easy-Thumb',
-        'EasyDL',
-        'Ebingbong',
-        'ec2linkfinder',
-        'eCairn-Grabber',
-        'eCatch',
-        'ECCP',
-        'eContext\\/',
-        'Ecxi',
-        'EirGrabber',
-        'ElectricMonk',
-        'elefent',
-        'EMail Exractor',
-        'EMail Wolf',
-        'EmailWolf',
-        'Embarcadero',
-        'Embed PHP Library',
-        'Embedly',
-        'endo\\/',
-        'europarchive\\.org',
-        'evc-batch',
-        'EventMachine HttpClient',
-        'Everwall Link Expander',
-        'Evidon',
-        'Evrinid',
-        'ExactSearch',
-        'ExaleadCloudview',
-        'Excel\\/',
-        'exif',
-        'ExoRank',
-        'Exploratodo',
-        'Express WebPictures',
-        'Extreme Picture Finder',
-        'EyeNetIE',
-        'ezooms',
-        'facebookexternalhit',
-        'facebookexternalua',
-        'facebookplatform',
-        'fairshare',
-        'Faraday v',
-        'fasthttp',
-        'Faveeo',
-        'Favicon downloader',
-        'faviconarchive',
-        'faviconkit',
-        'FavOrg',
-        'Feed Wrangler',
-        'Feedable\\/',
-        'Feedbin',
-        'FeedBooster',
-        'FeedBucket',
-        'FeedBunch\\/',
-        'FeedBurner',
-        'feeder',
-        'Feedly',
-        'FeedshowOnline',
-        'Feedshow\\/',
-        'Feedspot',
-        'FeedViewer\\/',
-        'Feedwind\\/',
-        'FeedZcollector',
-        'feeltiptop',
-        'Fetch API',
-        'Fetch\\/[0-9]',
-        'Fever\\/[0-9]',
-        'FHscan',
-        'Fiery%20Feeds',
-        'Filestack',
-        'Fimap',
-        'findlink',
-        'findthatfile',
-        'FlashGet',
-        'FlipboardBrowserProxy',
-        'FlipboardProxy',
-        'FlipboardRSS',
-        'Flock\\/',
-        'Florienzh\\/',
-        'fluffy',
-        'Flunky',
-        'flynxapp',
-        'forensiq',
-        'FoundSeoTool',
-        'free thumbnails',
-        'Freeuploader',
-        'FreshRSS',
-        'Funnelback',
-        'Fuzz Faster U Fool',
-        'G-i-g-a-b-o-t',
-        'g00g1e\\.net',
-        'ganarvisitas',
-        'gdnplus\\.com',
-        'geek-tools',
-        'Genieo',
-        'GentleSource',
-        'GetCode',
-        'Getintent',
-        'GetLinkInfo',
-        'getprismatic',
-        'GetRight',
-        'getroot',
-        'GetURLInfo\\/',
-        'GetWeb',
-        'Geziyor',
-        'Ghost Inspector',
-        'GigablastOpenSource',
-        'GIS-LABS',
-        'github-camo',
-        'GitHub-Hookshot',
-        'github\\.com',
-        'Go http package',
-        'Go [\\d\\.]* package http',
-        'Go!Zilla',
-        'Go-Ahead-Got-It',
-        'Go-http-client',
-        'go-mtasts\\/',
-        'gobyus',
-        'Gofeed',
-        'gofetch',
-        'Goldfire Server',
-        'GomezAgent',
-        'gooblog',
-        'Goodzer\\/',
-        'Google AppsViewer',
-        'Google Desktop',
-        'Google favicon',
-        'Google Keyword Suggestion',
-        'Google Keyword Tool',
-        'Google Page Speed Insights',
-        'Google PP Default',
-        'Google Search Console',
-        'Google Web Preview',
-        'Google-Ads-Creatives-Assistant',
-        'Google-Ads-Overview',
-        'Google-Adwords',
-        'Google-Apps-Script',
-        'Google-Calendar-Importer',
-        'Google-HotelAdsVerifier',
-        'Google-HTTP-Java-Client',
-        'Google-Podcast',
-        'Google-Publisher-Plugin',
-        'Google-Read-Aloud',
-        'Google-SearchByImage',
-        'Google-Site-Verification',
-        'Google-SMTP-STS',
-        'Google-speakr',
-        'Google-Structured-Data-Testing-Tool',
-        'Google-Transparency-Report',
-        'google-xrawler',
-        'Google-Youtube-Links',
-        'GoogleDocs',
-        'GoogleHC\\/',
-        'GoogleProber',
-        'GoogleProducer',
-        'GoogleSites',
-        'Gookey',
-        'GoSpotCheck',
-        'gosquared-thumbnailer',
-        'Gotit',
-        'GoZilla',
-        'grabify',
-        'GrabNet',
-        'Grafula',
-        'Grammarly',
-        'GrapeFX',
-        'GreatNews',
-        'Gregarius',
-        'GRequests',
-        'grokkit',
-        'grouphigh',
-        'grub-client',
-        'gSOAP\\/',
-        'GT::WWW',
-        'GTmetrix',
-        'GuzzleHttp',
-        'gvfs\\/',
-        'HAA(A)?RTLAND http client',
-        'Haansoft',
-        'hackney\\/',
-        'Hadi Agent',
-        'HappyApps-WebCheck',
-        'Hardenize',
-        'Hatena',
-        'Havij',
-        'HaxerMen',
-        'HeadlessChrome',
-        'HEADMasterSEO',
-        'HeartRails_Capture',
-        'help@dataminr\\.com',
-        'heritrix',
-        'Hexometer',
-        'historious',
-        'hkedcity',
-        'hledejLevne\\.cz',
-        'Hloader',
-        'HMView',
-        'Holmes',
-        'HonesoSearchEngine',
-        'HootSuite Image proxy',
-        'Hootsuite-WebFeed',
-        'hosterstats',
-        'HostTracker',
-        'ht:\\/\\/check',
-        'htdig',
-        'HTMLparser',
-        'htmlyse',
-        'HTTP Banner Detection',
-        'http-get',
-        'HTTP-Header-Abfrage',
-        'http-kit',
-        'http-request\\/',
-        'HTTP-Tiny',
-        'HTTP::Lite',
-        'http:\\/\\/www.neomo.de\\/',
-        'HttpComponents',
-        'httphr',
-        'HTTPie',
-        'HTTPMon',
-        'httpRequest',
-        'httpscheck',
-        'httpssites_power',
-        'httpunit',
-        'HttpUrlConnection',
-        'http\\.rb\\/',
-        'HTTP_Compression_Test',
-        'http_get',
-        'http_request2',
-        'http_requester',
-        'httrack',
-        'huaweisymantec',
-        'HubSpot ',
-        'HubSpot-Link-Resolver',
-        'Humanlinks',
-        'i2kconnect\\/',
-        'Iblog',
-        'ichiro',
-        'Id-search',
-        'IdeelaborPlagiaat',
-        'IDG Twitter Links Resolver',
-        'IDwhois\\/',
-        'Iframely',
-        'igdeSpyder',
-        'iGooglePortal',
-        'IlTrovatore',
-        'Image Fetch',
-        'Image Sucker',
-        'ImageEngine\\/',
-        'ImageVisu\\/',
-        'Imagga',
-        'imagineeasy',
-        'imgsizer',
-        'InAGist',
-        'inbound\\.li parser',
-        'InDesign%20CC',
-        'Indy Library',
-        'InetURL',
-        'infegy',
-        'infohelfer',
-        'InfoTekies',
-        'InfoWizards Reciprocal Link',
-        'inpwrd\\.com',
-        'instabid',
-        'Instapaper',
-        'Integrity',
-        'integromedb',
-        'Intelliseek',
-        'InterGET',
-        'Internet Ninja',
-        'InternetSeer',
-        'internetVista monitor',
-        'internetwache',
-        'internet_archive',
-        'intraVnews',
-        'IODC',
-        'IOI',
-        'iplabel',
-        'ips-agent',
-        'IPS\\/[0-9]',
-        'IPWorks HTTP\\/S Component',
-        'iqdb\\/',
-        'Iria',
-        'Irokez',
-        'isitup\\.org',
-        'iskanie',
-        'isUp\\.li',
-        'iThemes Sync\\/',
-        'IZaBEE',
-        'iZSearch',
-        'JAHHO',
-        'janforman',
-        'Jaunt\\/',
-        'Java.*outbrain',
-        'javelin\\.io',
-        'Jbrofuzz',
-        'Jersey\\/',
-        'JetCar',
-        'Jigsaw',
-        'Jobboerse',
-        'JobFeed discovery',
-        'Jobg8 URL Monitor',
-        'jobo',
-        'Jobrapido',
-        'Jobsearch1\\.5',
-        'JoinVision Generic',
-        'JolokiaPwn',
-        'Joomla',
-        'Jorgee',
-        'JS-Kit',
-        'JungleKeyThumbnail',
-        'JustView',
-        'Kaspersky Lab CFR link resolver',
-        'Kelny\\/',
-        'Kerrigan\\/',
-        'KeyCDN',
-        'Keyword Density',
-        'Keywords Research',
-        'khttp\\/',
-        'KickFire',
-        'KimonoLabs\\/',
-        'Kml-Google',
-        'knows\\.is',
-        'KOCMOHABT',
-        'kouio',
-        'kube-probe',
-        'kubectl',
-        'kulturarw3',
-        'KumKie',
-        'Larbin',
-        'Lavf\\/',
-        'leakix\\.net',
-        'LeechFTP',
-        'LeechGet',
-        'letsencrypt',
-        'Lftp',
-        'LibVLC',
-        'LibWeb',
-        'Libwhisker',
-        'libwww',
-        'Licorne',
-        'Liferea\\/',
-        'Lighthouse',
-        'Lightspeedsystems',
-        'Likse',
-        'limber\\.io',
-        'Link Valet',
-        'LinkAlarm\\/',
-        'LinkAnalyser',
-        'linkCheck',
-        'linkdex',
-        'LinkExaminer',
-        'linkfluence',
-        'linkpeek',
-        'LinkPreview',
-        'LinkScan',
-        'LinksManager',
-        'LinkTiger',
-        'LinkWalker',
-        'link_thumbnailer',
-        'Lipperhey',
-        'Litemage_walker',
-        'livedoor ScreenShot',
-        'LoadImpactRload',
-        'localsearch-web',
-        'LongURL API',
-        'longurl-r-package',
-        'looid\\.com',
-        'looksystems\\.net',
-        'ltx71',
-        'lua-resty-http',
-        'Lucee \\(CFML Engine\\)',
-        'Lush Http Client',
-        'lwp-request',
-        'lwp-trivial',
-        'LWP::Simple',
-        'lycos',
-        'LYT\\.SR',
-        'L\\.webis',
-        'mabontland',
-        'MacOutlook\\/',
-        'Mag-Net',
-        'MagpieRSS',
-        'Mail::STS',
-        'MailChimp',
-        'Mail\\.Ru',
-        'Majestic12',
-        'makecontact\\/',
-        'Mandrill',
-        'MapperCmd',
-        'marketinggrader',
-        'MarkMonitor',
-        'MarkWatch',
-        'Mass Downloader',
-        'masscan\\/',
-        'Mata Hari',
-        'mattermost',
-        'Mediametric',
-        'Mediapartners-Google',
-        'mediawords',
-        'MegaIndex\\.ru',
-        'MeltwaterNews',
-        'Melvil Rawi',
-        'MemGator',
-        'Metaspinner',
-        'MetaURI',
-        'MFC_Tear_Sample',
-        'Microsearch',
-        'Microsoft Data Access',
-        'Microsoft Office',
-        'Microsoft Outlook',
-        'Microsoft Windows Network Diagnostics',
-        'Microsoft-WebDAV-MiniRedir',
-        'Microsoft\\.Data\\.Mashup',
-        'MIDown tool',
-        'MIIxpc',
-        'Mindjet',
-        'Miniature\\.io',
-        'Miniflux',
-        'mio_httpc',
-        'Miro-HttpClient',
-        'Mister PiX',
-        'mixdata dot com',
-        'mixed-content-scan',
-        'mixnode',
-        'Mnogosearch',
-        'mogimogi',
-        'Mojeek',
-        'Mojolicious \\(Perl\\)',
-        'monitis',
-        'Monitority\\/',
-        'Monit\\/',
-        'montastic',
-        'MonTools',
-        'Moreover',
-        'Morfeus Fucking Scanner',
-        'Morning Paper',
-        'MovableType',
-        'mowser',
-        'Mrcgiguy',
-        'Mr\\.4x3 Powered',
-        'MS Web Services Client Protocol',
-        'MSFrontPage',
-        'mShots',
-        'MuckRack\\/',
-        'muhstik-scan',
-        'MVAClient',
-        'MxToolbox\\/',
-        'myseosnapshot',
-        'nagios',
-        'Najdi\\.si',
-        'Name Intelligence',
-        'NameFo\\.com',
-        'Nameprotect',
-        'nationalarchives',
-        'Navroad',
-        'NearSite',
-        'Needle',
-        'Nessus',
-        'Net Vampire',
-        'NetAnts',
-        'NETCRAFT',
-        'NetLyzer',
-        'NetMechanic',
-        'NetNewsWire',
-        'Netpursual',
-        'netresearch',
-        'NetShelter ContentScan',
-        'Netsparker',
-        'NetSystemsResearch',
-        'nettle',
-        'NetTrack',
-        'Netvibes',
-        'NetZIP',
-        'Neustar WPM',
-        'NeutrinoAPI',
-        'NewRelicPinger',
-        'NewsBlur .*Finder',
-        'NewsGator',
-        'newsme',
-        'newspaper\\/',
-        'Nexgate Ruby Client',
-        'NG-Search',
-        'nghttp2',
-        'Nibbler',
-        'NICErsPRO',
-        'NihilScio',
-        'Nikto',
-        'nineconnections',
-        'NLNZ_IAHarvester',
-        'Nmap Scripting Engine',
-        'node-fetch',
-        'node-superagent',
-        'node-urllib',
-        'Nodemeter',
-        'NodePing',
-        'node\\.io',
-        'nominet\\.org\\.uk',
-        'nominet\\.uk',
-        'Norton-Safeweb',
-        'Notifixious',
-        'notifyninja',
-        'NotionEmbedder',
-        'nuhk',
-        'nutch',
-        'Nuzzel',
-        'nWormFeedFinder',
-        'nyawc\\/',
-        'Nymesis',
-        'NYU',
-        'Observatory\\/',
-        'Ocelli\\/',
-        'Octopus',
-        'oegp',
-        'Offline Explorer',
-        'Offline Navigator',
-        'OgScrper',
-        'okhttp',
-        'omgili',
-        'OMSC',
-        'Online Domain Tools',
-        'Open Source RSS',
-        'OpenCalaisSemanticProxy',
-        'Openfind',
-        'OpenLinkProfiler',
-        'Openstat\\/',
-        'OpenVAS',
-        'OPPO A33',
-        'Optimizer',
-        'Orbiter',
-        'OrgProbe\\/',
-        'orion-semantics',
-        'Outlook-Express',
-        'Outlook-iOS',
-        'Owler',
-        'Owlin',
-        'ownCloud News',
-        'ow\\.ly',
-        'OxfordCloudService',
-        'page scorer',
-        'Page Valet',
-        'page2rss',
-        'PageFreezer',
-        'PageGrabber',
-        'PagePeeker',
-        'PageScorer',
-        'Pagespeed\\/',
-        'PageThing',
-        'page_verifier',
-        'Panopta',
-        'panscient',
-        'Papa Foto',
-        'parsijoo',
-        'Pavuk',
-        'PayPal IPN',
-        'pcBrowser',
-        'Pcore-HTTP',
-        'PDF24 URL To PDF',
-        'Pearltrees',
-        'PECL::HTTP',
-        'peerindex',
-        'Peew',
-        'PeoplePal',
-        'Perlu -',
-        'PhantomJS Screenshoter',
-        'PhantomJS\\/',
-        'Photon\\/',
-        'php-requests',
-        'phpservermon',
-        'Pi-Monster',
-        'Picscout',
-        'Picsearch',
-        'PictureFinder',
-        'Pimonster',
-        'Pingability',
-        'PingAdmin\\.Ru',
-        'Pingdom',
-        'Pingoscope',
-        'PingSpot',
-        'ping\\.blo\\.gs',
-        'pinterest\\.com',
-        'Pixray',
-        'Pizilla',
-        'Plagger\\/',
-        'Pleroma ',
-        'Ploetz \\+ Zeller',
-        'Plukkie',
-        'plumanalytics',
-        'PocketImageCache',
-        'PocketParser',
-        'Pockey',
-        'PodcastAddict\\/',
-        'POE-Component-Client-HTTP',
-        'Polymail\\/',
-        'Pompos',
-        'Porkbun',
-        'Port Monitor',
-        'postano',
-        'postfix-mta-sts-resolver',
-        'PostmanRuntime',
-        'postplanner\\.com',
-        'PostPost',
-        'postrank',
-        'PowerPoint\\/',
-        'Prebid',
-        'Prerender',
-        'Priceonomics Analysis Engine',
-        'PrintFriendly',
-        'PritTorrent',
-        'Prlog',
-        'probethenet',
-        'Project ?25499',
-        'Project-Resonance',
-        'prospectb2b',
-        'Protopage',
-        'ProWebWalker',
-        'proximic',
-        'PRTG Network Monitor',
-        'pshtt, https scanning',
-        'PTST ',
-        'PTST\\/[0-9]+',
-        'Pump',
-        'Python-httplib2',
-        'python-httpx',
-        'python-requests',
-        'Python-urllib',
-        'Qirina Hurdler',
-        'QQDownload',
-        'QrafterPro',
-        'Qseero',
-        'Qualidator',
-        'QueryN Metasearch',
-        'queuedriver',
-        'quic-go-HTTP\\/',
-        'QuiteRSS',
-        'Quora Link Preview',
-        'Qwantify',
-        'Radian6',
-        'RadioPublicImageResizer',
-        'Railgun\\/',
-        'RankActive',
-        'RankFlex',
-        'RankSonicSiteAuditor',
-        'RapidLoad\\/',
-        'Re-re Studio',
-        'ReactorNetty',
-        'Readability',
-        'RealDownload',
-        'RealPlayer%20Downloader',
-        'RebelMouse',
-        'Recorder',
-        'RecurPost\\/',
-        'redback\\/',
-        'ReederForMac',
-        'Reeder\\/',
-        'ReGet',
-        'RepoMonkey',
-        'request\\.js',
-        'reqwest\\/',
-        'ResponseCodeTest',
-        'RestSharp',
-        'Riddler',
-        'Rival IQ',
-        'Robosourcer',
-        'Robozilla',
-        'ROI Hunter',
-        'RPT-HTTPClient',
-        'RSSMix\\/',
-        'RSSOwl',
-        'RyowlEngine',
-        'safe-agent-scanner',
-        'SalesIntelligent',
-        'Saleslift',
-        'SAP NetWeaver Application Server',
-        'SauceNAO',
-        'SBIder',
-        'sc-downloader',
-        'scalaj-http',
-        'Scamadviser-Frontend',
-        'ScanAlert',
-        'scan\\.lol',
-        'Scoop',
-        'scooter',
-        'ScopeContentAG-HTTP-Client',
-        'ScoutJet',
-        'ScoutURLMonitor',
-        'ScrapeBox Page Scanner',
-        'Scrapy',
-        'Screaming',
-        'ScreenShotService',
-        'Scrubby',
-        'Scrutiny\\/',
-        'Search37',
-        'searchenginepromotionhelp',
-        'Searchestate',
-        'SearchExpress',
-        'SearchSight',
-        'SearchWP',
-        'search\\.thunderstone',
-        'Seeker',
-        'semanticdiscovery',
-        'semanticjuice',
-        'Semiocast HTTP client',
-        'Semrush',
-        'Sendsay\\.Ru',
-        'sentry\\/',
-        'SEO Browser',
-        'Seo Servis',
-        'seo-nastroj\\.cz',
-        'seo4ajax',
-        'Seobility',
-        'SEOCentro',
-        'SeoCheck',
-        'SEOkicks',
-        'SEOlizer',
-        'Seomoz',
-        'SEOprofiler',
-        'seoscanners',
-        'SEOsearch',
-        'seositecheckup',
-        'SEOstats',
-        'servernfo',
-        'sexsearcher',
-        'Seznam',
-        'Shelob',
-        'Shodan',
-        'Shoppimon',
-        'ShopWiki',
-        'ShortLinkTranslate',
-        'shortURL lengthener',
-        'shrinktheweb',
-        'Sideqik',
-        'Siege',
-        'SimplePie',
-        'SimplyFast',
-        'Siphon',
-        'SISTRIX',
-        'Site Sucker',
-        'Site-Shot\\/',
-        'Site24x7',
-        'SiteBar',
-        'Sitebeam',
-        'Sitebulb\\/',
-        'SiteCondor',
-        'SiteExplorer',
-        'SiteGuardian',
-        'Siteimprove',
-        'SiteIndexed',
-        'Sitemap(s)? Generator',
-        'SitemapGenerator',
-        'SiteMonitor',
-        'Siteshooter B0t',
-        'SiteSnagger',
-        'SiteSucker',
-        'SiteTruth',
-        'Sitevigil',
-        'sitexy\\.com',
-        'SkypeUriPreview',
-        'Slack\\/',
-        'sli-systems\\.com',
-        'slider\\.com',
-        'slurp',
-        'SlySearch',
-        'SmartDownload',
-        'SMRF URL Expander',
-        'SMUrlExpander',
-        'Snake',
-        'Snappy',
-        'SnapSearch',
-        'Snarfer\\/',
-        'SniffRSS',
-        'sniptracker',
-        'Snoopy',
-        'SnowHaze Search',
-        'sogou web',
-        'SortSite',
-        'Sottopop',
-        'sovereign\\.ai',
-        'SpaceBison',
-        'SpamExperts',
-        'Spammen',
-        'Spanner',
-        'spaziodati',
-        'SPDYCheck',
-        'Specificfeeds',
-        'speedy',
-        'SPEng',
-        'Spinn3r',
-        'spray-can',
-        'Sprinklr ',
-        'spyonweb',
-        'sqlmap',
-        'Sqlworm',
-        'Sqworm',
-        'SSL Labs',
-        'ssl-tools',
-        'StackRambler',
-        'Statastico\\/',
-        'Statically-',
-        'StatusCake',
-        'Steeler',
-        'Stratagems Kumo',
-        'Stripe\\/',
-        'Stroke\\.cz',
-        'StudioFACA',
-        'StumbleUpon',
-        'suchen',
-        'Sucuri',
-        'summify',
-        'SuperHTTP',
-        'Surphace Scout',
-        'Suzuran',
-        'swcd ',
-        'Symfony BrowserKit',
-        'Symfony2 BrowserKit',
-        'Synapse\\/',
-        'Syndirella\\/',
-        'SynHttpClient-Built',
-        'Sysomos',
-        'sysscan',
-        'Szukacz',
-        'T0PHackTeam',
-        'tAkeOut',
-        'Tarantula\\/',
-        'Taringa UGC',
-        'TarmotGezgin',
-        'tchelebi\\.io',
-        'techiaith\\.cymru',
-        'TelegramBot',
-        'Teleport',
-        'Telesoft',
-        'Telesphoreo',
-        'Telesphorep',
-        'Tenon\\.io',
-        'teoma',
-        'terrainformatica',
-        'Test Certificate Info',
-        'testuri',
-        'Tetrahedron',
-        'TextRazor Downloader',
-        'The Drop Reaper',
-        'The Expert HTML Source Viewer',
-        'The Intraformant',
-        'The Knowledge AI',
-        'theinternetrules',
-        'TheNomad',
-        'Thinklab',
-        'Thumbor',
-        'Thumbshots',
-        'ThumbSniper',
-        'timewe\\.net',
-        'TinEye',
-        'Tiny Tiny RSS',
-        'TLSProbe\\/',
-        'Toata',
-        'topster',
-        'touche\\.com',
-        'Traackr\\.com',
-        'tracemyfile',
-        'Trackuity',
-        'TrapitAgent',
-        'Trendiction',
-        'Trendsmap',
-        'trendspottr',
-        'truwoGPS',
-        'TryJsoup',
-        'TulipChain',
-        'Turingos',
-        'Turnitin',
-        'tweetedtimes',
-        'Tweetminster',
-        'Tweezler\\/',
-        'twibble',
-        'Twice',
-        'Twikle',
-        'Twingly',
-        'Twisted PageGetter',
-        'Typhoeus',
-        'ubermetrics-technologies',
-        'uclassify',
-        'UdmSearch',
-        'ultimate_sitemap_parser',
-        'unchaos',
-        'unirest-java',
-        'UniversalFeedParser',
-        'unshortenit',
-        'Unshorten\\.It',
-        'Untiny',
-        'UnwindFetchor',
-        'updated',
-        'updown\\.io daemon',
-        'Upflow',
-        'Uptimia',
-        'URL Verifier',
-        'Urlcheckr',
-        'URLitor',
-        'urlresolver',
-        'Urlstat',
-        'URLTester',
-        'UrlTrends Ranking Updater',
-        'URLy Warning',
-        'URLy\\.Warning',
-        'URL\\/Emacs',
-        'Vacuum',
-        'Vagabondo',
-        'VB Project',
-        'vBSEO',
-        'VCI',
-        'via ggpht\\.com GoogleImageProxy',
-        'Virusdie',
-        'visionutils',
-        'vkShare',
-        'VoidEYE',
-        'Voil',
-        'voltron',
-        'voyager\\/',
-        'VSAgent\\/',
-        'VSB-TUO\\/',
-        'Vulnbusters Meter',
-        'VYU2',
-        'w3af\\.org',
-        'W3C-checklink',
-        'W3C-mobileOK',
-        'W3C_Unicorn',
-        'WAC-OFU',
-        'WakeletLinkExpander',
-        'WallpapersHD',
-        'Wallpapers\\/[0-9]+',
-        'wangling',
-        'Wappalyzer',
-        'WatchMouse',
-        'WbSrch\\/',
-        'WDT\\.io',
-        'Web Auto',
-        'Web Collage',
-        'Web Enhancer',
-        'Web Fetch',
-        'Web Fuck',
-        'Web Pix',
-        'Web Sauger',
-        'Web spyder',
-        'Web Sucker',
-        'web-capture\\.net',
-        'Web-sniffer',
-        'Webalta',
-        'Webauskunft',
-        'WebAuto',
-        'WebCapture',
-        'WebClient\\/',
-        'webcollage',
-        'WebCookies',
-        'WebCopier',
-        'WebCorp',
-        'WebDataStats',
-        'WebDoc',
-        'WebEnhancer',
-        'WebFetch',
-        'WebFuck',
-        'WebGazer',
-        'WebGo IS',
-        'WebImageCollector',
-        'WebImages',
-        'WebIndex',
-        'webkit2png',
-        'WebLeacher',
-        'webmastercoffee',
-        'webmon ',
-        'WebPix',
-        'WebReaper',
-        'WebSauger',
-        'webscreenie',
-        'Webshag',
-        'Webshot',
-        'Website Quester',
-        'websitepulse agent',
-        'WebsiteQuester',
-        'Websnapr',
-        'WebSniffer',
-        'Webster',
-        'WebStripper',
-        'WebSucker',
-        'webtech\\/',
-        'WebThumbnail',
-        'Webthumb\\/',
-        'WebWhacker',
-        'WebZIP',
-        'WeLikeLinks',
-        'WEPA',
-        'WeSEE',
-        'wf84',
-        'Wfuzz\\/',
-        'wget',
-        'WhatCMS',
-        'WhatsApp',
-        'WhatsMyIP',
-        'WhatWeb',
-        'WhereGoes\\?',
-        'Whibse',
-        'WhoAPI\\/',
-        'WhoRunsCoinHive',
-        'Whynder Magnet',
-        'Windows-RSS-Platform',
-        'WinHttp-Autoproxy-Service',
-        'WinHTTP\\/',
-        'WinPodder',
-        'wkhtmlto',
-        'wmtips',
-        'Woko',
-        'Wolfram HTTPClient',
-        'woorankreview',
-        'WordPress\\/',
-        'WordupinfoSearch',
-        'Word\\/',
-        'worldping-api',
-        'wotbox',
-        'WP Engine Install Performance API',
-        'WP Rocket',
-        'wpif',
-        'wprecon\\.com survey',
-        'WPScan',
-        'wscheck',
-        'Wtrace',
-        'WWW-Collector-E',
-        'WWW-Mechanize',
-        'WWW::Document',
-        'WWW::Mechanize',
-        'WWWOFFLE',
-        'www\\.monitor\\.us',
-        'x09Mozilla',
-        'x22Mozilla',
-        'XaxisSemanticsClassifier',
-        'XenForo\\/',
-        'Xenu Link Sleuth',
-        'XING-contenttabreceiver',
-        'xpymep([0-9]?)\\.exe',
-        'Y!J-[A-Z][A-Z][A-Z]',
-        'Yaanb',
-        'yacy',
-        'Yahoo Link Preview',
-        'YahooCacheSystem',
-        'YahooMailProxy',
-        'YahooYSMcm',
-        'YandeG',
-        'Yandex(?!Search)',
-        'yanga',
-        'yeti',
-        'Yo-yo',
-        'Yoleo Consumer',
-        'yomins\\.com',
-        'yoogliFetchAgent',
-        'YottaaMonitor',
-        'Your-Website-Sucks',
-        'yourls\\.org',
-        'YoYs\\.net',
-        'YP\\.PL',
-        'Zabbix',
-        'Zade',
-        'Zao',
-        'Zauba',
-        'Zemanta Aggregator',
-        'Zend\\\\Http\\\\Client',
-        'Zend_Http_Client',
-        'Zermelo',
-        'Zeus ',
-        'zgrab',
-        'ZnajdzFoto',
-        'ZnHTTP',
-        'Zombie\\.js',
-        'Zoom\\.Mac',
-        'ZoteroTranslationServer',
-        'ZyBorg',
-        '[a-z0-9\\-_]*(bot|crawl|archiver|transcoder|spider|uptime|validator|fetcher|cron|checker|reader|extractor|monitoring|analyzer|scraper)',
-      ];
-    }
-  }
-
+  const Provider$2 = provider;
+
+  class Crawlers$1 extends Provider$2 {
+    constructor() {
+      super();
+
+      this.data = [
+        ' YLT',
+        '^Aether',
+        '^Amazon Simple Notification Service Agent$',
+        '^Amazon-Route53-Health-Check-Service',
+        '^b0t$',
+        '^bluefish ',
+        '^Calypso v\\/',
+        '^COMODO DCV',
+        '^Corax',
+        '^DangDang',
+        '^DavClnt',
+        '^DHSH',
+        '^docker\\/[0-9]',
+        '^Expanse',
+        '^FDM ',
+        '^git\\/',
+        '^Goose\\/',
+        '^Grabber',
+        '^Gradle\\/',
+        '^HTTPClient\\/',
+        '^HTTPing',
+        '^Java\\/',
+        '^Jeode\\/',
+        '^Jetty\\/',
+        '^Mail\\/',
+        '^Mget',
+        '^Microsoft URL Control',
+        '^Mikrotik\\/',
+        '^Netlab360',
+        '^NG\\/[0-9\\.]',
+        '^NING\\/',
+        '^npm\\/',
+        '^Nuclei',
+        '^PHP-AYMAPI\\/',
+        '^PHP\\/',
+        '^pip\\/',
+        '^pnpm\\/',
+        '^RMA\\/',
+        '^Ruby|Ruby\\/[0-9]',
+        '^Swurl ',
+        '^TLS tester ',
+        '^twine\\/',
+        '^ureq',
+        '^VSE\\/[0-9]',
+        '^WordPress\\.com',
+        '^XRL\\/[0-9]',
+        '^ZmEu',
+        '008\\/',
+        '13TABS',
+        '192\\.comAgent',
+        '2GDPR\\/',
+        '2ip\\.ru',
+        '404enemy',
+        '7Siters',
+        '80legs',
+        'a3logics\\.in',
+        'A6-Indexer',
+        'Abonti',
+        'Aboundex',
+        'aboutthedomain',
+        'Accoona-AI-Agent',
+        'acebookexternalhit\\/',
+        'acoon',
+        'acrylicapps\\.com\\/pulp',
+        'Acunetix',
+        'AdAuth\\/',
+        'adbeat',
+        'AddThis',
+        'ADmantX',
+        'AdminLabs',
+        'adressendeutschland',
+        'adreview\\/',
+        'adscanner',
+        'adstxt-worker',
+        'Adstxtaggregator',
+        'adstxt\\.com',
+        'Adyen HttpClient',
+        'AffiliateLabz\\/',
+        'affilimate-puppeteer',
+        'agentslug',
+        'AHC',
+        'aihit',
+        'aiohttp\\/',
+        'Airmail',
+        'akka-http\\/',
+        'akula\\/',
+        'alertra',
+        'alexa site audit',
+        'Alibaba\\.Security\\.Heimdall',
+        'Alligator',
+        'allloadin',
+        'AllSubmitter',
+        'alyze\\.info',
+        'amagit',
+        'Anarchie',
+        'AndroidDownloadManager',
+        'Anemone',
+        'AngleSharp',
+        'annotate_google',
+        'Anthill',
+        'Anturis Agent',
+        'Ant\\.com',
+        'AnyEvent-HTTP\\/',
+        'Apache Ant\\/',
+        'Apache Droid',
+        'Apache OpenOffice',
+        'Apache-HttpAsyncClient',
+        'Apache-HttpClient',
+        'ApacheBench',
+        'Apexoo',
+        'apimon\\.de',
+        'APIs-Google',
+        'AportWorm\\/',
+        'AppBeat\\/',
+        'AppEngine-Google',
+        'AppleSyndication',
+        'Aprc\\/[0-9]',
+        'Arachmo',
+        'arachnode',
+        'Arachnophilia',
+        'aria2',
+        'Arukereso',
+        'asafaweb',
+        'Asana\\/',
+        'Ask Jeeves',
+        'AskQuickly',
+        'ASPSeek',
+        'Asterias',
+        'Astute',
+        'asynchttp',
+        'Attach',
+        'attohttpc',
+        'autocite',
+        'AutomaticWPTester',
+        'Autonomy',
+        'awin\\.com',
+        'AWS Security Scanner',
+        'axios\\/',
+        'a\\.pr-cy\\.ru',
+        'B-l-i-t-z-B-O-T',
+        'Backlink-Ceck',
+        'backlink-check',
+        'BacklinkHttpStatus',
+        'BackStreet',
+        'BackupLand',
+        'BackWeb',
+        'Bad-Neighborhood',
+        'Badass',
+        'baidu\\.com',
+        'Bandit',
+        'basicstate',
+        'BatchFTP',
+        'Battleztar Bazinga',
+        'baypup\\/',
+        'BazQux',
+        'BBBike',
+        'BCKLINKS',
+        'BDFetch',
+        'BegunAdvertising',
+        'Bewica-security-scan',
+        'Bidtellect',
+        'BigBozz',
+        'Bigfoot',
+        'biglotron',
+        'BingLocalSearch',
+        'BingPreview',
+        'binlar',
+        'biNu image cacher',
+        'Bitacle',
+        'Bitrix link preview',
+        'biz_Directory',
+        'BKCTwitterUnshortener\\/',
+        'Black Hole',
+        'Blackboard Safeassign',
+        'BlackWidow',
+        'BlockNote\\.Net',
+        'BlogBridge',
+        'Bloglines',
+        'Bloglovin',
+        'BlogPulseLive',
+        'BlogSearch',
+        'Blogtrottr',
+        'BlowFish',
+        'boitho\\.com-dc',
+        'Boost\\.Beast',
+        'BPImageWalker',
+        'Braintree-Webhooks',
+        'Branch Metrics API',
+        'Branch-Passthrough',
+        'Brandprotect',
+        'BrandVerity',
+        'Brandwatch',
+        'Brodie\\/',
+        'Browsershots',
+        'BUbiNG',
+        'Buck\\/',
+        'Buddy',
+        'BuiltWith',
+        'Bullseye',
+        'BunnySlippers',
+        'Burf Search',
+        'Butterfly\\/',
+        'BuzzSumo',
+        'CAAM\\/[0-9]',
+        'CakePHP',
+        'Calculon',
+        'Canary%20Mail',
+        'CaretNail',
+        'catexplorador',
+        'CC Metadata Scaper',
+        'Cegbfeieh',
+        'censys',
+        'centuryb.o.t9[at]gmail.com',
+        'Cerberian Drtrs',
+        'CERT\\.at-Statistics-Survey',
+        'cf-facebook',
+        'cg-eye',
+        'changedetection',
+        'ChangesMeter',
+        'Charlotte',
+        'CheckHost',
+        'checkprivacy',
+        'CherryPicker',
+        'ChinaClaw',
+        'Chirp\\/',
+        'chkme\\.com',
+        'Chlooe',
+        'Chromaxa',
+        'CirrusExplorer',
+        'CISPA Vulnerability Notification',
+        'CISPA Web Analyser',
+        'Citoid',
+        'CJNetworkQuality',
+        'Clarsentia',
+        'clips\\.ua\\.ac\\.be',
+        'Cloud mapping',
+        'CloudEndure',
+        'CloudFlare-AlwaysOnline',
+        'Cloudflare-Healthchecks',
+        'Cloudinary',
+        'cmcm\\.com',
+        'coccoc',
+        'cognitiveseo',
+        'ColdFusion',
+        'colly -',
+        'CommaFeed',
+        'Commons-HttpClient',
+        'commonscan',
+        'contactbigdatafr',
+        'contentkingapp',
+        'Contextual Code Sites Explorer',
+        'convera',
+        'CookieReports',
+        'copyright sheriff',
+        'CopyRightCheck',
+        'Copyscape',
+        'cortex\\/',
+        'Cosmos4j\\.feedback',
+        'Covario-IDS',
+        'Craw\\/',
+        'Crescent',
+        'Criteo',
+        'Crowsnest',
+        'CSHttp',
+        'CSSCheck',
+        'Cula\\/',
+        'curb',
+        'Curious George',
+        'curl',
+        'cuwhois\\/',
+        'cybo\\.com',
+        'DAP\\/NetHTTP',
+        'DareBoost',
+        'DatabaseDriverMysqli',
+        'DataCha0s',
+        'Datafeedwatch',
+        'Datanyze',
+        'DataparkSearch',
+        'dataprovider',
+        'DataXu',
+        'Daum(oa)?[ \\/][0-9]',
+        'dBpoweramp',
+        'ddline',
+        'deeris',
+        'delve\\.ai',
+        'Demon',
+        'DeuSu',
+        'developers\\.google\\.com\\/\\+\\/web\\/snippet\\/',
+        'Devil',
+        'Digg',
+        'Digincore',
+        'DigitalPebble',
+        'Dirbuster',
+        'Discourse Forum Onebox',
+        'Dispatch\\/',
+        'Disqus\\/',
+        'DittoSpyder',
+        'dlvr',
+        'DMBrowser',
+        'DNSPod-reporting',
+        'docoloc',
+        'Dolphin http client',
+        'DomainAppender',
+        'DomainLabz',
+        'Domains Project\\/',
+        'Donuts Content Explorer',
+        'dotMailer content retrieval',
+        'dotSemantic',
+        'downforeveryoneorjustme',
+        'Download Wonder',
+        'downnotifier',
+        'DowntimeDetector',
+        'Drip',
+        'drupact',
+        'Drupal \\(\\+http:\\/\\/drupal\\.org\\/\\)',
+        'DTS Agent',
+        'dubaiindex',
+        'DuplexWeb-Google',
+        'DynatraceSynthetic',
+        'EARTHCOM',
+        'Easy-Thumb',
+        'EasyDL',
+        'Ebingbong',
+        'ec2linkfinder',
+        'eCairn-Grabber',
+        'eCatch',
+        'ECCP',
+        'eContext\\/',
+        'Ecxi',
+        'EirGrabber',
+        'ElectricMonk',
+        'elefent',
+        'EMail Exractor',
+        'EMail Wolf',
+        'EmailWolf',
+        'Embarcadero',
+        'Embed PHP Library',
+        'Embedly',
+        'endo\\/',
+        'europarchive\\.org',
+        'evc-batch',
+        'EventMachine HttpClient',
+        'Everwall Link Expander',
+        'Evidon',
+        'Evrinid',
+        'ExactSearch',
+        'ExaleadCloudview',
+        'Excel\\/',
+        'exif',
+        'ExoRank',
+        'Exploratodo',
+        'Express WebPictures',
+        'Extreme Picture Finder',
+        'EyeNetIE',
+        'ezooms',
+        'facebookexternalhit',
+        'facebookexternalua',
+        'facebookplatform',
+        'fairshare',
+        'Faraday v',
+        'fasthttp',
+        'Faveeo',
+        'Favicon downloader',
+        'faviconarchive',
+        'faviconkit',
+        'FavOrg',
+        'Feed Wrangler',
+        'Feedable\\/',
+        'Feedbin',
+        'FeedBooster',
+        'FeedBucket',
+        'FeedBunch\\/',
+        'FeedBurner',
+        'feeder',
+        'Feedly',
+        'FeedshowOnline',
+        'Feedshow\\/',
+        'Feedspot',
+        'FeedViewer\\/',
+        'Feedwind\\/',
+        'FeedZcollector',
+        'feeltiptop',
+        'Fetch API',
+        'Fetch\\/[0-9]',
+        'Fever\\/[0-9]',
+        'FHscan',
+        'Fiery%20Feeds',
+        'Filestack',
+        'Fimap',
+        'findlink',
+        'findthatfile',
+        'FlashGet',
+        'FlipboardBrowserProxy',
+        'FlipboardProxy',
+        'FlipboardRSS',
+        'Flock\\/',
+        'Florienzh\\/',
+        'fluffy',
+        'Flunky',
+        'flynxapp',
+        'forensiq',
+        'FoundSeoTool',
+        'free thumbnails',
+        'Freeuploader',
+        'FreshRSS',
+        'Funnelback',
+        'Fuzz Faster U Fool',
+        'G-i-g-a-b-o-t',
+        'g00g1e\\.net',
+        'ganarvisitas',
+        'gdnplus\\.com',
+        'geek-tools',
+        'Genieo',
+        'GentleSource',
+        'GetCode',
+        'Getintent',
+        'GetLinkInfo',
+        'getprismatic',
+        'GetRight',
+        'getroot',
+        'GetURLInfo\\/',
+        'GetWeb',
+        'Geziyor',
+        'Ghost Inspector',
+        'GigablastOpenSource',
+        'GIS-LABS',
+        'github-camo',
+        'GitHub-Hookshot',
+        'github\\.com',
+        'Go http package',
+        'Go [\\d\\.]* package http',
+        'Go!Zilla',
+        'Go-Ahead-Got-It',
+        'Go-http-client',
+        'go-mtasts\\/',
+        'gobyus',
+        'Gofeed',
+        'gofetch',
+        'Goldfire Server',
+        'GomezAgent',
+        'gooblog',
+        'Goodzer\\/',
+        'Google AppsViewer',
+        'Google Desktop',
+        'Google favicon',
+        'Google Keyword Suggestion',
+        'Google Keyword Tool',
+        'Google Page Speed Insights',
+        'Google PP Default',
+        'Google Search Console',
+        'Google Web Preview',
+        'Google-Ads-Creatives-Assistant',
+        'Google-Ads-Overview',
+        'Google-Adwords',
+        'Google-Apps-Script',
+        'Google-Calendar-Importer',
+        'Google-HotelAdsVerifier',
+        'Google-HTTP-Java-Client',
+        'Google-Podcast',
+        'Google-Publisher-Plugin',
+        'Google-Read-Aloud',
+        'Google-SearchByImage',
+        'Google-Site-Verification',
+        'Google-SMTP-STS',
+        'Google-speakr',
+        'Google-Structured-Data-Testing-Tool',
+        'Google-Transparency-Report',
+        'google-xrawler',
+        'Google-Youtube-Links',
+        'GoogleDocs',
+        'GoogleHC\\/',
+        'GoogleProber',
+        'GoogleProducer',
+        'GoogleSites',
+        'Gookey',
+        'GoSpotCheck',
+        'gosquared-thumbnailer',
+        'Gotit',
+        'GoZilla',
+        'grabify',
+        'GrabNet',
+        'Grafula',
+        'Grammarly',
+        'GrapeFX',
+        'GreatNews',
+        'Gregarius',
+        'GRequests',
+        'grokkit',
+        'grouphigh',
+        'grub-client',
+        'gSOAP\\/',
+        'GT::WWW',
+        'GTmetrix',
+        'GuzzleHttp',
+        'gvfs\\/',
+        'HAA(A)?RTLAND http client',
+        'Haansoft',
+        'hackney\\/',
+        'Hadi Agent',
+        'HappyApps-WebCheck',
+        'Hardenize',
+        'Hatena',
+        'Havij',
+        'HaxerMen',
+        'HeadlessChrome',
+        'HEADMasterSEO',
+        'HeartRails_Capture',
+        'help@dataminr\\.com',
+        'heritrix',
+        'Hexometer',
+        'historious',
+        'hkedcity',
+        'hledejLevne\\.cz',
+        'Hloader',
+        'HMView',
+        'Holmes',
+        'HonesoSearchEngine',
+        'HootSuite Image proxy',
+        'Hootsuite-WebFeed',
+        'hosterstats',
+        'HostTracker',
+        'ht:\\/\\/check',
+        'htdig',
+        'HTMLparser',
+        'htmlyse',
+        'HTTP Banner Detection',
+        'http-get',
+        'HTTP-Header-Abfrage',
+        'http-kit',
+        'http-request\\/',
+        'HTTP-Tiny',
+        'HTTP::Lite',
+        'http:\\/\\/www.neomo.de\\/',
+        'HttpComponents',
+        'httphr',
+        'HTTPie',
+        'HTTPMon',
+        'httpRequest',
+        'httpscheck',
+        'httpssites_power',
+        'httpunit',
+        'HttpUrlConnection',
+        'http\\.rb\\/',
+        'HTTP_Compression_Test',
+        'http_get',
+        'http_request2',
+        'http_requester',
+        'httrack',
+        'huaweisymantec',
+        'HubSpot ',
+        'HubSpot-Link-Resolver',
+        'Humanlinks',
+        'i2kconnect\\/',
+        'Iblog',
+        'ichiro',
+        'Id-search',
+        'IdeelaborPlagiaat',
+        'IDG Twitter Links Resolver',
+        'IDwhois\\/',
+        'Iframely',
+        'igdeSpyder',
+        'iGooglePortal',
+        'IlTrovatore',
+        'Image Fetch',
+        'Image Sucker',
+        'ImageEngine\\/',
+        'ImageVisu\\/',
+        'Imagga',
+        'imagineeasy',
+        'imgsizer',
+        'InAGist',
+        'inbound\\.li parser',
+        'InDesign%20CC',
+        'Indy Library',
+        'InetURL',
+        'infegy',
+        'infohelfer',
+        'InfoTekies',
+        'InfoWizards Reciprocal Link',
+        'inpwrd\\.com',
+        'instabid',
+        'Instapaper',
+        'Integrity',
+        'integromedb',
+        'Intelliseek',
+        'InterGET',
+        'Internet Ninja',
+        'InternetSeer',
+        'internetVista monitor',
+        'internetwache',
+        'internet_archive',
+        'intraVnews',
+        'IODC',
+        'IOI',
+        'iplabel',
+        'ips-agent',
+        'IPS\\/[0-9]',
+        'IPWorks HTTP\\/S Component',
+        'iqdb\\/',
+        'Iria',
+        'Irokez',
+        'isitup\\.org',
+        'iskanie',
+        'isUp\\.li',
+        'iThemes Sync\\/',
+        'IZaBEE',
+        'iZSearch',
+        'JAHHO',
+        'janforman',
+        'Jaunt\\/',
+        'Java.*outbrain',
+        'javelin\\.io',
+        'Jbrofuzz',
+        'Jersey\\/',
+        'JetCar',
+        'Jigsaw',
+        'Jobboerse',
+        'JobFeed discovery',
+        'Jobg8 URL Monitor',
+        'jobo',
+        'Jobrapido',
+        'Jobsearch1\\.5',
+        'JoinVision Generic',
+        'JolokiaPwn',
+        'Joomla',
+        'Jorgee',
+        'JS-Kit',
+        'JungleKeyThumbnail',
+        'JustView',
+        'Kaspersky Lab CFR link resolver',
+        'Kelny\\/',
+        'Kerrigan\\/',
+        'KeyCDN',
+        'Keyword Density',
+        'Keywords Research',
+        'khttp\\/',
+        'KickFire',
+        'KimonoLabs\\/',
+        'Kml-Google',
+        'knows\\.is',
+        'KOCMOHABT',
+        'kouio',
+        'kube-probe',
+        'kubectl',
+        'kulturarw3',
+        'KumKie',
+        'Larbin',
+        'Lavf\\/',
+        'leakix\\.net',
+        'LeechFTP',
+        'LeechGet',
+        'letsencrypt',
+        'Lftp',
+        'LibVLC',
+        'LibWeb',
+        'Libwhisker',
+        'libwww',
+        'Licorne',
+        'Liferea\\/',
+        'Lighthouse',
+        'Lightspeedsystems',
+        'Likse',
+        'limber\\.io',
+        'Link Valet',
+        'LinkAlarm\\/',
+        'LinkAnalyser',
+        'linkCheck',
+        'linkdex',
+        'LinkExaminer',
+        'linkfluence',
+        'linkpeek',
+        'LinkPreview',
+        'LinkScan',
+        'LinksManager',
+        'LinkTiger',
+        'LinkWalker',
+        'link_thumbnailer',
+        'Lipperhey',
+        'Litemage_walker',
+        'livedoor ScreenShot',
+        'LoadImpactRload',
+        'localsearch-web',
+        'LongURL API',
+        'longurl-r-package',
+        'looid\\.com',
+        'looksystems\\.net',
+        'ltx71',
+        'lua-resty-http',
+        'Lucee \\(CFML Engine\\)',
+        'Lush Http Client',
+        'lwp-request',
+        'lwp-trivial',
+        'LWP::Simple',
+        'lycos',
+        'LYT\\.SR',
+        'L\\.webis',
+        'mabontland',
+        'MacOutlook\\/',
+        'Mag-Net',
+        'MagpieRSS',
+        'Mail::STS',
+        'MailChimp',
+        'Mail\\.Ru',
+        'Majestic12',
+        'makecontact\\/',
+        'Mandrill',
+        'MapperCmd',
+        'marketinggrader',
+        'MarkMonitor',
+        'MarkWatch',
+        'Mass Downloader',
+        'masscan\\/',
+        'Mata Hari',
+        'mattermost',
+        'Mediametric',
+        'Mediapartners-Google',
+        'mediawords',
+        'MegaIndex\\.ru',
+        'MeltwaterNews',
+        'Melvil Rawi',
+        'MemGator',
+        'Metaspinner',
+        'MetaURI',
+        'MFC_Tear_Sample',
+        'Microsearch',
+        'Microsoft Data Access',
+        'Microsoft Office',
+        'Microsoft Outlook',
+        'Microsoft Windows Network Diagnostics',
+        'Microsoft-WebDAV-MiniRedir',
+        'Microsoft\\.Data\\.Mashup',
+        'MIDown tool',
+        'MIIxpc',
+        'Mindjet',
+        'Miniature\\.io',
+        'Miniflux',
+        'mio_httpc',
+        'Miro-HttpClient',
+        'Mister PiX',
+        'mixdata dot com',
+        'mixed-content-scan',
+        'mixnode',
+        'Mnogosearch',
+        'mogimogi',
+        'Mojeek',
+        'Mojolicious \\(Perl\\)',
+        'monitis',
+        'Monitority\\/',
+        'Monit\\/',
+        'montastic',
+        'MonTools',
+        'Moreover',
+        'Morfeus Fucking Scanner',
+        'Morning Paper',
+        'MovableType',
+        'mowser',
+        'Mrcgiguy',
+        'Mr\\.4x3 Powered',
+        'MS Web Services Client Protocol',
+        'MSFrontPage',
+        'mShots',
+        'MuckRack\\/',
+        'muhstik-scan',
+        'MVAClient',
+        'MxToolbox\\/',
+        'myseosnapshot',
+        'nagios',
+        'Najdi\\.si',
+        'Name Intelligence',
+        'NameFo\\.com',
+        'Nameprotect',
+        'nationalarchives',
+        'Navroad',
+        'NearSite',
+        'Needle',
+        'Nessus',
+        'Net Vampire',
+        'NetAnts',
+        'NETCRAFT',
+        'NetLyzer',
+        'NetMechanic',
+        'NetNewsWire',
+        'Netpursual',
+        'netresearch',
+        'NetShelter ContentScan',
+        'Netsparker',
+        'NetSystemsResearch',
+        'nettle',
+        'NetTrack',
+        'Netvibes',
+        'NetZIP',
+        'Neustar WPM',
+        'NeutrinoAPI',
+        'NewRelicPinger',
+        'NewsBlur .*Finder',
+        'NewsGator',
+        'newsme',
+        'newspaper\\/',
+        'Nexgate Ruby Client',
+        'NG-Search',
+        'nghttp2',
+        'Nibbler',
+        'NICErsPRO',
+        'NihilScio',
+        'Nikto',
+        'nineconnections',
+        'NLNZ_IAHarvester',
+        'Nmap Scripting Engine',
+        'node-fetch',
+        'node-superagent',
+        'node-urllib',
+        'Nodemeter',
+        'NodePing',
+        'node\\.io',
+        'nominet\\.org\\.uk',
+        'nominet\\.uk',
+        'Norton-Safeweb',
+        'Notifixious',
+        'notifyninja',
+        'NotionEmbedder',
+        'nuhk',
+        'nutch',
+        'Nuzzel',
+        'nWormFeedFinder',
+        'nyawc\\/',
+        'Nymesis',
+        'NYU',
+        'Observatory\\/',
+        'Ocelli\\/',
+        'Octopus',
+        'oegp',
+        'Offline Explorer',
+        'Offline Navigator',
+        'OgScrper',
+        'okhttp',
+        'omgili',
+        'OMSC',
+        'Online Domain Tools',
+        'Open Source RSS',
+        'OpenCalaisSemanticProxy',
+        'Openfind',
+        'OpenLinkProfiler',
+        'Openstat\\/',
+        'OpenVAS',
+        'OPPO A33',
+        'Optimizer',
+        'Orbiter',
+        'OrgProbe\\/',
+        'orion-semantics',
+        'Outlook-Express',
+        'Outlook-iOS',
+        'Owler',
+        'Owlin',
+        'ownCloud News',
+        'ow\\.ly',
+        'OxfordCloudService',
+        'page scorer',
+        'Page Valet',
+        'page2rss',
+        'PageFreezer',
+        'PageGrabber',
+        'PagePeeker',
+        'PageScorer',
+        'Pagespeed\\/',
+        'PageThing',
+        'page_verifier',
+        'Panopta',
+        'panscient',
+        'Papa Foto',
+        'parsijoo',
+        'Pavuk',
+        'PayPal IPN',
+        'pcBrowser',
+        'Pcore-HTTP',
+        'PDF24 URL To PDF',
+        'Pearltrees',
+        'PECL::HTTP',
+        'peerindex',
+        'Peew',
+        'PeoplePal',
+        'Perlu -',
+        'PhantomJS Screenshoter',
+        'PhantomJS\\/',
+        'Photon\\/',
+        'php-requests',
+        'phpservermon',
+        'Pi-Monster',
+        'Picscout',
+        'Picsearch',
+        'PictureFinder',
+        'Pimonster',
+        'Pingability',
+        'PingAdmin\\.Ru',
+        'Pingdom',
+        'Pingoscope',
+        'PingSpot',
+        'ping\\.blo\\.gs',
+        'pinterest\\.com',
+        'Pixray',
+        'Pizilla',
+        'Plagger\\/',
+        'Pleroma ',
+        'Ploetz \\+ Zeller',
+        'Plukkie',
+        'plumanalytics',
+        'PocketImageCache',
+        'PocketParser',
+        'Pockey',
+        'PodcastAddict\\/',
+        'POE-Component-Client-HTTP',
+        'Polymail\\/',
+        'Pompos',
+        'Porkbun',
+        'Port Monitor',
+        'postano',
+        'postfix-mta-sts-resolver',
+        'PostmanRuntime',
+        'postplanner\\.com',
+        'PostPost',
+        'postrank',
+        'PowerPoint\\/',
+        'Prebid',
+        'Prerender',
+        'Priceonomics Analysis Engine',
+        'PrintFriendly',
+        'PritTorrent',
+        'Prlog',
+        'probethenet',
+        'Project ?25499',
+        'Project-Resonance',
+        'prospectb2b',
+        'Protopage',
+        'ProWebWalker',
+        'proximic',
+        'PRTG Network Monitor',
+        'pshtt, https scanning',
+        'PTST ',
+        'PTST\\/[0-9]+',
+        'Pump',
+        'Python-httplib2',
+        'python-httpx',
+        'python-requests',
+        'Python-urllib',
+        'Qirina Hurdler',
+        'QQDownload',
+        'QrafterPro',
+        'Qseero',
+        'Qualidator',
+        'QueryN Metasearch',
+        'queuedriver',
+        'quic-go-HTTP\\/',
+        'QuiteRSS',
+        'Quora Link Preview',
+        'Qwantify',
+        'Radian6',
+        'RadioPublicImageResizer',
+        'Railgun\\/',
+        'RankActive',
+        'RankFlex',
+        'RankSonicSiteAuditor',
+        'RapidLoad\\/',
+        'Re-re Studio',
+        'ReactorNetty',
+        'Readability',
+        'RealDownload',
+        'RealPlayer%20Downloader',
+        'RebelMouse',
+        'Recorder',
+        'RecurPost\\/',
+        'redback\\/',
+        'ReederForMac',
+        'Reeder\\/',
+        'ReGet',
+        'RepoMonkey',
+        'request\\.js',
+        'reqwest\\/',
+        'ResponseCodeTest',
+        'RestSharp',
+        'Riddler',
+        'Rival IQ',
+        'Robosourcer',
+        'Robozilla',
+        'ROI Hunter',
+        'RPT-HTTPClient',
+        'RSSMix\\/',
+        'RSSOwl',
+        'RyowlEngine',
+        'safe-agent-scanner',
+        'SalesIntelligent',
+        'Saleslift',
+        'SAP NetWeaver Application Server',
+        'SauceNAO',
+        'SBIder',
+        'sc-downloader',
+        'scalaj-http',
+        'Scamadviser-Frontend',
+        'ScanAlert',
+        'scan\\.lol',
+        'Scoop',
+        'scooter',
+        'ScopeContentAG-HTTP-Client',
+        'ScoutJet',
+        'ScoutURLMonitor',
+        'ScrapeBox Page Scanner',
+        'Scrapy',
+        'Screaming',
+        'ScreenShotService',
+        'Scrubby',
+        'Scrutiny\\/',
+        'Search37',
+        'searchenginepromotionhelp',
+        'Searchestate',
+        'SearchExpress',
+        'SearchSight',
+        'SearchWP',
+        'search\\.thunderstone',
+        'Seeker',
+        'semanticdiscovery',
+        'semanticjuice',
+        'Semiocast HTTP client',
+        'Semrush',
+        'Sendsay\\.Ru',
+        'sentry\\/',
+        'SEO Browser',
+        'Seo Servis',
+        'seo-nastroj\\.cz',
+        'seo4ajax',
+        'Seobility',
+        'SEOCentro',
+        'SeoCheck',
+        'SEOkicks',
+        'SEOlizer',
+        'Seomoz',
+        'SEOprofiler',
+        'seoscanners',
+        'SEOsearch',
+        'seositecheckup',
+        'SEOstats',
+        'servernfo',
+        'sexsearcher',
+        'Seznam',
+        'Shelob',
+        'Shodan',
+        'Shoppimon',
+        'ShopWiki',
+        'ShortLinkTranslate',
+        'shortURL lengthener',
+        'shrinktheweb',
+        'Sideqik',
+        'Siege',
+        'SimplePie',
+        'SimplyFast',
+        'Siphon',
+        'SISTRIX',
+        'Site Sucker',
+        'Site-Shot\\/',
+        'Site24x7',
+        'SiteBar',
+        'Sitebeam',
+        'Sitebulb\\/',
+        'SiteCondor',
+        'SiteExplorer',
+        'SiteGuardian',
+        'Siteimprove',
+        'SiteIndexed',
+        'Sitemap(s)? Generator',
+        'SitemapGenerator',
+        'SiteMonitor',
+        'Siteshooter B0t',
+        'SiteSnagger',
+        'SiteSucker',
+        'SiteTruth',
+        'Sitevigil',
+        'sitexy\\.com',
+        'SkypeUriPreview',
+        'Slack\\/',
+        'sli-systems\\.com',
+        'slider\\.com',
+        'slurp',
+        'SlySearch',
+        'SmartDownload',
+        'SMRF URL Expander',
+        'SMUrlExpander',
+        'Snake',
+        'Snappy',
+        'SnapSearch',
+        'Snarfer\\/',
+        'SniffRSS',
+        'sniptracker',
+        'Snoopy',
+        'SnowHaze Search',
+        'sogou web',
+        'SortSite',
+        'Sottopop',
+        'sovereign\\.ai',
+        'SpaceBison',
+        'SpamExperts',
+        'Spammen',
+        'Spanner',
+        'spaziodati',
+        'SPDYCheck',
+        'Specificfeeds',
+        'speedy',
+        'SPEng',
+        'Spinn3r',
+        'spray-can',
+        'Sprinklr ',
+        'spyonweb',
+        'sqlmap',
+        'Sqlworm',
+        'Sqworm',
+        'SSL Labs',
+        'ssl-tools',
+        'StackRambler',
+        'Statastico\\/',
+        'Statically-',
+        'StatusCake',
+        'Steeler',
+        'Stratagems Kumo',
+        'Stripe\\/',
+        'Stroke\\.cz',
+        'StudioFACA',
+        'StumbleUpon',
+        'suchen',
+        'Sucuri',
+        'summify',
+        'SuperHTTP',
+        'Surphace Scout',
+        'Suzuran',
+        'swcd ',
+        'Symfony BrowserKit',
+        'Symfony2 BrowserKit',
+        'Synapse\\/',
+        'Syndirella\\/',
+        'SynHttpClient-Built',
+        'Sysomos',
+        'sysscan',
+        'Szukacz',
+        'T0PHackTeam',
+        'tAkeOut',
+        'Tarantula\\/',
+        'Taringa UGC',
+        'TarmotGezgin',
+        'tchelebi\\.io',
+        'techiaith\\.cymru',
+        'TelegramBot',
+        'Teleport',
+        'Telesoft',
+        'Telesphoreo',
+        'Telesphorep',
+        'Tenon\\.io',
+        'teoma',
+        'terrainformatica',
+        'Test Certificate Info',
+        'testuri',
+        'Tetrahedron',
+        'TextRazor Downloader',
+        'The Drop Reaper',
+        'The Expert HTML Source Viewer',
+        'The Intraformant',
+        'The Knowledge AI',
+        'theinternetrules',
+        'TheNomad',
+        'Thinklab',
+        'Thumbor',
+        'Thumbshots',
+        'ThumbSniper',
+        'timewe\\.net',
+        'TinEye',
+        'Tiny Tiny RSS',
+        'TLSProbe\\/',
+        'Toata',
+        'topster',
+        'touche\\.com',
+        'Traackr\\.com',
+        'tracemyfile',
+        'Trackuity',
+        'TrapitAgent',
+        'Trendiction',
+        'Trendsmap',
+        'trendspottr',
+        'truwoGPS',
+        'TryJsoup',
+        'TulipChain',
+        'Turingos',
+        'Turnitin',
+        'tweetedtimes',
+        'Tweetminster',
+        'Tweezler\\/',
+        'twibble',
+        'Twice',
+        'Twikle',
+        'Twingly',
+        'Twisted PageGetter',
+        'Typhoeus',
+        'ubermetrics-technologies',
+        'uclassify',
+        'UdmSearch',
+        'ultimate_sitemap_parser',
+        'unchaos',
+        'unirest-java',
+        'UniversalFeedParser',
+        'unshortenit',
+        'Unshorten\\.It',
+        'Untiny',
+        'UnwindFetchor',
+        'updated',
+        'updown\\.io daemon',
+        'Upflow',
+        'Uptimia',
+        'URL Verifier',
+        'Urlcheckr',
+        'URLitor',
+        'urlresolver',
+        'Urlstat',
+        'URLTester',
+        'UrlTrends Ranking Updater',
+        'URLy Warning',
+        'URLy\\.Warning',
+        'URL\\/Emacs',
+        'Vacuum',
+        'Vagabondo',
+        'VB Project',
+        'vBSEO',
+        'VCI',
+        'via ggpht\\.com GoogleImageProxy',
+        'Virusdie',
+        'visionutils',
+        'vkShare',
+        'VoidEYE',
+        'Voil',
+        'voltron',
+        'voyager\\/',
+        'VSAgent\\/',
+        'VSB-TUO\\/',
+        'Vulnbusters Meter',
+        'VYU2',
+        'w3af\\.org',
+        'W3C-checklink',
+        'W3C-mobileOK',
+        'W3C_Unicorn',
+        'WAC-OFU',
+        'WakeletLinkExpander',
+        'WallpapersHD',
+        'Wallpapers\\/[0-9]+',
+        'wangling',
+        'Wappalyzer',
+        'WatchMouse',
+        'WbSrch\\/',
+        'WDT\\.io',
+        'Web Auto',
+        'Web Collage',
+        'Web Enhancer',
+        'Web Fetch',
+        'Web Fuck',
+        'Web Pix',
+        'Web Sauger',
+        'Web spyder',
+        'Web Sucker',
+        'web-capture\\.net',
+        'Web-sniffer',
+        'Webalta',
+        'Webauskunft',
+        'WebAuto',
+        'WebCapture',
+        'WebClient\\/',
+        'webcollage',
+        'WebCookies',
+        'WebCopier',
+        'WebCorp',
+        'WebDataStats',
+        'WebDoc',
+        'WebEnhancer',
+        'WebFetch',
+        'WebFuck',
+        'WebGazer',
+        'WebGo IS',
+        'WebImageCollector',
+        'WebImages',
+        'WebIndex',
+        'webkit2png',
+        'WebLeacher',
+        'webmastercoffee',
+        'webmon ',
+        'WebPix',
+        'WebReaper',
+        'WebSauger',
+        'webscreenie',
+        'Webshag',
+        'Webshot',
+        'Website Quester',
+        'websitepulse agent',
+        'WebsiteQuester',
+        'Websnapr',
+        'WebSniffer',
+        'Webster',
+        'WebStripper',
+        'WebSucker',
+        'webtech\\/',
+        'WebThumbnail',
+        'Webthumb\\/',
+        'WebWhacker',
+        'WebZIP',
+        'WeLikeLinks',
+        'WEPA',
+        'WeSEE',
+        'wf84',
+        'Wfuzz\\/',
+        'wget',
+        'WhatCMS',
+        'WhatsApp',
+        'WhatsMyIP',
+        'WhatWeb',
+        'WhereGoes\\?',
+        'Whibse',
+        'WhoAPI\\/',
+        'WhoRunsCoinHive',
+        'Whynder Magnet',
+        'Windows-RSS-Platform',
+        'WinHttp-Autoproxy-Service',
+        'WinHTTP\\/',
+        'WinPodder',
+        'wkhtmlto',
+        'wmtips',
+        'Woko',
+        'Wolfram HTTPClient',
+        'woorankreview',
+        'WordPress\\/',
+        'WordupinfoSearch',
+        'Word\\/',
+        'worldping-api',
+        'wotbox',
+        'WP Engine Install Performance API',
+        'WP Rocket',
+        'wpif',
+        'wprecon\\.com survey',
+        'WPScan',
+        'wscheck',
+        'Wtrace',
+        'WWW-Collector-E',
+        'WWW-Mechanize',
+        'WWW::Document',
+        'WWW::Mechanize',
+        'WWWOFFLE',
+        'www\\.monitor\\.us',
+        'x09Mozilla',
+        'x22Mozilla',
+        'XaxisSemanticsClassifier',
+        'XenForo\\/',
+        'Xenu Link Sleuth',
+        'XING-contenttabreceiver',
+        'xpymep([0-9]?)\\.exe',
+        'Y!J-[A-Z][A-Z][A-Z]',
+        'Yaanb',
+        'yacy',
+        'Yahoo Link Preview',
+        'YahooCacheSystem',
+        'YahooMailProxy',
+        'YahooYSMcm',
+        'YandeG',
+        'Yandex(?!Search)',
+        'yanga',
+        'yeti',
+        'Yo-yo',
+        'Yoleo Consumer',
+        'yomins\\.com',
+        'yoogliFetchAgent',
+        'YottaaMonitor',
+        'Your-Website-Sucks',
+        'yourls\\.org',
+        'YoYs\\.net',
+        'YP\\.PL',
+        'Zabbix',
+        'Zade',
+        'Zao',
+        'Zauba',
+        'Zemanta Aggregator',
+        'Zend\\\\Http\\\\Client',
+        'Zend_Http_Client',
+        'Zermelo',
+        'Zeus ',
+        'zgrab',
+        'ZnajdzFoto',
+        'ZnHTTP',
+        'Zombie\\.js',
+        'Zoom\\.Mac',
+        'ZoteroTranslationServer',
+        'ZyBorg',
+        '[a-z0-9\\-_]*(bot|crawl|archiver|transcoder|spider|uptime|validator|fetcher|cron|checker|reader|extractor|monitoring|analyzer|scraper)',
+      ];
+    }
+  }
+
   var crawlers = Crawlers$1;
 
-  const Provider$1 = provider;
-
-  class Exclusions$1 extends Provider$1 {
-    constructor() {
-      super();
-
-      this.data = [
-        'Safari.[\\d\\.]*',
-        'Firefox.[\\d\\.]*',
-        ' Chrome.[\\d\\.]*',
-        'Chromium.[\\d\\.]*',
-        'MSIE.[\\d\\.]',
-        'Opera\\/[\\d\\.]*',
-        'Mozilla.[\\d\\.]*',
-        'AppleWebKit.[\\d\\.]*',
-        'Trident.[\\d\\.]*',
-        'Windows NT.[\\d\\.]*',
-        'Android [\\d\\.]*',
-        'Macintosh.',
-        'Ubuntu',
-        'Linux',
-        '[ ]Intel',
-        'Mac OS X [\\d_]*',
-        '(like )?Gecko(.[\\d\\.]*)?',
-        'KHTML,',
-        'CriOS.[\\d\\.]*',
-        'CPU iPhone OS ([0-9_])* like Mac OS X',
-        'CPU OS ([0-9_])* like Mac OS X',
-        'iPod',
-        'compatible',
-        'x86_..',
-        'i686',
-        'x64',
-        'X11',
-        'rv:[\\d\\.]*',
-        'Version.[\\d\\.]*',
-        'WOW64',
-        'Win64',
-        'Dalvik.[\\d\\.]*',
-        ' \\.NET CLR [\\d\\.]*',
-        'Presto.[\\d\\.]*',
-        'Media Center PC',
-        'BlackBerry',
-        'Build',
-        'Opera Mini\\/\\d{1,2}\\.\\d{1,2}\\.[\\d\\.]*\\/\\d{1,2}\\.',
-        'Opera',
-        ' \\.NET[\\d\\.]*',
-        'cubot',
-        '; M bot',
-        '; CRONO',
-        '; B bot',
-        '; IDbot',
-        '; ID bot',
-        '; POWER BOT',
-        'OCTOPUS-CORE',
-      ];
-    }
-  }
-
+  const Provider$1 = provider;
+
+  class Exclusions$1 extends Provider$1 {
+    constructor() {
+      super();
+
+      this.data = [
+        'Safari.[\\d\\.]*',
+        'Firefox.[\\d\\.]*',
+        ' Chrome.[\\d\\.]*',
+        'Chromium.[\\d\\.]*',
+        'MSIE.[\\d\\.]',
+        'Opera\\/[\\d\\.]*',
+        'Mozilla.[\\d\\.]*',
+        'AppleWebKit.[\\d\\.]*',
+        'Trident.[\\d\\.]*',
+        'Windows NT.[\\d\\.]*',
+        'Android [\\d\\.]*',
+        'Macintosh.',
+        'Ubuntu',
+        'Linux',
+        '[ ]Intel',
+        'Mac OS X [\\d_]*',
+        '(like )?Gecko(.[\\d\\.]*)?',
+        'KHTML,',
+        'CriOS.[\\d\\.]*',
+        'CPU iPhone OS ([0-9_])* like Mac OS X',
+        'CPU OS ([0-9_])* like Mac OS X',
+        'iPod',
+        'compatible',
+        'x86_..',
+        'i686',
+        'x64',
+        'X11',
+        'rv:[\\d\\.]*',
+        'Version.[\\d\\.]*',
+        'WOW64',
+        'Win64',
+        'Dalvik.[\\d\\.]*',
+        ' \\.NET CLR [\\d\\.]*',
+        'Presto.[\\d\\.]*',
+        'Media Center PC',
+        'BlackBerry',
+        'Build',
+        'Opera Mini\\/\\d{1,2}\\.\\d{1,2}\\.[\\d\\.]*\\/\\d{1,2}\\.',
+        'Opera',
+        ' \\.NET[\\d\\.]*',
+        'cubot',
+        '; M bot',
+        '; CRONO',
+        '; B bot',
+        '; IDbot',
+        '; ID bot',
+        '; POWER BOT',
+        'OCTOPUS-CORE',
+      ];
+    }
+  }
+
   var exclusions = Exclusions$1;
 
   const Provider = provider;
@@ -1527,133 +1527,133 @@
 
   var headers = Headers$1;
 
-  const Crawlers = crawlers;
-  const Exclusions = exclusions;
-  const Headers = headers;
-
-  class Crawler$1 {
-    constructor(request, headers, userAgent) {
-      /**
-       * Init classes
-       */
-      this._init();
-
-      /**
-       * This request must be an object
-       */
-      this.request = typeof request === 'object' ? request : {};
-
-      // The regex-list must not be used with g-flag!
-      // See: https://stackoverflow.com/questions/1520800/why-does-a-regexp-with-global-flag-give-wrong-results
-      this.compiledRegexList = this.compileRegex(this.crawlers.getAll(), 'i');
-
-      // The exclusions should be used with g-flag in order to remove each value.
-      this.compiledExclusions = this.compileRegex(this.exclusions.getAll(), 'gi');
-
-      /**
-       * Set http headers
-       */
-      this.setHttpHeaders(headers);
-
-      /**
-       * Set userAgent
-       */
-      this.userAgent = this.setUserAgent(userAgent);
-    }
-
-    /**
-     * Init Classes Instances
-     */
-    _init() {
-      this.crawlers = new Crawlers();
-      this.headers = new Headers();
-      this.exclusions = new Exclusions();
-    }
-
-    compileRegex(patterns, flags) {
-      return new RegExp(patterns.join('|'), flags);
-    }
-
-    /**
-     * Set HTTP headers.
-     */
-    setHttpHeaders(headers) {
-      // Use the Request headers if httpHeaders is not defined
-      if (typeof headers === 'undefined' || Object.keys(headers).length === 0) {
-        headers = Object.keys(this.request).length ? this.request.headers : {};
-      }
-
-      // Save the headers.
-      this.httpHeaders = headers;
-    }
-
-    /**
-     * Set user agent
-     */
-    setUserAgent(userAgent) {
-      if (
-        typeof userAgent === 'undefined' ||
-        userAgent === null ||
-        !userAgent.length
-      ) {
-        for (const header of this.getUaHttpHeaders()) {
-          if (Object.keys(this.httpHeaders).indexOf(header.toLowerCase()) >= 0) {
-            userAgent += this.httpHeaders[header.toLowerCase()] + ' ';
-          }
-        }
-      }
-
-      return userAgent;
-    }
-
-    /**
-     * Get user agent headers
-     */
-    getUaHttpHeaders() {
-      return this.headers.getAll();
-    }
-
-    /**
-     * Check user agent string against the regex.
-     */
-    isCrawler(userAgent = undefined) {
-      if (Buffer.byteLength(userAgent || '', 'utf8') > 4096) {
-        return false;
-      }
-
-      var agent =
-        typeof userAgent === 'undefined' || userAgent === null
-          ? this.userAgent
-          : userAgent;
-
-      // test on compiled regx
-      agent = agent.replace(this.compiledExclusions, '');
-
-      if (agent.trim().length === 0) {
-        return false;
-      }
-
-      var matches = this.compiledRegexList.exec(agent);
-
-      if (matches) {
-        this.matches = matches;
-      }
-
-      return matches !== null ? (matches.length ? true : false) : false;
-    }
-
-    /**
-     * Return the matches.
-     */
-    getMatches() {
-      return this.matches !== undefined
-        ? this.matches.length
-          ? this.matches[0]
-          : null
-        : {};
-    }
-  }
-
+  const Crawlers = crawlers;
+  const Exclusions = exclusions;
+  const Headers = headers;
+
+  class Crawler$1 {
+    constructor(request, headers, userAgent) {
+      /**
+       * Init classes
+       */
+      this._init();
+
+      /**
+       * This request must be an object
+       */
+      this.request = typeof request === 'object' ? request : {};
+
+      // The regex-list must not be used with g-flag!
+      // See: https://stackoverflow.com/questions/1520800/why-does-a-regexp-with-global-flag-give-wrong-results
+      this.compiledRegexList = this.compileRegex(this.crawlers.getAll(), 'i');
+
+      // The exclusions should be used with g-flag in order to remove each value.
+      this.compiledExclusions = this.compileRegex(this.exclusions.getAll(), 'gi');
+
+      /**
+       * Set http headers
+       */
+      this.setHttpHeaders(headers);
+
+      /**
+       * Set userAgent
+       */
+      this.userAgent = this.setUserAgent(userAgent);
+    }
+
+    /**
+     * Init Classes Instances
+     */
+    _init() {
+      this.crawlers = new Crawlers();
+      this.headers = new Headers();
+      this.exclusions = new Exclusions();
+    }
+
+    compileRegex(patterns, flags) {
+      return new RegExp(patterns.join('|'), flags);
+    }
+
+    /**
+     * Set HTTP headers.
+     */
+    setHttpHeaders(headers) {
+      // Use the Request headers if httpHeaders is not defined
+      if (typeof headers === 'undefined' || Object.keys(headers).length === 0) {
+        headers = Object.keys(this.request).length ? this.request.headers : {};
+      }
+
+      // Save the headers.
+      this.httpHeaders = headers;
+    }
+
+    /**
+     * Set user agent
+     */
+    setUserAgent(userAgent) {
+      if (
+        typeof userAgent === 'undefined' ||
+        userAgent === null ||
+        !userAgent.length
+      ) {
+        for (const header of this.getUaHttpHeaders()) {
+          if (Object.keys(this.httpHeaders).indexOf(header.toLowerCase()) >= 0) {
+            userAgent += this.httpHeaders[header.toLowerCase()] + ' ';
+          }
+        }
+      }
+
+      return userAgent;
+    }
+
+    /**
+     * Get user agent headers
+     */
+    getUaHttpHeaders() {
+      return this.headers.getAll();
+    }
+
+    /**
+     * Check user agent string against the regex.
+     */
+    isCrawler(userAgent = undefined) {
+      if (Buffer.byteLength(userAgent || '', 'utf8') > 4096) {
+        return false;
+      }
+
+      var agent =
+        typeof userAgent === 'undefined' || userAgent === null
+          ? this.userAgent
+          : userAgent;
+
+      // test on compiled regx
+      agent = agent.replace(this.compiledExclusions, '');
+
+      if (agent.trim().length === 0) {
+        return false;
+      }
+
+      var matches = this.compiledRegexList.exec(agent);
+
+      if (matches) {
+        this.matches = matches;
+      }
+
+      return matches !== null ? (matches.length ? true : false) : false;
+    }
+
+    /**
+     * Return the matches.
+     */
+    getMatches() {
+      return this.matches !== undefined
+        ? this.matches.length
+          ? this.matches[0]
+          : null
+        : {};
+    }
+  }
+
   var crawler = Crawler$1;
 
   const Crawler = crawler;
@@ -1837,22 +1837,29 @@
         var target = personalization.id;
 
         wem._registerPersonalizationCallback(personalization, function (result) {
+          var selectedFilter = null;
           var successfulFilters = [];
 
-          for (var i = 0; i < result.length; i++) {
-            successfulFilters.push(variants[result[i]]);
-          }
+          var inControlGroup = wem._isInControlGroup(target); // In case of control group Unomi is not resolving any strategy or fallback for us. So we have to do the fallback here.
 
-          var selectedFilter = null;
 
-          if (successfulFilters.length > 0) {
-            selectedFilter = successfulFilters[0];
-            var minPos = successfulFilters[0].position;
+          if (inControlGroup && personalization.strategyOptions && personalization.strategyOptions.fallback) {
+            selectedFilter = variants[personalization.strategyOptions.fallback];
+            successfulFilters.push(selectedFilter);
+          } else {
+            for (var i = 0; i < result.length; i++) {
+              successfulFilters.push(variants[result[i]]);
+            }
 
-            if (minPos >= 0) {
-              for (var j = 1; j < successfulFilters.length; j++) {
-                if (successfulFilters[j].position < minPos) {
-                  selectedFilter = successfulFilters[j];
+            if (successfulFilters.length > 0) {
+              selectedFilter = successfulFilters[0];
+              var minPos = successfulFilters[0].position;
+
+              if (minPos >= 0) {
+                for (var j = 1; j < successfulFilters.length; j++) {
+                  if (successfulFilters[j].position < minPos) {
+                    selectedFilter = successfulFilters[j];
+                  }
                 }
               }
             }
@@ -1874,7 +1881,7 @@
               } // we now add control group information to event if the user is in the control group.
 
 
-              if (wem._isInControlGroup(target)) {
+              if (inControlGroup) {
                 console.info('[WEM] Profile is in control group for target: ' + target + ', adding to personalization event...');
                 selectedFilter.event.target.properties.inControlGroup = true;
 
diff --git a/dist/apache-unomi-tracker.umd.js.map b/dist/apache-unomi-tracker.umd.js.map
index ec92fba..cf38c25 100644
--- a/dist/apache-unomi-tracker.umd.js.map
+++ b/dist/apache-unomi-tracker.umd.js.map
@@ -1 +1 @@
-{"version":3,"file":"apache-unomi-tracker.umd.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/es6-crawler-detect/src/lib/crawler/provider.js","../node_modules/es6-crawler-detect/src/lib/crawler/crawlers.js","../node_modules/es6-crawler-detect/src/lib/crawler/exclusions.js","../node_modules/es6-crawler-detect/src/lib/crawler/headers.js","../node_modules/es6-crawler-detect/src/lib/crawler.js","../node_modules/es6-crawler-detect/src/index.js","../src/a [...]
\ No newline at end of file
+{"version":3,"file":"apache-unomi-tracker.umd.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/es6-crawler-detect/src/lib/crawler/provider.js","../node_modules/es6-crawler-detect/src/lib/crawler/crawlers.js","../node_modules/es6-crawler-detect/src/lib/crawler/exclusions.js","../node_modules/es6-crawler-detect/src/lib/crawler/headers.js","../node_modules/es6-crawler-detect/src/lib/crawler.js","../node_modules/es6-crawler-detect/src/index.js","../src/a [...]
\ No newline at end of file
diff --git a/src/apache-unomi-tracker.js b/src/apache-unomi-tracker.js
index ca11366..614467d 100644
--- a/src/apache-unomi-tracker.js
+++ b/src/apache-unomi-tracker.js
@@ -169,19 +169,27 @@ export const newTracker = () => {
         registerPersonalizationObject: function (personalization, variants, ajax, resultCallback) {
             var target = personalization.id;
             wem._registerPersonalizationCallback(personalization, function (result) {
+                var selectedFilter = null;
                 var successfulFilters = [];
-                for (var i = 0; i < result.length; i++) {
-                    successfulFilters.push(variants[result[i]]);
-                }
 
-                var selectedFilter = null;
-                if (successfulFilters.length > 0) {
-                    selectedFilter = successfulFilters[0];
-                    var minPos = successfulFilters[0].position;
-                    if (minPos >= 0) {
-                        for (var j = 1; j < successfulFilters.length; j++) {
-                            if (successfulFilters[j].position < minPos) {
-                                selectedFilter = successfulFilters[j];
+                var inControlGroup = wem._isInControlGroup(target);
+                // In case of control group Unomi is not resolving any strategy or fallback for us. So we have to do the fallback here.
+                if (inControlGroup && personalization.strategyOptions && personalization.strategyOptions.fallback) {
+                    selectedFilter = variants[personalization.strategyOptions.fallback];
+                    successfulFilters.push(selectedFilter);
+                } else {
+                    for (var i = 0; i < result.length; i++) {
+                        successfulFilters.push(variants[result[i]]);
+                    }
+
+                    if (successfulFilters.length > 0) {
+                        selectedFilter = successfulFilters[0];
+                        var minPos = successfulFilters[0].position;
+                        if (minPos >= 0) {
+                            for (var j = 1; j < successfulFilters.length; j++) {
+                                if (successfulFilters[j].position < minPos) {
+                                    selectedFilter = successfulFilters[j];
+                                }
                             }
                         }
                     }
@@ -201,7 +209,7 @@ export const newTracker = () => {
                         }
 
                         // we now add control group information to event if the user is in the control group.
-                        if (wem._isInControlGroup(target)) {
+                        if (inControlGroup) {
                             console.info('[WEM] Profile is in control group for target: ' + target + ', adding to personalization event...');
                             selectedFilter.event.target.properties.inControlGroup = true;
                             if (selectedFilter.event.target.properties.variants) {
@@ -728,6 +736,7 @@ export const newTracker = () => {
             event.initCustomEvent(name, canBubble, cancelable, detail);
             document.dispatchEvent(event);
         },
+
         /**
          * Fill the wem.digitalData.displayedVariants with the javascript event passed as parameter
          * @param {object} jsEvent javascript event
@@ -740,6 +749,7 @@ export const newTracker = () => {
             }
             wem.digitalData.displayedVariants.push(jsEvent);
         },
+
         /**
          * This is an utility function to get current url parameter value
          *
@@ -958,6 +968,7 @@ export const newTracker = () => {
                 }
             }
         },
+
         /**
          * Filter events in digitalData.events that would have the property: event.properties.doNotSendToUnomi
          * The effect is directly stored in a new version of wem.digitalData.events
@@ -1435,4 +1446,4 @@ export const newTracker = () => {
     };
 
     return wem;
-};
+};
\ No newline at end of file