diff --git a/Main.hs b/Main.hs
--- a/Main.hs
+++ b/Main.hs
@@ -146,11 +146,17 @@
     n <- S.deleteFrom quotaOrigins (by whitelist)
     return (n, nub bad)
   where
-    -- check if x ∉ set
-    by set x = S.not_ . any_ . map (S.like (x ! #origin)) $ set
+    -- check if quota is not whitelisted
+    by whitelist quota = S.not_ (S.true `S.isIn` matches)
+      where
+        url = quota ! #origin
+        matches = do
+          pattern <- S.selectValues (map S.Only whitelist)
+          S.restrict (url `S.like` S.the pattern)
+          return S.true
     -- turns domains into patterns to match a url
-    pattern domain = S.text ("http%://%" <> domain <> "/")
-    any_ = foldl' (.||) S.false
+    pattern domain = "http%://%" <> domain <> "/"
+
 
 
 -- | Deletes per-domain files under the IndexedDB directory
diff --git a/Setup.hs b/Setup.hs
deleted file mode 100644
--- a/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/bisc.cabal b/bisc.cabal
--- a/bisc.cabal
+++ b/bisc.cabal
@@ -1,5 +1,5 @@
 name:                bisc
-version:             0.3.0.0
+version:             0.3.1.0
 synopsis:            A small tool that clears cookies (and more).
 description:         
 
