packages feed

eros 0.2.1.0 → 0.2.1.1

raw patch · 42 files changed

+37156/−562 lines, 42 files

Files

+ README.md view
@@ -0,0 +1,27 @@+# Eros++A Haskell library for text censorship, using+[DansGuardian Phraselists](http://contentfilter.futuragts.com/phraselists/).++I converted those Phraselists to JSON. You can see the converted Phraselists+[here](https://github.com/pharpend/eros/tree/master/res/phraselists-pretty). There+are+[compressed versions](https://github.com/pharpend/eros/tree/master/res/phraselists-ugly)+for use in your code.++Eros is still in development, and is not ready to be actually used. If you would+like to contribute, please do.++# Contributing++If you want to contribute, you'll need `ghc` and `cabal-install` ++0.  Clone the git repo++        git clone https://github.com/pharpend/eros.git++1.  Install in a sandbox++        cd eros+        cabal sandbox init+        cabal install --enable-tests
eros.cabal view
@@ -1,5 +1,5 @@ name:                eros-version:             0.2.1.0+version:             0.2.1.1 synopsis:            A text censorship library. description:   A Haskell library for censoring text, using@@ -20,39 +20,13 @@ category:            Text build-type:          Simple data-files:-  res/schemata/erosc-input.json-  res/schemata/erosc-output.json-  res/schemata/phraselist.json-  res/phraselists-ugly/chat.json-  res/phraselists-ugly/conspiracy.json-  res/phraselists-ugly/drug-advocacy.json-  res/phraselists-ugly/forums.json-  res/phraselists-ugly/gambling.json-  res/phraselists-ugly/games.json-  res/phraselists-ugly/gore.json-  res/phraselists-ugly/id-theft.json-  res/phraselists-ugly/illegal-drugs.json-  res/phraselists-ugly/intolerance.json-  res/phraselists-ugly/legal-drugs.json-  res/phraselists-ugly/malware.json-  res/phraselists-ugly/music.json-  res/phraselists-ugly/news.json-  res/phraselists-ugly/nudism.json-  res/phraselists-ugly/peer2peer.json-  res/phraselists-ugly/personals.json-  res/phraselists-ugly/pornography.json-  res/phraselists-ugly/proxies.json-  res/phraselists-ugly/secret-societies.json-  res/phraselists-ugly/self-labeling.json-  res/phraselists-ugly/sport.json-  res/phraselists-ugly/translation.json-  res/phraselists-ugly/upstream-filter.json-  res/phraselists-ugly/violence.json-  res/phraselists-ugly/warez-hacking.json-  res/phraselists-ugly/weapons.json-  res/phraselists-ugly/webmail.json-  +  res/schemata/*.json+  res/phraselists-ugly/*.json cabal-version:       >=1.10+extra-source-files:+  README.md+  res/schemata/*.json+  res/phraselists-pretty/*.json  library   exposed-modules:@@ -70,10 +44,10 @@     , bytestring     , containers     , text-  hs-source-dirs:      src/lib/+  hs-source-dirs:      src/library/   default-language:    Haskell2010 -Test-Suite test-phrase+Test-Suite test-eros   type: exitcode-stdio-1.0   hs-source-dirs: test/   main-is: Main.hs@@ -96,7 +70,7 @@     , containers     , eros     , text-  hs-source-dirs: src/erosc/+  hs-source-dirs: src/client/   main-is: Main.lhs   default-language:    Haskell2010   ghc-options: -Wall
+ res/phraselists-pretty/chat.json view
@@ -0,0 +1,184 @@+[+  {+    "phrase": "javachat",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "webbchat",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "webbtjatt",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "webchat",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "chatkamer",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "chatroom",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "irc",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "ircd",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "javachat",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "javatjatt",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "gaim",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "icq",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "msn2go",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "aimexpress",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wbmsn",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "iloveim",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kiwibox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "webmessenger",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "e-messenger",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "web2messenger",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "onlinemessenger",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "msnger",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jpager",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "easymessage",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "trillian",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "instant messenger",+    "score": 10,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/conspiracy.json view
@@ -0,0 +1,345 @@+[+  {+    "phrase": "conspir",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bizarre",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "top secret",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "reptillian agenda",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "secret societ",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "lunatic fringe",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "behind the scenes",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "paranormal",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "supernatural",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "mind control",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "disinform",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "brainwash",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bohemian grove",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "subliminal",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "subculture",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "coverup",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "truthseeking",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "truth seeking",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "symbolog",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "backmask",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "rumormill",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cheating device",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "test device",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "lock pick",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pick lock",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "intriguing",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "occult",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "phantom",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "all exposed",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "invisible empire",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "alternative news",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "exposing the lies",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "big brother",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "one world government",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "new world order",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "apocalyp",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "antichrist",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "control the people",+    "score": 75,+    "forest": [++    ]+  },+  {+    "phrase": "control the world",+    "score": 75,+    "forest": [++    ]+  },+  {+    "phrase": "ufo",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "area 51",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "alien sight",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "extraterrestrial",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "aliens",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "skywatch",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cropcircle",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "secret base",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "secret plan",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "lake monster",+    "score": 40,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/domains-for-sale.json view
@@ -0,0 +1,114 @@+[+  {+    "phrase": "search our catalogue for more domains",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "this domain may be for sale by its owner",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "this website is for sale",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "domain names for sale",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "buy domains",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "domain parking",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "domain auction",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "parking_form",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fabulousdomains",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sedo",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sedolinks",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "this web page is parked",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "buydomains.com",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "fabulousdomains.com",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sedo.com",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sedoparking.com",+    "score": 50,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/drug-advocacy.json view
@@ -0,0 +1,65 @@+[+  {+    "phrase": "american cannabis society",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "drogenpolitik",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "ganga",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "ganja",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "marihuanabeleid",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "marijuanalagstiftning",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "marijuanalovgivning",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "medicinal marijuana",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "spliff",+    "score": 60,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/forums.json view
@@ -0,0 +1,212 @@+[+  {+    "phrase": "Moderator",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Logged in users",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "The newest registered user",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Last message on the forum",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Show favorite forums",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Registered User",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "forum member",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Max users online",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "New posts",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "who's online",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "topics",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "threads",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "posts",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "last post",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "last topic",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "forum",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by PHPBB",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by UBB",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "by Web Wiz Forums",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by vBulletin",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by: vBulletin",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by SMF",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by pnForum",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Snitz Forums",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Invision Power Board",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "IPS, Inc.",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by: FUDforum",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "powered by groupee community",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Powered by Mailgust",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "Bulletin Board Group",+    "score": 40,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/gambling.json view
@@ -0,0 +1,240 @@+[+  {+    "phrase": "betting",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "blackjack",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "casino",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "casinon",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "casinos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gamblers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gambling",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jackpot",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "jackpott",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kasino",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kasinon",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "loto",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lotteri",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lotterier",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lotteries",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "lottery",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lotto",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "prispott",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "roulette",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "snake eyes",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "snakeeyes",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sports book",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sportsbook",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "totalisator",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "video poker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wagering",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "wager",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "card room",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "green card lottery",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "greencard lottery",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "videopoker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "virtual casino",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "virtual vegas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "virtualcasino",+    "score": 30,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/games.json view
@@ -0,0 +1,247 @@+[+  {+    "phrase": "games",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "puzzles",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "online game",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "multiplayer",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "multi-player",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "arcade",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "poker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "solitaire",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mahjong",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mah jong",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "backgammon",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wheel of fortune",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "scrabble",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bejeweled",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bingo",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "jewel quest",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "zuma",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "texttwist",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bespelled",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cubis",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "close combat",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "combat task force",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "doom",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "delta force",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mortal kombat",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "popcap",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "xbox",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gamecube",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "playstation",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "game boy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "nintendo",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "dreamcast",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bradygames",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "capcom",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "realarcade",+    "score": 20,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/gore.json view
@@ -0,0 +1,37 @@+[+  {+    "phrase": "extremely gory",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "festering stinkpile",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "garbage house",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gore gallery",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "gory pictures",+    "score": 40,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/id-theft.json view
@@ -0,0 +1,93 @@+[+  {+    "phrase": "false id",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fake id",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "change your identit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "whole new identit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "use a new ident",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "steal someone's identit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "create new ident",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "create a new ident",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "counterfeit birth cert",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "separate identit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "entirely new identit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bulletproof new identit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "counterfeit",+    "score": 20,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/illegal-drugs.json view
@@ -0,0 +1,555 @@+[+  {+    "phrase": "2cb",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alkylnitrat",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alkyl nitrate",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "amfetamiini",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "amphetamine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "amylnitrat",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "amyl nitrate",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "amylnitrit",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "amyl nitrite",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "anfetamina",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "blowcaine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bong",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "butylnitrat",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "butyl nitrate",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "cannabis",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "cocaine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "crack house",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "crack pipe",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "crystal meth",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "gamma hydroxybutyrate",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "gamma hydroxybutyric",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "ganga",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "ganja",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "ghb",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hallucinogen",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hallucinogenic",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hallucinogens",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hallusinogeeni",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hallusinogeenit",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "halluzinogen",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "halluzinogene",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hanf",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hasch",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "hashish",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "heroiini",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "heroin",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "huffing",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "inhalant",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "inhalants",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "jointkippe",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "ketamine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "kokain",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "koks",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "lsd",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "lysergic acid diethylamide",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "marihuana",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "marijuana",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "methamphetamin",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "methamphetamine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "methamphetamines",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "methylenedioxyamphetamine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "methylenedioxyethylamphetamine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "methylenedioxymethamphetamine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "morphin",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "morphine",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "narcoti",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "narcotic",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "narcotics",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "narkotika",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "opiate",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "opium",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "oppiare",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "oppio",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "pillole",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "pills",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "poppers",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "reefer",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "reefers",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "roach clip",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "rohypnol",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "roofies",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "rophies",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "shrooms",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "soufflette",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "steriod",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "steriods",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "stimulant",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "stimulants",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "stoned",+    "score": 25,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/intolerance.json view
@@ -0,0 +1,282 @@+[+  {+    "phrase": "arabersmovs",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "aryan",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "aryan brotherhood",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "aryan nation",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "aryans",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bianco",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bichas",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "black bastard",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bleekscheet",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bush boogie",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "coon",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "fag",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "fags",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "flikker",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "flikkers",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "gook",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "jigaboo",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "joden",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "kamelvasker",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "ku klux klan",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "neger",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "negersvans",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "negersvin",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "nichten",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "nikker",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "raghead",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "spaghettivreters",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "spics",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "spleetoog",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "whitey",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "wigger",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "wops",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "faggot",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "honkey",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "nigger",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "niggere",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "sambo",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "spaggar",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "white supremacy",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "black supremacy",+    "score": 25,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/legal-drugs.json view
@@ -0,0 +1,275 @@+[+  {+    "phrase": "alcohol",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alcoholic",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alcohol still",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alkoholi",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alkoholismi",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "alkoholisti",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bartender",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bartenders",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "beer",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "binge drinking",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bourbon",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "breweries",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "brewery",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "chewing tobacco",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "cigarettes",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "cigars",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "congnac",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "drinking game",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "drinking games",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "humidor",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "humidors",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "jello shooter",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "jello shooters",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "keg",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "kegs",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "liquor",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "malt liquor",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "micro brew",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "microbrew",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "micro brewery",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "microbrewery",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "mixed drinks",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "pipe tobacco",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "smokeless tobacco",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "tequila",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "vodka",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "whiskey",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "wineries",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "winery",+    "score": 25,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/malware.json view
@@ -0,0 +1,548 @@+[+  {+    "phrase": "exhotbar",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "hotbar",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "search bar",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "precisiontime",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "gmt.exe",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "cmesys.exe",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "spyware",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adware",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "malware",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "keylogger",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "your computer is infected",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "your pc is infected",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "alertspy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "armorwall",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "botsquash",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "checkspy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "consumeridentity",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "spybouncer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "microantivirus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "purityscan",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "puritysweep",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adprotector",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "spyblast",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ucontrol",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ultimate cleaner",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "vbouncer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "addestroyer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "whenu",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "claria",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "spytrooper",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "Malware Wipe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "spy axe",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "spy trooper",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "coldlife",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "decss",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fport",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "john the ripper",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pchelps network tracer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "tcpip protector pro",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "intellitamper",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "global killer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "artic",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kikbak",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "winspy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "b-s spy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "netslayer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "comload",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ezula",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cydoor",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "casinoonnet",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "midaddle",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bargainbuddy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mwsoemon",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mywebsearch",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "windupdates",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mediaaccess.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mediaacck.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "istsvc.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wtoolsa.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wtoolss.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "apropos",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "save.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bargains.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "salm.exe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "180search",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "weathercast",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "topicks",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gamespy arcade",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "malwarealarm",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "your system is vulnerable to hackers' attacks",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "your private information is in open access to other computers",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "the page you are looking for is blocked by the adware",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "attention! your system is currently exposed",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "your pc is infected with spyware",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "get list of available antispyware products",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "spyware detected",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "system might be at risk",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "harmful and malicious software detected",+    "score": 50,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/music.json view
@@ -0,0 +1,491 @@+[+  {+    "phrase": "music",+    "score": 5,+    "forest": [+      {+        "phrase": "dirty",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "gangster",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "gangsta",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "hiphop",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "hip-hop",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "country",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "punk",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "soul",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "pop",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "record label",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "randb",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "r&b",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "dirty",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "rap",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "rapper",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "gangsta",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "download",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "free",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "video",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "player",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "producer",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "promotion",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "album",+        "score": 20,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "record label",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "recording artist",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "lyrical",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "beats",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "beats per minute",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "beat",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "radio",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "radio on demand",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "music on demand",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "artist search",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "playlist",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "iplaylist",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "durty",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "lyrics",+    "score": 120,+    "forest": [++    ]+  },+  {+    "phrase": "lyrics archive",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "lyrics by artist",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "lyrics by title",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "request lyrics",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "submit lyrics",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "archived lyrics",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "polka",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "jazz",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "classical",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "hard rock",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rap",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "reggae",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rapper",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "gangsta",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "punk",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "r&b",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "r & b",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "bluegrass",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ragtime",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "progressive rock",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "new age",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "boogie",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "easy listening",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "beats4cheap",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pepitup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "club",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "dj",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "deejay",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "disco",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rave",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "beatbox",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "producers",+    "score": 5,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/news.json view
@@ -0,0 +1,492 @@+[+  {+    "phrase": "cnn.com",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "local news",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "top stories",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "in the news",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bbc news",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "week at a glance",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "week in pictures",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "top stories",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "in pictures",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "news headlines",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "breaking headlines",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "newscast",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "news report",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "national news",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "news article",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "breaking news",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "latest news",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "business news",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "national news",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "canadian press",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "reuters",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "associated press",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "united press international",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pbs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nbc",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cbs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "co-write",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "co-producer",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ombudsperson",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ombudsman",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "news network",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "ap network",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "searchable news",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "news site",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "newscast",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "current event",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "press associat",+    "score": 65,+    "forest": [++    ]+  },+  {+    "phrase": "story highlight",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "news coverage",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "current news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "world news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "post news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "arab news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "times news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "timesnews",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "daily news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "dailynews",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "worldnews",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "global news",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "journalis",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "investigative journalism",+    "score": 125,+    "forest": [++    ]+  },+  {+    "phrase": "news archive",+    "score": 65,+    "forest": [++    ]+  },+  {+    "phrase": "entertainment news",+    "score": 75,+    "forest": [++    ]+  },+  {+    "phrase": "entertainment directory",+    "score": 75,+    "forest": [++    ]+  },+  {+    "phrase": "newspaper",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "new york times",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "ny times",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "la times",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "post dispatch",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "washington times",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "boston globe",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "boston herald",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bbc news",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "tehran times",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "atlanta journal",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "morning herald",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "post gazette",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "post-gazette",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "live video",+    "score": 75,+    "forest": [++    ]+  },+  {+    "phrase": "video feed",+    "score": 75,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/nudism.json view
@@ -0,0 +1,135 @@+[+  {+    "phrase": "clothes-free",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "clothing optional",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "naturism",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "naturist",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "naturists and nudists",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nekkid",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "nude beach",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nude beaches",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nude hik",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nude recreation",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nudism",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nudism ring",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nudist",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nudists paradise",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nudists-paradise",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nudity",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "darebare",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cybernude",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "holy nature",+    "score": 50,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/peer2peer.json view
@@ -0,0 +1,254 @@+[+  {+    "phrase": "applejuice",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ares",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "areslite",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "azureus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bearshare",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bitcomet",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "dshare",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "edonkey",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "emule",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "grobster",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "grokster",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gnotella",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gnucleus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "imesh",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kademlia",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kazaaliteressurection",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kazaa",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kazaalite",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "klite",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "limewire",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "morpheus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mutella",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "phex",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "qtella",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "shareaza",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "soulseek",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "swapper",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "toad node",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "winmx",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "xolox",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ed2k",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fasttrack",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gnutella",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kad",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "opennap",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "overnet",+    "score": 20,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/personals.json view
@@ -0,0 +1,324 @@+[+  {+    "phrase": "adult personals",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "browse men",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "browse women",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "couples seeking couples",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "couples seeking men",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "couples seeking women",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cupid report",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cupid search",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dating guide",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dating service",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dating site",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "discreet relationship",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "find your perfect match",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "find your perfect partner",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "for single men and women",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "friend finder",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "friendfinder",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "friendfinder handle",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gay personals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ideal partner",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "largest dating site",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "largest singles site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian personals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "meeting men",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "meeting women",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "meet someone special",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "men seeking couples",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "men seeking men",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "men seeking women",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "online dating",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "personal ad",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": ".personals",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "personals community",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "personals network",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "photo personals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "search for your ideal partner",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "search personals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "seeking casual sex",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "seeking romance",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "singles online",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "singles site",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "swingers directory",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "women seeking couples",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "women seeking men",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "women seeking women",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "yahoo! personals",+    "score": 30,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/pornography.json view
@@ -0,0 +1,25044 @@+[+  {+    "phrase": "adultos",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "anal",+    "score": 20,+    "forest": [+      {+        "phrase": "porn",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 70,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "bbw",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "bbws",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bdsm",+    "score": 10,+    "forest": [+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "mistress",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "beppin",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "biguns",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "boff",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "boob",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bra",+    "score": 2,+    "forest": [++    ]+  },+  {+    "phrase": "bras",+    "score": 2,+    "forest": [++    ]+  },+  {+    "phrase": "bugger",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "butt",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "churd",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "clit",+    "score": 40,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "suck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "clits",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "suck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "clitty",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock",+    "score": 10,+    "forest": [+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "uncut",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "un-cut",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "cock sucker",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cockage",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cocksucker",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cum",+    "score": 20,+    "forest": [+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "facial",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "her face",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "her tit",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "their face",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "their tit",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "facial site",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "cum filled",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum spread",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumming",+    "score": 20,+    "forest": [+      {+        "phrase": "slut",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "swallow",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "cums",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cumshot",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cumshot",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumshots",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cunt",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dicks",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dildo",+    "score": 50,+    "forest": [+      {+        "phrase": "horny",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "smut",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "dildos",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fellatio",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gay",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "girl",+    "score": 3,+    "forest": [+      {+        "phrase": "fucking girls",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "drinking cum",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "getting fucked",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "glamour model",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore",+    "score": 10,+    "forest": [+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 10,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "hardon",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "her clit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hooker",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "hookers",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "lesbiana",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lesbo",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "milf",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nasty",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "negligee",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "newd",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "newds",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "newdz",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "nude",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "nudes",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "nudes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nudie",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "nudity",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "nympho",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nymphos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "orgies",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "teen",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "orgy",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "teen",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "penis",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "piss",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "piss flaps",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "porn",+    "score": 10,+    "forest": [+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "putas",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "rape",+    "score": 5,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "free pic",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "hardcore",+        "score": 20,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "rated x",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ratedx",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "raunchy",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "reaming",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "rimjob",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rimmed",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rimming",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "scat link",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "scat love",+    "score": 120,+    "forest": [++    ]+  },+  {+    "phrase": "scat loving",+    "score": 120,+    "forest": [++    ]+  },+  {+    "phrase": "scat picture",+    "score": 120,+    "forest": [++    ]+  },+  {+    "phrase": "scat related",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "scat stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "scat story",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "scat video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "see thru",+    "score": 10,+    "forest": [+      {+        "phrase": "bikini",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "semen",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "sex",+    "score": 3,+    "forest": [++    ]+  },+  {+    "phrase": "sex factory",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexo",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sheer",+    "score": 10,+    "forest": [+      {+        "phrase": "bikini",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "shit",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "slut",+    "score": 20,+    "forest": [+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slave",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "slutty",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "smoo",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sodomy",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sperm",+    "score": 10,+    "forest": [+      {+        "phrase": "cum",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "stiffy",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "swinger",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "swingers",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "teen pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "thong",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "tit",+    "score": 5,+    "forest": [+      {+        "phrase": "porn",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "titty",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "topless",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "amateur",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "teen",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "twat",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "upskirt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "wank",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "whore",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "whores",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "whoring",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "xxx",+    "score": 20,+    "forest": [+      {+        "phrase": "porn",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "smut",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "babe",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "illegal",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "shave",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "suck",+        "score": 20,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "xxxx",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "\" dong",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "10\" cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "10\"+ cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "100% banned",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "100% free porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "100% hardcore",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "100% illegal",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "100% porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "100% slut",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "100% softcore",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "100% whore",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "12\" cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "12\"+ cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "18 u.s.c. 2257 statement",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "18 years of age",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "18 years old",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "2257 compl",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "3 day trial membership",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "9\" cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "9\"+ cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "aardvarking",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "absolutely anything goes",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ac movie pass",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "access to all of the adult check",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "action slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "adult audiences only",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adult broadcast",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adult check® gold",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult check",+    "score": 40,+    "forest": [+      {+        "phrase": "id",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "adult content list",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "adult content",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adult erotic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult film star",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult flics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult flix",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult friend finder",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "adult interactive",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adult links",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "adult mag",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "adult material",+    "score": 20,+    "forest": [+      {+        "phrase": "extreme nature",+        "score": 70,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "adult movie station",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "adult movie",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "adult newsgroup",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult only site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adult oriented",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "adult paysite",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult playground",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult related images",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "adult sex game",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult sex site",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "adult sex toy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult show",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "adult site",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "adult sites against child pornography",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "adult strip show",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult supersite",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adult upskirt",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "adult verification system",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "adult videochat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult web site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adult webmaster",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult webring",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult website",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adult xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adultcheck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adult-film star",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adultfriendfinder.com",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adultlink",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adultoptin",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adultpass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adultrevenueservice.com",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "adultrevenueservice",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "adults only please",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "adults only site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adults only",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "adult-videochat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adultweb",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "adv:adlt",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "adv:adult",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "after you cum",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "age verification",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "all asian porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "all black porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "all girl orgies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "all girl orgy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "all lubed up",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "all models are 18 years of age or older",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "all models are 21 years of age or older",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "all models are over 18 years",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "all models",+    "score": 10,+    "forest": [+      {+        "phrase": "at least 18",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "at least 21",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "over the age of 18",+        "score": 60,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "all petite",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "all porn pass",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "als scan",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "als-scan",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "alt.binaries.pictures.",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "alt.sex.",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "amateur asian",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "amateur beaver",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateur ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "amateur girl",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "amateur housewife",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "amateur housewives",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "amateur latina",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "amateur links",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "amateur pages free pics",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "amateur schoolgirl",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "amateur sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateur sucking",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "amateur teen girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateur university",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "amateur wife",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateur wives",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateur",+    "score": 10,+    "forest": [+      {+        "phrase": "porn",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "tits",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 70,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "amateur-pages.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateurpages",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amateurs preview",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "amazing sexual content",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal beads",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "anal debutants",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "anal ecstacy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "anal ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "anal fist",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal juice",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "anal love",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "anal lube",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal orgy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "anal passion",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "anal pics",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "anal play",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "anal plug",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "anal ram",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal sex tour",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal sweeties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal sweety",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "anal teen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "analingus",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "analsex.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "animal fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "animal sex",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "anime ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "anime sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "applicant is 18 years",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "applicant is eighteen years",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "appreciate naked",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "appreciate nude",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "appreciate porn",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "april summers",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "are at least 18",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "are confirming that you are aged 18yrs and over",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "are naked",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "areolas",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "around your shaft",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "arousing you",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "arse bandit",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "arse humper",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "arse humping",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "arse open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "arse pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "arse ramming",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "arse tearing",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "arseficken",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "arseplay",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "arse-pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "arses open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asexual",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "asia xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asian exxxtasy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "asian ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "asian hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asian nude",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "asian pleasure",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "asian porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asian pussies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "asian pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asian sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asian whore",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "asianerotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass cheeks",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "ass ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ass fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass full of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass full of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass humper",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "ass humping",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "ass master",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "ass open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass rammed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass ramming",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass tearing",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "asses open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "assfuck",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "assfucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ass-fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asshole and balls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asshole eaten out",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asslick",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ass-pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "asspreading",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "ass-wrecking",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "at least 18 years of age",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "at least 18 years of age",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "at least 18 years old",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "audio xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "aureole",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "autocunnilingus",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "autofellatio",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "automatically renew every 30 days",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "avs code",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "avs login",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "avsofchoice.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "awesome bisexual",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "awesome to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "axxxess",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "babe fucks",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "babes in porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "babes masturbating",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "babes",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "back door boy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "backdoor beauties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "backdoor beauty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "backdoor betty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "backdoor penetration",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bad girls club",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bald beaver",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bald clam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bald pussies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bald pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bald smoo",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ball busting",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ball gag",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ball juice",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "ball licking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ball sucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "balloon ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "balls deep in her",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "balls in mouth",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "banging a girl",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "banned in the usa",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "banned incest",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "banned",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "barely legal babes",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "barely legal boys",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "barely legal",+    "score": 40,+    "forest": [+      {+        "phrase": "horny",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "amateur",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "schoolgirl",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "starlet",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "suck",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "teen",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "barenaked",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "barnyard fuck",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bathtime lesbo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bathtime lezbo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bazoombas",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bbw ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bbw spreading",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "bdsm ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bear lovin",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bears ezine",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality at its finest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality girl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality movie",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality site",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality toon",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality video",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality woman",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "beastiality",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "beat your meat",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "beating off",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "beating your meat",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "beautiful tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "become a tit man",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bent for a dick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "best adult content",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "best adult site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "best fuck",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "best hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "best homosexual",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "best lolita",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "best porn site award",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "best tits on the net",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "best xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bestiality",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bg_backaround",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bg_teendomain",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bi girls",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "biatch",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "big beautiful women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "big black cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "big boob babes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "big boy",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "big cock sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "big dick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "big fat cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "big hard cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "big melons",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "big nipples",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "big penis",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "big round ass",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "big tit ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "big tits",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "big titties",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "big wet cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "biggest tits on the net",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "biggest tits on the web",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "biggest-boobed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bi-girls",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "bigteets.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bikini fantasies",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bikini",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "birching",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bisexual fetish",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "bisexual",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bitch",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bitches eating pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bizzare fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "bizzare sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "black cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "black desires",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "black ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "black fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "black hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "block access to this site by children",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "blonde ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "blonde sandwich",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "blow a wad",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "blow his biscuit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow his load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow job",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "blow my biscuits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow my load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow their biscuit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow their load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow there biscuit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow your biscuits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow your load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blow your member away",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "blowjob babe",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "blowjob movie",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "blowjob",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "blows neighbor",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "blows neighbour",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "blue balls",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "blue movie",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "body slapping sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "bondage & bdsm",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bondage action",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "bondage and bdsm",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bondage central",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "bondage ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bondage",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "bone smoker",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "bone smoking",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "boning a chick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "boobs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "boost your sex life",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "booty college",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bordello",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "boy for boy",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "boy toy live",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "boys fucking boys",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bp_backaround",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bp_gizmogizmo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "breast",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "brianna banks",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "britney spears",+    "score": 10,+    "forest": [+      {+        "phrase": "cum",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "naked",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "nude",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sucking",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "brothel",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "brown shower",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "brunette ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "brutal snuff",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "bucket loads of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "buckets of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "buggery",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "bukkake",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bung hole",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bunghole",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "burlesque",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "bust a nut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bust on her face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "bustiere",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "busty lesbian",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "busty",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "butt fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "butt necked",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "butt pirate",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "butt sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "buttfuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "butt-necked",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "buttock",+    "score": 5,+    "forest": [+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "buttplug",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "buttsex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "call girl",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "callgirl",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cam girl",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "camel lips",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "camgirl",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "cam-girl",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "camisole",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "candle in puss",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "candles in puss",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "candywhore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cartoon hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cartoon orgy",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cartoon sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cartoon sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "castrate",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "castration",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "casual encounter",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "casual sex",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "category: adult",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cater to all fetishes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ccbill.com",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "ccbucks.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "celeb nude",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "celebrities in the nude",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "celebrities nude",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "celebrity gangbang",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "celebrity nude",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "celebrity sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "celebs nude",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "centerfold sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "centerfold",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "centrefold",+    "score": 30,+    "forest": [+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "cover girls",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lapdanc",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cervix",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "chancroid",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "chat with horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chat with naked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chat with real girls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cheerleader ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cheerleaders naked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chemise",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cherrie popper",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cherrie-popper",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cherry popper",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cherry-popper",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chicano lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chick is well hung",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "chicks with cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chicks with dicks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "child porn",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "chippendales",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "chiquita",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "chix with dicks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chix with dix",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chlamydia",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "chloe jones",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "chocking your chicken",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "chocolate booty",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "chubby slut",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "chunky cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "chunky jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "circle jerk",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "classical bondage",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "clevland steamer",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "clit stimulation",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "clit stimulator",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "clitoral stimulation",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "clitoral stimulator",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "clitorilingus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "clitoris",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "closeup anal",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "clothing optional",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "club cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "club seventeen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "club tranny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock and ball",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cock buried",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cock draining",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cock eater",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cock eating",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cock explode",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cock hungry",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock in every hole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock in her ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock in her loose",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock in her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock in her",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cock in his",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cock in my",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cock in their",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cock in your ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock in your pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock pump",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock ring",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cock size",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cock smoker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock suck",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock sucking ebony",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock tease",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock thirsty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cock violate",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cock worship",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cocks in every hole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cocksmoker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock-smoker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock-stuffing",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cocksuck",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cock-suck",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "coital therapy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "coital",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "coitus",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "college fuck",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "college pussy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "college whore",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "collegepussy.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "color climax",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "come fuck me",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "come on her tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "come on their tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "concubine",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "contain adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains adult content",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "contains adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains content that is not suit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "contains content which is not suit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "contains explicit imagery",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains explicit sexual",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains frontal nudity",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "contains images of an adult nature",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "contains nude oriented adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains partial frontal nudity",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "contains porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains pornographic material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains sexually explicit material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains sexually explicit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "contains sexually oriented",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "content=\"adult\"",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "content=\"porn\"",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "content=\"pornography\"",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "content=\"sex\"",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "copulate",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "copulation",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "corn hole",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cornhole",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "couple fucking",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "couples fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "covered in cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "covered with cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "crave big cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "creamy xxx",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "crossdress",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cum all over",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum burping",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cum cheeks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum coated",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cum covered",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cum crazy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum diet",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum drench",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cum drink",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum eat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum facial",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum gargle",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum gargling",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum guzzling",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cum in and watch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum in her",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum in his",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum in my",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum in their",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum inside",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum now",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cum on her",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum on his",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum on my",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum on their",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum party",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cum pumping",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum shooter",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum shoots",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum shot",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum slurp",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cum soak",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum spackled",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cum stain",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cum sucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum swallow",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum thirsty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cum-covered",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cumdrinking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumiest",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cumload",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumming all over",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumming by hand",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cumming in her",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumming on her",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumming on their",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumming on there",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cumshot ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cum-shot",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cunilingus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cunnilingus",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cunt drip",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cunt leak",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cunt lips",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cunt open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cunt pump",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "cunt ripper",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cunt ripping",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cuntal",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cuntlap",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "cuntlick",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cuntlips",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cunts drip",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cunts leak",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "cunts open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cunts",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cute tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cyberage platinum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cybererotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cyberfold",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cyberfuc",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cyberphuck",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cyberphuk",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cyberphuq",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cyberporn",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cybersex superstar",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "cybersex",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "daddy cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "daily porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dailyporn",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "daughter fucks",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "dd sized rack",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "dd sized tit",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "deemed pornographic",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "deep fucked",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "deep puss",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "deep throat",+    "score": 30,+    "forest": [+      {+        "phrase": "cock",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "cum",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "dick",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "sucking",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "whore",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "deeper penetration",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "deepthroat",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "delicious assholes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "delicious clit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "delicious cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "delicious cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "delicious puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "demonseed",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "deprived little bitch",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "desnudas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "desnudus",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dialer sex",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "diaper loving",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "diaper-loving",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dick in her",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "dick in his",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "dick in my",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "dick in their",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "dicked in all holes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "diet of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "diet of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo loving",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo maniac",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo orgies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo orgy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo parties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo party",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildo",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "smut",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "dildocam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildofest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dildosex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "dirtiest babes",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "dirtiest slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dirty cheerleader",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dirty gay",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dirty panties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dirty pics",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "dirty sanchez",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "dirty slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dirty stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dirty whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dirty xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "disrobing area",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "do not enter if under 21 years of age",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "do not enter if you are a minor",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "do not enter if you are not at least 18",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "doctor love",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dog fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dog sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dogfucked",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "doggie jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "doggie-jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "doggiestyle",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "doggie-style",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "doggy jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "doggy-jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "doggystyle",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "doggy-style",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "domination",+    "score": 10,+    "forest": [+      {+        "phrase": "sex",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "dominatrix",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "dong penetration",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "dorm cam",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "dose of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dose of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "double dildo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "double ended dildo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "double fist",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "double fucked",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "double headed dildo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "double penetration",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "down on her knees",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "down on his knees",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "down on your knees",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "download evidence eliminator",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "download internet eraser",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "downloadable porn",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "dr love",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dr. love",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dreamed of sucking",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "drenched in cum",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "drink cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "drink jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "drinking cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "drinking jizz",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "dripping black pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dripping cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dripping jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dripping pink pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "dripping pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "drunk bitches fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "drunk virgin",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dry fuck her",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "easybucks.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "eat carpet",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "eat cum",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "eat cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "eat her arse",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat her ass",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat her out",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "eat her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "eat his arse",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat his ass",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat my arse",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat my ass",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat my own cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "eat my pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "eat pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "eat snatch",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "eat their arse",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat their ass",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eat twat",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "eat your own cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "eating pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "ebony blowjob",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "ebony ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "ebony on ivory",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "ejaculate",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ejaculation",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "elder erotica",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "elephant cock",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "email erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "engaging in sexual acts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "enjoy cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "enjoying cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "enlarge your penis",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "enough cum",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "enter for free porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "enter your adult check password",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "enter your agecheck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "enter your cyberage id",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erectile dysfunction",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "erection ring",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "erotic asphyxiation",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic audio stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic chat",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "erotic club",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "erotic email",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "erotic enema",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "erotic events",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "erotic fantasies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "erotic fantasy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "erotic fetish",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic gallery",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic massage",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "erotic nature",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "erotic outdoors",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "erotic personals",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic sex stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic sex story",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic story",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic talk",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "erotic teen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "erotic toys",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "erotic",+    "score": 10,+    "forest": [+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "photo",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "picture",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "erotica guide",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "erotica",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "escort agency",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "escort directory",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "escort service",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "escorts directory",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "eu amateurs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "eunuch",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "euroteen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "excessive facials",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "exclusive hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "exclusive lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "exclusive nude photo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "excrete",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "excretion",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "excretory",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "exhibition ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "exhibitionism",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "exhibitionist",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "expecting sex",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "explicit anal",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "explicit images of nude adults",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "explicit lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "explicit nude shows",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "explicit pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "explode your load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "exploited",+    "score": 10,+    "forest": [+      {+        "phrase": "teen",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "explosive shit",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "expose to minors",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "exposed peehole",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "extra adult site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme adult content",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme anal",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme bdsm",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "extreme bondage",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "extreme erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme fetish",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "extreme fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme penetration",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "extreme porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme rape",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "extreme sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme sexual content",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extreme sodomy",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "extreme xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "extremely hardcore",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "ezlolita",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "face drenched",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "faces drenched",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "facial cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "facial feast",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "facial masters",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "facial sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fanstasyfest",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fantastic facial",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fantasy fest",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fantasy toons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fantasy xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fat bitch sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fat cock",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fat fantasies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fat horny mama",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fat horny woman",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fat horny women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fat porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fat titties",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fat whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fathole",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "feel his cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "feel my cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "felatio",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "felching",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fem domination",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "female domination",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "female fisting",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "femdom",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "femme fatal",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fetish desires",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fetish ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fetish gallery",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fetish image",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fetish wear",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fhm",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "filthy sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "filthy slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "filthy turd",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "find such material personally offensive",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fine booty",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "finest xxx",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "finger fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "finger in her cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "finger in her puss",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "finger myself",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "finger up her anus",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "finger up her cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "finger up her puss",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "finger up his anus",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fingerfuck",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "finger-fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fingering girls",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fingering women",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fingering",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fingers in her cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fingers in her puss",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fingers up her cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fingers up her puss",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fist fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisted her",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fisted his",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fisted",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fistfuck",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fisting fantas",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fisting gallery",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisting movie",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisting photo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisting pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisting sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisting video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fisting",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fists in her ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fists in his ass",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "flab fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "flab-fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "flash in public",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "flashed in public",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "flashing amateurs",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "food porn",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "foot fetish ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "foot fucker",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "for adults aged 18 and over",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "for discerning adults",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "for the discerning adult",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "forbidden rape",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "forced fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "forced teen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "forced to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "forced to suck cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "forced to suck his",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "forced-sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "foreplay",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "foreskin",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "fornicate",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "fornication",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "four cocks in two holes",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "free amateur pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free amateur",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free anal",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free anime",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free asian",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free ass",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free avs",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "free balloon",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free bbw",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free bdsm",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free big tit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free black",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free blonde",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free blowjob",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "free bondage",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free brunette",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free cheerleader",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free cumshot",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free dirty pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free dirty picture",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free dirty pix",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free ebony",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free exhibition",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free fetish",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free foot fetish",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free gay",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free indian",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free interracial",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free latina",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free lesbian",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free live fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free lolita",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "free mature",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free panty",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free pantyhose",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free password",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "free porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free rape",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free russian",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free schoolgirl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free sex pic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free sex stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free sex!",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free shemale",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free smoking",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free smut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free softcore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "free stocking",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free stories",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free teen hotties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free teen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free tiny tits",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free tour",+    "score": 10,+    "forest": [+      {+        "phrase": "camera",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "girls",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 20,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "free transsexual",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free uncensored",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "free upskirt",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free voyeur",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "free x-rated",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "free xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "freeporn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "freesex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "frenum",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "fresh young teen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "friendly erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck & suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck a dog",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fuck a horse",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck and suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck animal",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck away",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fuck circus",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fuck club",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "fuck cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck display",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "fuck dogs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck fest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck flix",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck for the first time",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fuck her dad",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck her loose",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fuck her uncle",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck in the dark",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck little girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck my little",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck my loose",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck my pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck my wet",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck pic",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "fuck pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck series",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck sluts",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fuck toy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fuck twat",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fuck young boys",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck young girls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck your mom",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck your mum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck your neighbor",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fuck",+    "score": 30,+    "forest": [+      {+        "phrase": "porn",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 20,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "fuckable",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "fucked by a",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fucked by everyone",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fucked hard",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fucked in an alley",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fucked in ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucked in every hole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucked slut",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fucked so hard",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "fucked some",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fucked them",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fucked toon",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucked with utensils",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fuckfest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking and sucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking black ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fucking black pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fucking fat",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fucking for the first time",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fucking girls",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fucking horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking horse",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking like animals",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "fucking little girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking me",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fucking my pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking pink pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "fucking slut",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fucking their brains out",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking virgins",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucking young girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucks neighbor",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fucks neighbour",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "fucks some",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fucksite",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fuck-site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fucktoy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fuck-toy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "fuckwad",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "full fist in cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "full fist in puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "full fist in twat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "full frontal",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "full length porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "full nude",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "full of cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "full of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "fun with feces",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "funbags",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gang bang",+    "score": 30,+    "forest": [+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "free preview",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "free tour",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussies",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "gangbang girl",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "gangbang model",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "gangbang whore",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "gangbang",+    "score": 30,+    "forest": [+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "free preview",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "free tour",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussies",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "gangraped",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "garter belt",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "gay anal hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gay big cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "gay ebony",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "gay ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gay hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gay movies",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "gay porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gay sex pic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gay sex stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gay sex",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gay swinger",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gay threesome",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gayclub",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "genital",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "gerbling",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "get a bigger penis",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "get fucked for the first time",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "get instant access",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "get into adult paysites for free",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "get wild",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "get your ass pass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "gets nailed",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "getting a hand job",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "getting fisted",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "getting fucked",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "getting gangbanged",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "getting rimmed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "getting your rocks off",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "giant cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "giant tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "girl getting fucked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "girl on girl action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "girl orgies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "girl orgy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "girl porn",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "girl-girl action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "girls perform",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "girls suck cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "give some skank",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "giving blowjobs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "giving head",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "golden shower",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "golden trickle",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "goldenshower",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "golden-shower",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "gonhorrea",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gooey cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "gooey jizz",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "grab her tits",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "grannies fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "grannies n fatties",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "granny banging",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "granny fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "granny grab",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "granny grabbing",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "granny pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "granny sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "granny xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "grannys pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "graphic sexual",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "graphic visual depictions",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "great assholes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "great clits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "great cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "greek style",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "group fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "group masturbation",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "group sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "groupfuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "groupsex gallery",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "groupsex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "grow your penis",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "g-spot play",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "g-spot stimulation",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "g-spot stimulator",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "g-spot vibe",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "g-spot vibrator",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "guyberfold",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gynaecology",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "gynecological",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "gynecology",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "gyno cam",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "gyno girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hairy goblet",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hairy puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hairy pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hairy tacho",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hand job",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hand to gland combat",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "handballing",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hand-job",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hanky panky",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hankypanky",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hanky-panky",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hard assfuck",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hard core",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "hard fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hard interracial",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hard nipples",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore adult",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore animation",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore bdsm",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore bondage",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore celeb",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore couple",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore enthusiast",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore explicit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore fucking",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore gay",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore girls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore hoe",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore image series",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore mega site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore milf",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore movie",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore online",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore pic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore pics in your email",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore pictorials",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore pix",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore shit",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore streaming video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore tour",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore tramps",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore uncensored",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore video series",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hardcore xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hard-on",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "having sex on camera",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "having sex on tape",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "having sex on video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "head job",+    "score": 40,+    "forest": [+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "centerfold",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "cock",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "dick",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "suck",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "head-job",+    "score": 40,+    "forest": [+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "centerfold",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "cock",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "dick",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "suck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "heavy hotties",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "help us keep minors out",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hentai action",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hentai erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hentai playground",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hentai porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hentai sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hentai studios",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hentai",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "her fat ass",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hermaphrodite",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "herpes simplex",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "herpes",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "heterosexual",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "hidden camera",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "high quality adult",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "high quality porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "highly offensive adult",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "high-quality porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hirsute honeys",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "home porn movies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "homoerotic",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "homosexual",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "hornee",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "horney",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "horniest bitch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horniest",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "horny 4 cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny 4 puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny amateur",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny and curious",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny and lookin",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny biatch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny bisexual",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny bi-sexual",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny bitch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny black",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "horny blonde",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny brunette",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny cheer",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny college",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "horny couple",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "horny for cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny for puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny fun",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "horny girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny grannies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny granny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny homemaker",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "horny homemakers",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "horny housewife",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "horny housewives",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "horny lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny little girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny little slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny members",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny older",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "horny puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny redhead",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny rob",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny school",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "horny teen",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "horny whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny woman",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horny",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hornyrob",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horse cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horse fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horse jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "horse sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot & horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot 3-way",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hot adult action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot adult pic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot amateur",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "hot and horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot babes being tied up",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hot babes pissing",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hot blowjob",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hot cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot dick",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hot fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot gays",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot house wifes",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hot house wives",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hot jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot lesbo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot load",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "hot masturbation",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hot men strip",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot model",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hot nasty bitch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot nurse",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hot pornstar",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hot pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot steamy sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hot teen bitch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot teen sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot teen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hot tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot toon action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot wet action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot women strip",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hot young virgins",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hotel slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hotsex",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "hottest adult site",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hottest babes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hottest girls",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hottest hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hottest lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hottest lesbo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hottest pics",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hottest porn star",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hottest pornstar",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hottest stripclubs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hottest",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "hottie",+    "score": 30,+    "forest": [+      {+        "phrase": "girl",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "huge breasts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "huge cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "huge cumshot",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "huge dick",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "huge hooters",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "huge jugs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "huge knockers",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "huge natural tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "huge tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "hung like a horse",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "husband cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "hustler mag",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "hymen",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "i accept full respnsibility for my actions",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "i agree and want to proceed",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "i am an adult",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "i am at least 18 years of age",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "i am at least 21 years of age",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "i am naked",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "i am not a law enforcement officer",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "i am of legal age",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "i am under age and want to exit now",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "i understand if i misrepresent my age",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "i undertake that i am over 21",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "i want to be raped",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "if i misrepresent my age",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "if you are a parent and you want to block this site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "if you are not an adult",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "if you want pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "if you want to block this site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "illegal pic",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "impotence",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "impotent",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "in compliance with u.s.c",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in compliance with usc",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in her hot hole",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in her hot pussy",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in her pussy",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in her tight little ass",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in her wet hole",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in her wet pussy",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in his tight little ass",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in my hot hole",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in my hot pussy",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in my pussy",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in my wet hole",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in my wet pussy",+    "score": 90,+    "forest": [++    ]+  },+  {+    "phrase": "in need of sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "in the nude",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "in their hot hole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in their hot pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in their pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in their tight little ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in their wet hole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "in their wet pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "incest love",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "incest stories",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "incest story",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "incest video",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "incest",+    "score": 10,+    "forest": [+      {+        "phrase": "galler",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "inch cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "inch dong",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "indian ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "indian slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "inner thigh",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "innocent lolita",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "insane orgy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "instant access",+    "score": 10,+    "forest": [+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "intended for adult",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "intended for consenting adults",+    "score": 50,+    "forest": [+      {+        "phrase": "18 years",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "intended for mature adults",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "intended solely for adults",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "intense bondage",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "interacial threesome",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "interactive erotic",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "interactive orgies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "interactive orgy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "interactive sex shows",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "interactive xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "intercourse",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "interracial ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "interracial fuck",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "interracial hardcore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "interracial",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "is a fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "is an adult oriented site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "is an adult-oriented site",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "jack off while you wait",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jack off",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jack-off machine",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jelly vibe",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "jelly vibrator",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "jenna jameson",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jerk ball licking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jerk ball",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jerking rod",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "jilling off",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "jism",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jizm",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jizz all over",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz angel",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "jizz burping",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz coated",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz diet",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz facial",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz guzzling",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz in her",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz in his",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz in the",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz in their",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz junkies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz junky",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz loving",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz party",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "jizz shoots",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "jizz suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz swallow",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz thirsty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "jizz",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "jizzloving",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "join now",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "juicing a woody",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "juicy cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "juicy funbags",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "juicy pussies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "juicy pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "juicy twat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "just legal starlet",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "just turned 18",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kama sutra",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kamasutra",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kara's adult playground",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "kara's amateurs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "kara's sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "karups",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "karup's",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "kiddie porn",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "king of pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "kinky slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "kinky whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "kinky xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "klixxx.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "knocked up slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "labia",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "lactate",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "lactating pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lactating vagina",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lactating",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ladies with dicks",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "largest xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "latex slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "latex teens",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "latex whore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "latina ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "latina fetish",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "latina porn",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "latino lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "leaking smoo",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "leather thong",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "legal teen girls",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "legal teen video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "legal teen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian bordello",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian cowgirls",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian dildo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian double",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian fantasies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian fantasy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian gallery",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian haven",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian love",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian nurse",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian photo",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian site",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian strap",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian teens",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbian three",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbians lick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lesbians masturbating",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lesbo series",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lewd photo",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "lewd pic",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "lezbo series",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick carpet",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "lick clit",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lick cum",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lick hard cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick her ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick her cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick her skanky",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick her slit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick her slot",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick his arse",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lick his ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lick his cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lick his cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lick his dick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lick jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lick the jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lickin lovers",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "licking black cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "licking her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "licking pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "licking whore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lifestyle without clothes",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "like to suck",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "lingerie",+    "score": 5,+    "forest": [+      {+        "phrase": "amateur",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "lips around huge cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "little girl sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "little lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "little puss",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "little slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "little teen babe",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "little teen babes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "little tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "little whore",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "little-puss",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "live anal",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "live and uncensored",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "live and un-censored",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "live fuck shows",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live lesbian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live naked",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "live orgies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "live orgy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "live penetration",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live pussy action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live sex chat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live sex room",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "live sex show",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live sex",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "live strip",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "live teen sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live xxx cams",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "live xxx",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "livehardcore.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "livesex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "livesex4less",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lluvia dorada",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "load of cream",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "load of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "load of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lolita art",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolita bitch",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lolita facial",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lolita free",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolita gratis",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolita project",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "lolita sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lolita site",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "lolita studio",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolita video",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "lolita world",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolita",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "forbidden",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "lolitas art",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolitas free",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolitas gratis",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolitas sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolitas site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "lolitas world",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "lolitasex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "loping your mule",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "love cuffs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "love doll",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "love to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "love to have cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "love to have your cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "love tool",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "loves being fucked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "loves cock in her ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "loves cock in her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "loves cock in her twat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "loves to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "luscious rack",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "luscious tit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "male fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "man cream",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "man seeking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "manual sex",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "massive breasts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "massive hooters",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "massive jugs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "massive mammories",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "massive tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "masterbate",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "masterbating",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "masturbate men",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "masturbate with a",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "masturbate women",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "masturbating and cumming",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "masturbating mom",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "masturbating with a",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation galler",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation movie",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation online",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation picture",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation technique",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "masturbation video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "matchmaker",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "matchmaking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "material intended for adult",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "mature babes fuck",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mature babes having sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mature ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mature fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mature pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mature sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mature tits",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "mature whore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "matures in action",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "maximumcash.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "meat curtains",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "meet and fuck",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "mega fuck site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mega porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "megaporn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "megasex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "member section",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "members entrance",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "members only",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "membership will automatically renew",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "men enlarge your penis",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "men fucking men",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "men masturbate",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "men seeking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "menstruate on his semen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "menstruate on there semen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "menstruate on your semen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "messy blowjob",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "messy cum shot",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "messy cumshot",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "messy cum-shot",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "messy handjob",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mff action",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mff orgy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "midget fantas",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "midget fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "midget lust",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "midget porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "midget sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "milf hunt",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "milf search",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "milf site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "milk your dick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "milking the bull",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "milking the mouse",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "millions of nude pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mistress",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "mmf action",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mmf dick slapping",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mmf orgy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "model galler",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "models were over 18 at the time",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "models were over the age of 18",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "moist panties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mom fucking",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mom we fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "moms you want to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "monkey spank",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "monster cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "monster hooters",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "most erotic",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "most explicit teen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mosteroticteen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mother fucker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "motherfuck",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "mother-fucker",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mothers you want to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "mouthful of cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "mouthful of jizz",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "movies from paysites",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "muff dive",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "muff diving",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "muff sniff",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "muffdive",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "multiple cocks",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "mums you want to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "munch pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "must be over 18 to enter",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "must not be viewed by minors",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "muthafuck",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "mutual masturbation",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "my nude shots",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "nail a fat chick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nail a fat slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nail a fat whore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nail a fat woman",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "naked amateur",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "naked and nasty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "naked celeb",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "naked chick",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "naked on cam",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "naked on my cam",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "naked on their cam",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "naked online",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "naked young kiddy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "naked young",+    "score": 30,+    "forest": [+      {+        "phrase": "pic",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "naked",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "nakled and spread",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nastiest and youngest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nastiest sex",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nasty hentai",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nasty interracial",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nasty shots",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nasty whore",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nasty xxx",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "naughty amateur",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "naughty neighbor",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "naughty nurse",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "naughty stories",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "naughty story",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "naughty",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "necrophelia",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "needing spanking",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "needs a cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "needs cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "needs some cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "needs to fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "never been fucked",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "new erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "new girls added",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new hardcore",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "new lolita",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "new porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "new xxx",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "newcummer",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "nice firm hooters",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nice looking slut",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nipple clamp",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nipple erection",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nipple",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "no avs!",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "no credit card needed",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "no credit card required",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "no minors allowed",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "no minors are allowed",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "non stop fornication",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nonstop fornication",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "non-stop fornication",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "not intended to be viewed by minors",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "not offended by sexually explicit material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "not show this material to minors",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "not suitable for all ages",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "not suitable for minors",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nubile beauties",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nubile tighties",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nude adults engaged in sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nude amateur",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "nude beach",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nude beautiful",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nude beauty",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nude bodybuilder",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nude celebrit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude celebs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude for you",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nude girl",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nude image",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nude in public",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "nude lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude male celeb",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude model",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "nude mom",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude pictures and videos",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude pornstar",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nude sex show",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nude webcam",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nudes in all flavors",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nudists paradise",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nudists-paradise",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "nudity and sexual activity",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "nudity does not offend me",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nugget sex award",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nut buster",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphet",+    "score": 20,+    "forest": [+      {+        "phrase": "illegal",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "lolita",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "model",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "paysite",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "photo",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "young",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "nympho fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nympho girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nympho slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nympho suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nympho teen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nympho whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nympho women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac teen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "nymphomaniac",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "object to viewing sexually explicit",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "offended by sexual material",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "offensive adult material",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "offensive gay",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "official nude",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "old and horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "old biddies spreading their legs",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "old n horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "old sluts",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "on film fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "on the end of your knob",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "on your knob",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "one cock is not enough",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "one hand typer",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "one hand typing",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "one-night stand",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "online pleasure",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "online sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "online teen sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "only adults 18+ and over may enter",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "only be accessed by legal adults",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "open pussies",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "open pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "oral frenzy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "oral lover",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "oral sex",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "orgasm balls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "orgasm",+    "score": 5,+    "forest": [+      {+        "phrase": "cum",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "orgasmic lust",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "orgazm",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "orgy machine",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "orgy slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "outragerous sexual acts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "outside orgy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "overflowing tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "p0rn0",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "p0rno",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pamela sex video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "panties",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 20,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "panty ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "panty fetish",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "panty sniff",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pantyhose ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pantyhose fetish",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "participating verified website",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "party doll",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "party slut",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pay for porn",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pay site for free",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "paysite for free",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pay-site for free",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "paysite pass",+    "score": 30,+    "forest": [+      {+        "phrase": "free",+        "score": 70,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pay-site",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "paysites for free",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pearl necklace",+    "score": 10,+    "forest": [+      {+        "phrase": "cum",+        "score": 70,+        "forest": [++        ]+      },+      {+        "phrase": "jizz",+        "score": 70,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pearly bird",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pedophile",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pedophilia",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pee cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pee sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pee spurt",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pee stories",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pee story",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "peeing and shitting",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "peesex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pee-sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "penetrated teen",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "penetration shots",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "penetration",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "penile pleasure",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "penile",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "penis enlarger",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "penis suck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "perfect cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "perfect cunt",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "perfect pussies",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "perfect pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "perfect slut",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "perfect tits and ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "perfect vagina",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "perform for you",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "performing sexually explicit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "permit any minor to see this material",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "permit any minor to see this site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "permit any minor to see this web",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "perversion",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "perversity",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pervert",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "petite latina",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "petite slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "petite teen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "petite virgin",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "phallic",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "phallus",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "phone sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "phonesex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "photos of young girls",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "phuck",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pick up sluts",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pics and movies",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pics of young girls",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pierced nipple",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pierced pussy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pimp daddy",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pink 4 free",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pink bit",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pink chocolate",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pink4free",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pinkbit",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pinup starlets",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "piss pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "piss play",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "piss slit",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "planet cum",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "planet cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "plastic cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "plastic dick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "play with my pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "play with your cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "play with your penis",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "play with yourself",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "playboy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "played with herself",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "playing with dildo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "playing with your cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "playing with your penis",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "playing with yourself",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "playmate",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "please click enter only if you are over the age of 18",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pleasure balls",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "plug every orifice",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "plump babe",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "plumper puss",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "polish your knob",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "polishing your knob",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "poo sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "poontang",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "poosex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pork flute",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "pork her",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pork him",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "porn ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "porn industry",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "porn membership",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porn pass",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "porn pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porn pictures",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porn pix",+    "score": 60,+    "forest": [+      {+        "phrase": "gallery",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "porn pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "porn show",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "porn star",+    "score": 40,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "hot",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "wet",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussies",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "porn starlets",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porn try out",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porn tryout",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porn wannabe",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "porn0",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pornhole",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "pornholio",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pornmegabucks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porno ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "porno membership",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "porno pass",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "porno",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pornographic",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "porno-pass",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pornostar",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "porn-pass",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pornshop",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pornstar ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pornstar lust",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pornstar passion",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pornstars juggs",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "porntrack.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "posing nude",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "possess adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "possess or view sexually explicit",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pounding your pud",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pr0n",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "precum",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pre-cum",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pregnant & horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pregnant and horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pregnant hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pregnant sex",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pregnant slut",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "premium adult site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "premium hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "premium porn",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "preteen erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "preteen flesh",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "preteen galler",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pre-teen galler",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "preteen lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pre-teen lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pre-teen pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "preteen pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "preteen",+    "score": 20,+    "forest": [+      {+        "phrase": "anal",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "bald",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "cherries",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 60,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pre-teen",+    "score": 20,+    "forest": [+      {+        "phrase": "anal",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "bald",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "cherries",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 60,+        "forest": [++        ]+      },+      {+        "phrase": "video",+        "score": 60,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "preteen-erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "preteenflower",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "prick juice",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "prick tease",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "procreate",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "procreation",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "prophylactic",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "prostitute",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "prostitution",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pubescent female form",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "public flashings",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "public nude",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "public nudity",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "public sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "public shitting",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "public slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "puffy nipples",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pulling your johnson",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pulling your pud",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pump her arse",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump her ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump his arse",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump his ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump my arse",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump my ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump my pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pump your bone",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "pumped thoroughly",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "pure hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pure porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies crammed full",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies get drilled",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies get fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies get wet",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies leak",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies ooze",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussies",+    "score": 10,+    "forest": [+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "penetrat",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pussy cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy crammed full",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy cramming",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy drip",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pussy eater",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy eating",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy filling",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pussy get drilled",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy get fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy get wet",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy juice",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy leak",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy lick",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy lips",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy ooze",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy open wide",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy pictures",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy pleaser",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pussy pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy quota",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pussy raider",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy raiding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy splitting cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy squirt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy stretching",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pussy stuffing",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "pussy tease",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "pussy",+    "score": 10,+    "forest": [+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "penetrat",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "pussycam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy-cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy-pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "pussy-stretching",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "quality adult sites",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "quality porn",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "quality sex shops",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "queens of porn",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "rape collection",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "rape comix",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rape fantasies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rape fantasy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rape galleries",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape gallery",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape in comic",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "rape lover",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape loving",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape mpeg",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "rape oriented",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape pictures",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "rape pix",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "rape schoolgirls",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "rape series",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "rape sets",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "rape site",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape toon",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "rape video",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "raped by you",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "raped schoolgirls",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "raped teens",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rapelove",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rape-oriented",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rated xxx",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ratedxxx",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "raunchy amateur",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "raw nude teens",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "raw sex videos",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "raw sex",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "ready to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "real anal",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "real gangbang",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "real life roots",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "real lolita",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "real porn star",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "real pornstar",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "real private teen",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "real teen pic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "real teen sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "realdoll",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "realistic cock",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rectum",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "redhead rape",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "redhead sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "ripe tits",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rock hard and ready to",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rock hard cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rock hard nipple",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rock solid ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rock solid asses",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "rogering",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "root sluts",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "rooting",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "rub your stiffy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rubber cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rubber dick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "rubbing her",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rubbing him",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rubbing his",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rubbing the wad",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "rugmunch",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "russian ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "russian hooker",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "russian lolita",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "russian rape",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "russian slut",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sadomasochism",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "saigon sluts",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "satisfy your fetish",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "scantily",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "scat",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 80,+        "forest": [++        ]+      },+      {+        "phrase": "shit",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "smut",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "scat fantas",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "scat fun",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "scat mpeg",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "scat play",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "scat playground",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "school girl",+    "score": 5,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "schoolgirl ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "schoolgirl sex",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "schoolgirl",+    "score": 5,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "school-girl",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "schoolgirls free",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "screw sluts",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "screwing some chick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "screwing some slut",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "screwing some whore",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "secret fetish",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "section 2257",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "see a bbw",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "see their pussies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "see us take our clothes off",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "self-stimulation",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "semen action",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "series photos",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "series pics",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex act",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sex bizarre",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex bulletin board",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sex cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex chat line",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex chat",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex club",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex dialer",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sex farm",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sex fest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex illustrated",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex in the shower",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sex link",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex maniac",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex mpeg",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sex on the beach",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sex on the",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex orgies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex orgy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex party",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex pics",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sex pictures",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sex ring",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex scene",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex shop",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex show",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex site",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sex slave",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex stars",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex starved wife",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex starved wives",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex story",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex tour",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sex tourism",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex toys",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex vacation",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sex video feed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex video tapes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex video",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sex whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex with no strings",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexcam",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexcheck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexfeed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexfest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex-hungry girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex-hungry slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex-hungry woman",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sex-hungry women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexiest",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "sexkey id",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexkey",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexmall",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexologist",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "sexology",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "sexplore",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sexshop",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexswap2000.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sextoy",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "sextracker",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexual activity",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sexual and young",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sexual content warning",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexual content",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sexual entertainment",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexual exploitation",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sexual friend",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sexual maneuver",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexuality",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "sexually explicit conduct",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sexually explicit language",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sexually explicit materials please leave now",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexually explicit stories",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sexually oriented",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sexually wild",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sexually",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "sexxx",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sexxxhosting",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexy ass milf",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexy ass",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sexy nudes",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sexy slut",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "sexy",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "shalong",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sharing cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sharing dick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "shaved beaver",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaved clam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaved cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaved lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaved pussies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaved pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaved smoo",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "shaved snatch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven beaver",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven clam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven haven",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven pussies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shaven pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "she is a bbw",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "she likes anal",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "she loves anal",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "she needs dick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "shemale ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "shemale lounge",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "shemale sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "shemale",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "shemalelive",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shit covered ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "shit eat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shit mustache",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "shit on her face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shit on his face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shit on my face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shit on their face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shit on there face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shitfuck",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "shitsex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shlong",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shocking cock",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "shocking pictures",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "shocking sex",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "shocking video",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "shoot cum",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "shoot your load",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "shooting off",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "should not be accessed by anyone who is younger than 18",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "shove both fists",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "show pussy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "showercam",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "showered in cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "showered in piss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "showered in shit",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "showing off my body",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "showing pussy",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sick fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sickest sex video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "signup for adult check",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "silvercash.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sin city",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sinful hardcore",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sinful xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "singles club",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "site designed and intended solely for adults",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "skanky ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "skanky pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "skanky whore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "skimpy thong",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "skinflute",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slapping the monkey",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "slapping the salami",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slid his dick",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "slid my dick",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "slide their cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slide your cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sloppy anal",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sloppy fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "slurp cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slurp down cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slurp down semen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slurp semen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slurping cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slut getting fucked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slut housewife",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "slut housewives",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "slut looking hot",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slut movie",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "slut nympho",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slut series",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "slut showing her",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slut showing",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slut spreading",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slut sucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slut wanting",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "slut wife",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slut wives",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutfest",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "slutiest model",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutiest wife",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutiest wives",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutpuppy",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sluts everywhere",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sluts getting fucked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sluts live",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sluts on a farm",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sluts on the net",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sluts showing their",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sluts.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sluttiest",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "slutty girls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty house wife",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty house wives",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty models",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty naked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty nympho",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slutty teen",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "slutty wife",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty wives",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "slutty",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "smacking off",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "smear cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smear precum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smear pre-cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smear shit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "smeared cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smeared precum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smeared pre-cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smell pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smell the panties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smell the pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smell their panties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smelly pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smoking ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "smoo juice",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "smut erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "smut server",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "smutbucks.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "snatch",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "sniff panties",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sniff panty",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "snizzpod",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "snuff",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "soaked by huge cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "soaked panties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "soaking panties",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "soaking wet puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sodomize",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "soft porn",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "soft pussies",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "soft pussy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "softcore ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "softcore gallery",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "softcore images",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "softcore xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "softest pussies",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "softest pussy hair",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "softest pussy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "soggy sao",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "soldier of cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "some cock",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sore cock",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sorority cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sorority pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sorority slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spanking desires",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spanking the monkey",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "spanking the stick",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "spattered with cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sperm angel",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sperm build-up",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sperm burping",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sperm guzzling",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sperm slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sperming the worm",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sphincter fog",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "spill cum",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "spill jizz",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "spinchter",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "splattered with cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spray cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spray jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spray your load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spread my big ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "spring break nudity",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk drinker",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk drinking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk gargler",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk gargling",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk on her face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk on his face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk on their face",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunk swallow",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "spunking in a",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "spunking on a",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "spy cam",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "spy on young women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "squirt jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "squirting pics",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "squirting pictures",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "squirting show",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "squirting video",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "starlet",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "starving for cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "starving for jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sticky facial",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "stiff cock",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "stimulate your pussy",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "stocking ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "stories ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "strange sex",+    "score": 20,+    "forest": [+      {+        "phrase": "pic",+        "score": 80,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "strangling the goose",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "strap on dildo",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "strap on penis",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "strap on",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "strap-on dildo",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "strapon penetration",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "strap-on penetration",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "strap-on penis",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "strap-on",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "streaming porn",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "streaming sex vid",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "stretched cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "strictly panties",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "strip club party",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "strip poker",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "strip to naked",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "stripper sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "stripper",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "strippers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "stripping live",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "stripping sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "strips panties",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "stroking your cock",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "stroking your meat",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "strut for cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "stuck in all holes",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "stud fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "suck and fuck",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "suck cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "suck cocks dry",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "suck her tit",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "suck my cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "suck my tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "suck on her cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "suck on her tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "suck on it slut",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "suck twat",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "suck your balls",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sucking black cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sucking chrome",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sucking cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sucking the chrome",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sucking two cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sucking you off",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "suckoff arena",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sucks the jizz",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "sucks you off",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "super fucking fat",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swallow cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swallow jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swallow your load",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swedish sex ton",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "sweet ass",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sweet fucking",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "sweet love seed",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sweet puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swinger central",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swinger parties",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "swinger party",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "swingers parties",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "swingers party",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "swingers personals",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "swollen cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "syphyllis",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "taboo fantas",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "taboo free",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "taboo sex",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "take it in every hole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "take it in the ass",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "take it like a bitch",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "take multiple cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "takes cock",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "takes dick",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "takes your dick",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "taste black cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "tasty ass",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "teen anal",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "teen ass",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "teen blowjob",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "teen bondage",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teen cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teen cunt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teen ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "teen fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "teen girls sucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teen hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teen masturbating",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "teen porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teen related porn",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "teen sex videos",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "teen sex",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "teen slumber party",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "teen slut",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "teen spreads",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "teenage slut",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "teencum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "teenmodel",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "teens first time",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "testicle",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "that love big cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "that love cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "that love to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "the material on this server is adult oriented",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "the material on this site is adult oriented",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "the sex mall",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "these web pages are not intended to be viewed by minors",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "they are horny",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "thick cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "this adult site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this following pages contain adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this is an adult site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this is an adult website",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this site contains adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this site is for adults over 18",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this site is intended for adults",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "this site is not suitable for minors",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "this site provides access to images of nude",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "three day trial membership",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "threesome",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "threeway sex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "throbbing rod",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "thumbnailed erotic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "thumbnailed porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "thumbnailed xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tickle your dick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "tickling your dick",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "tied and fucked",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "tight anal",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "tight and juicy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "tight arse",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "tight ass",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "tight asshole",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tight cunt",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "tight little puss",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tight pussies",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tight pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tight young girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "till your balls are dry",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "till your balls go dry",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "time of the photographs are of age 18",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "tiny little girl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tiny tits ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "tiny tits",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "tit fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tit lover",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "tit photos",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "tit sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tit sucker",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "tit sucking",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "tittie fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "titties",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "titty fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "to prevent minors from accessing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "toilet cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toilet humiliation",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "toilet sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toiletcam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toilet-cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toiletsex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toilet-sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tommy fuck pamela",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tommy lee sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tommy lee video",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tongue bath",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "toon erotica",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toon xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "top adult site",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "top heavy babe",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "topless photo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "topless pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toplist",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "torture sex",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "tortured pussies",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "totally nude",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "totally tits",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "toys & vibrators",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "toys and vibrators",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "trannies with cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "tranny fuck",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "tranny heaven",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "tranny sex",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "tranny tits",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "transexual encounter",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "transgender",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "transsexual ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "transsexual",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "transvestite",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "triple penetration",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "true celeb",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "try something kinky",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "turd eating",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "turd munching",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat eater",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat eating",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat licking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat loving",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat pounder",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat pounding",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "twat sucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "two cocks inside",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "two cocks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ugly fat women",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "ultimate porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored adult",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored extreme",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored hentai",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored movies",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored photo",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored rape",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored toons",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "uncensored",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "uncircumcised",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "uncut",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "un-cut",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "underage lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "underage",+    "score": 10,+    "forest": [+      {+        "phrase": "horny",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 40,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "underground archive",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "underground rape",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "unfaithful.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "unique nude",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "unlimited free 3 day trial",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "unseen teen",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "until your balls are dry",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "until your balls go dry",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "until your balls hurt",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "up her ass",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "up skirt teens",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "up their asses",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "up your arse",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "up your ass",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "upskirt ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "upskirt photo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "upskirt shot",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "urophile",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "usc2257",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "use a dildo",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "use a vibrator",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "using a dildo",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "using a vibrator",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "vagina",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "vainy dick",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "valid credit card to confirm age",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "valuesex",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "venereal",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "verified avs",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "verified id",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "verified! avs",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "verify that you are an adult",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "vibrator action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "vintage porn",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "virgin dyke",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "virgin pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "virgin schoolgirl",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "virgin sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "virgin spy cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "virginity cam",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "virgins",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "voyeur cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "voyeur dorm",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "voyeur ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "voyeur",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "voyeurcam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "voyuer dorm",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "vulgar",+    "score": 3,+    "forest": [++    ]+  },+  {+    "phrase": "vulva",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "wad of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wad of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wads of cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wads of jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wank all over",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "wank off",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wank on",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "wank with",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wanker",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "wanking",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wanna fuck",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "want a big penis",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "want more nude pics",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "want to fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "warm cum",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "warm jizz",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "warning! you must be over 18 to proceed",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "watch her pussy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "watch her strip",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "watch horny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "watch me strip",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "watch our girls",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "watch sluts",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "watch slutty",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "watch teen virgins",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "watch them get fucked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "watch them strip",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "watch young girls get",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "we strongly support parental controls",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "webmasters click here to protect your site",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "weird links",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "welcome to playboy",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "well hung black",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "were at least 18 years of age at the time of photography",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "were over the age of 18 years at the time they were filmed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "were over the age of 18 years at the time they were photo",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "were over the age of 18 years at the time they were photographed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "were over the age of 21 years at the time they were filmed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "were over the age of 21 years at the time they were photographed",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wet and horny",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "wet facial",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "wet n wild",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "wet panties",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "wet panty",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "wet pussies",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "wet pussy",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "wet slut",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "wet spot",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wet tshirt",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wet t-shirt",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "wet young teen",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "wetdream",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "wetpussy.com",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wetpussy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "wh0re",+    "score": 30,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "porn",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "whack off",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "whacking off",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "what my cock looks like",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "whipping your turkey",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "whips and chains",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "white cock",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "white girl black guy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "whore cam",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "whore doing anything",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "whore doing everything",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "whore drilled",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "whorehouse",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "whores doing anything",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "whores doing everything",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wife sucking cock",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wild and erotic",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "wild fuck action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wild sex",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wildest xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "will fuck for you",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "will not allow minors",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "with dildo",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "with hard cocks",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "wives get naked",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "woman peeing",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "woman seeking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "women fucking women",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "women masturbate",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "women peeing",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "women seeking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "women shitting",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "women sucking and fucking",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "worst fuck",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "x rated",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "xbanner.it",+    "score": 130,+    "forest": [++    ]+  },+  {+    "phrase": "x-entertainment",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "x-rated game",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "x-rated live",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "x-rated show",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "x-rated video",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xrated",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "x-rated",+    "score": 20,+    "forest": [+      {+        "phrase": "horny",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "slut",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "xxx",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "anal",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "banned",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fetish",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "free",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "fuck",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "galler",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "illegal",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "loose",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "movie",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "preview",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussies",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "pussy",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "sex",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "shave",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "teen",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "tour",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "twat",+        "score": 30,+        "forest": [++        ]+      },+      {+        "phrase": "video",+        "score": 30,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "xxx action",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx anime",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx asian",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx celeb",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx comic",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx content",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx couples",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx download",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx dvd",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xxx entertainment",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx ezine",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "xxx fetish",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx geek",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xxx girl",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx hardcore",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx latina",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx live",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx magna",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx model",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx movie",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx mpeg",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "xxx older women",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "xxx password",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx paysite",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx photo galler",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx pics",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xxx pleasure",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx porn",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx product",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx rated",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx site",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx stories",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx teen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx theater",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx toons",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx tranny",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx transexual",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx try out",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx tryout",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx video clip",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxx video",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xxx wrestling",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxxadult",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xxxcounter",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "xxxrated",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "xxx-rated",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "you are about to enter a site that contains adult material",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "you are over the age of 18",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "you are of legal age",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "you certify that you are over 18",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "you certify that you are over 21",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "you have to be at least 18 years to look",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "you must be 18 to enter",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "you must be of legal age to continue",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "you must be over 21",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "you must currently be over the age of eighteen",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "young and tight",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "young flesh",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "young horny",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "young lesbian lovers",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "young lolita",+    "score": 50,+    "forest": [+      {+        "phrase": "sexual",+        "score": 50,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "young nasty teen",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "young nude",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "young nympho",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "young slut",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "youngest and nastiest",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "youngest fuckers",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "youngest legal teens",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "youngest lolita",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "youngest teens on the web",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "youngest",+    "score": 5,+    "forest": [++    ]+  },+  {+    "phrase": "your cock",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "your doodle",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "your man seed",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "zoo beastiality",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "zoo fuck",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "zoo love",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "zoo movie",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "zoo passion",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "zoo sex",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "zoo xxx",+    "score": 80,+    "forest": [++    ]+  },+  {+    "phrase": "young model",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "teen model",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "real breast",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "sexy ladies",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sexy lady",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "maxim girl",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "hot stars",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "nsfw",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "NWS",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "not safe for work",+    "score": 150,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/proxies.json view
@@ -0,0 +1,392 @@+[+  {+    "phrase": "phproxy",+    "score": 100,+    "forest": [+      {+        "phrase": "post",+        "score": 150,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "FreeProxyTemplates",+    "score": 200,+    "forest": [++    ]+  },+  {+    "phrase": "proxnetwork",+    "score": 200,+    "forest": [++    ]+  },+  {+    "phrase": "remove_scripts",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "glype",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "__proxy_url",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "__proxy_action",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "redirect_browse",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "zelune",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "proxy_url",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "proxy_options",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "proxyshout",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "proxy.com",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "surrogafy",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "surrogafier",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "start browsing through this cgi-based proxy by entering a url below",+    "score": 200,+    "forest": [++    ]+  },+  {+    "phrase": "remove ads",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hide referrer information",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "show url entry form",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "remove all cookies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "recommended for anonymity",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "remove all scripts",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "dmirror",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nph-proxy",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "nph-pro",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "cgiproxy",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "location via proxy",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "cecid",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "censorship circumvention device",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "remove banned words completely",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "filter banned words",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "please enter url to access",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "arbitroweb",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "keep your identity hidden",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "high anonymity",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "proxy",+    "score": 5,+    "forest": [+      {+        "phrase": "Include mini URL",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "Remove client-side scripting",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "Strip page title",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "encode url",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "allow cookies",+        "score": 50,+        "forest": [++        ]+      },+      {+        "phrase": "enter site url",+        "score": 150,+        "forest": [++        ]+      },+      {+        "phrase": "encrypt urls",+        "score": 150,+        "forest": [++        ]+      },+      {+        "phrase": "remove scripts",+        "score": 150,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "proxies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "public prox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "proxy list",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "unblock websites",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "hacking dansguardian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hacking dans guardian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hack dansguardian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "bypassing dansguardian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "bypassing dans guardian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "bypass dansguardian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "bypass web filter",+    "score": 30,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/secret-societies.json view
@@ -0,0 +1,338 @@+[+  {+    "phrase": "secret societ",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "fraternal order",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "fraternal society",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "fraternal association",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "fraternal league",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "superior general",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "united order",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "united society",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "united association",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "united league",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "union league",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "bilderberg group",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "skull and bones",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "skull & bones",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "ku klux klan",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "loyal order",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "jacobin",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "job's daughters",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of the golden eagle",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "jacobite",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "jesuit order",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "company of sion",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "illuminati",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "fiat lux",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "hibernians",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "the red men",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "freemason",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "master mason",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "masonic",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "odd fellows",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "rosicrucians",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "order of eastern star",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "order of foresters",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "order of freesmiths",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "order of gleaners",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "order of owls",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "order of the",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "order of druids",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "loyal order of",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "independent order of",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "knights of pythias",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of malta",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights templar",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of the holy sepulchre",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of the holy cross",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of the globe",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of the midnight mystery",+    "score": 45,+    "forest": [++    ]+  },+  {+    "phrase": "knights of the honor",+    "score": 45,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/self-labeling.json view
@@ -0,0 +1,23 @@+[+  {+    "phrase": "content=\"RTA-5042-1996-1400-1577-RTA\"",+    "score": 200,+    "forest": [++    ]+  },+  {+    "phrase": "meta name=\"Rating\" content=\"Mature\"",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "meta name=\"Rating\" content=\"Restricted\"",+    "score": 200,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/sport.json view
@@ -0,0 +1,3530 @@+[+  {+    "phrase": "sportsillustrated",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "si.com",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "espn",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "skate",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "stating",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "sports scores",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "season pass",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "season ticket",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "tournament",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "team player",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "dressing room",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "teammate",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "train with the team",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "spring training",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "professional player",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "national team",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "regionals",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "midfield",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "outfield",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "outfitter",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "clubhouse",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "club member",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "club due",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "club fee",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nfl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cfl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rink",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "nba",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wnba",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ncaa",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nhl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lpga",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pga",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tpc",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wta",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mls",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "uefa",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "atp",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "home match",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "gymnasium",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "team tryout",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "players association",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "trading deadline",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "global cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "world cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gladiator",+    "score": 65,+    "forest": [++    ]+  },+  {+    "phrase": "referee",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "basketball",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "football",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "soccer",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "volleyball",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "badminton",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "hockey",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "lacrosse",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "fox hunting",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "rugby",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "baseball",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "boxing",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "wrestling",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "tennis",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "racquetball",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "cricket",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "snooker",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "motorsport",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "athletics",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "playoff",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hall of fame",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "pro bowl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pre-game",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "half-time",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "halftime",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "super bowl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "home run",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "badminton",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "racket",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shuttlecock",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "billiards",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "bowling",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "boxing",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cricket",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cycling",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "hockey",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "figure skating",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "gymnastics",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "lacrosse",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "polo",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rodeo",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rowing",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "rugby",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "marathon",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "softball",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "squash",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "swim",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "diving",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "diver",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "triathlon",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "stadium",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "volleyball",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "weightlift",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "wrestling",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "hollywood award",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "kiteboard",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "aberdeen ironbirds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "aguascalientes rieleros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "aiken foxhounds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "akron aeros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "albuquerque isotopes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "alexandria aces",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "altoona curve",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "amarillo dillas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "anderson joes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "angel�polis tigres",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "arkansas travelers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "arizona league",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "asheville tourists",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "atlantic city surf",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "auburn doubledays",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "augusta greenjackets",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bakersfield blaze",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "batavia muckdogs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "beloit snappers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "billings mustangs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "binghamton mets",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "birmingham barons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bluefield orioles",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "boise hawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bowie baysox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bradenton juice",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "brevard county manatees",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bridgeport bluefish",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "bristol white sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "brockton rox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "brooklyn cyclones",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "buffalo bisons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "burlington bees",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "burlington royals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "calgary vipers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "camden riversharks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "campeche piratas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "carolina mudcats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "casper rockies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cedar rapids kernels",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "charleston riverdogs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "charlotte knights",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "charlotte county redfish",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "chattanooga lookouts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "chico outlaws",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "chillicothe paints",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "clearwater threshers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "clinton lumberkings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "coastal bend aviators",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "colorado springs sky sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "columbus catfish",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "columbus clippers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "connecticut defenders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "corpus christi hooks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "danville braves",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dayton dragons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "daytona cubs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "delmarva shorebirds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dunedin blue jays",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "durham bulls",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "edinburg coyotes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "edmonton cracker-cats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "el paso diablos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "elizabethton twins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "erie seawolves",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "eugene emeralds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "evansville otters",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "everett aquasox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fargo-moorhead redhawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "florence freedom",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fort myers miracle",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fort wayne wizards",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fort worth cats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "frederick keys",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fresno grizzlies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "frisco roughriders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fullerton flyers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gary southshore railcats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gateway grizzlies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "grand canyon rafters",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "great falls white sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "great lakes loons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "greeneville astros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "greensboro grasshoppers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "greenville drive",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast braves",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast dodgers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast indians",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast marlins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast nationals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast phillies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast pirates",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast red",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast tigers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast twins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gulf coast yankees",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hagerstown suns",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "harrisburg senators",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "helena brewers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hickory crawdads",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "high desert mavericks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "honolulu sharks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "hudson valley renegades",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "huntsville stars",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "idaho falls chukars",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "indianapolis indians",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "inland empire 66ers of san bernardino",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "iowa cubs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jacksonville suns",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jamestown jammers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "johnson city cardinals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "joliet jackhammers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jupiter hammerheads",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kalamazoo kings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kane county cougars",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kannapolis intimidators",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kansas city t-bones",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kingsport mets",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kinston indians",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "laguna vaqueros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lake county captains",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lake elsinore storm",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lakeland flying tigers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lakewood blueclaws",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lancaster barnstormers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lancaster jethawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lansing lugnuts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "laredo broncos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "las vegas 51s",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lexington legends",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lincoln saltdogs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "long beach armada",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "long island ducks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "louisville bats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lowell spinners",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lynchburg hillcats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "macon music",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mahoning valley scrappers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "maryland road warriors",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "memphis redbirds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mesa solar sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "m�xico diablos rojos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "midland rockhounds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mississippi braves",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "missoula osprey",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "mobile baybears",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "modesto nuts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "monclova acereros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "monterrey sultanes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "montgomery biscuits",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "myrtle beach pelicans",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nashua pride",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nashville sounds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new britain rock cats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new hampshire fisher cats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new haven county cutters",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new jersey jackals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new orleans Zephyrs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "newark bears",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "norfolk tides",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "north shore honu",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "north shore spirit",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "oaxaca guerreros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ogden raptors",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "oklahoma redhawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "omaha royals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "oneonta tigers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "orem owlz",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ottawa lynx",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "palm beach cardinals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pawtucket red sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pensacola pelicans",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "peoria chiefs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "peoria javelinas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "peoria saguaros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "phoenix desert dogs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "portland beavers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "portland sea dogs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "potomac nationals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "princeton devil rays",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "puebla pericos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "Quebec capitales",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rancho cucamonga Quakes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "reading phillies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "reno silver sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "richmond braves",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rio grande valley whitewings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "river city rascals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rochester red wings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rockford riverhawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rome braves",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "round rock express",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sacramento river cats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "salem avalanche",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "salem-keizer volcanoes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "salt lake bees",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "saltillo saraperos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san angelo colts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san antonio missions",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san diego surf dawgs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san jose giants",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san luis tuneros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sarasota reds",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "savannah sand gnats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "schaumburg flyers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "scranton/wilkes-barre red barons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "slippery rock sliders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "shreveport sports",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sioux city explorers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sioux falls canaries",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "somerset patriots",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "south bend silver hawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "south georgia peanuts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "southern illinois miners",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "southern maryland blue crabs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "spokane indians",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "springfield cardinals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "state college spikes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "staten island yankees",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "stockton ports",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. george roadrunners",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. joe blacksnakes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. lucie mets",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. paul saints",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "surprise scorpions",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "sussex skyhawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "swing of the Quad cities",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "syracuse chiefs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tabasco olmecas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tacoma rainiers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tampa yankees",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tennessee smokies",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tijuana portros",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "toledo mud hens",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "traverse city beach bums",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "trenton thunder",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tri-city dust devils",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tri-city valley cats",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tucson sidewinders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tulsa drillers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "utica blue sox",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vancouver canadians",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "rojos del �guila de veracruz",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vermont lake monsters",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vero beach dodgers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "visalia oaks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "waikiki beach boys",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "washington wild things",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "west michigan whitecaps",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "west oahu canefires",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "west tenn diamond jaxx",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "west virginia power",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wichita wranglers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "williamsport crosscutters",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wilmington blue rocks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "windy city thunderbolts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "winnipeg goldeyes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "winston-salem warthogs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wisconsin timber rattlers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "worcester tornadoes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "yakima bears",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "york revolution",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "yucat�n leones",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "yuma scorpions",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "atlanta thrashers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "boston bruins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "buffalo sabres",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "calgary flames",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "carolina hurricanes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "chicago blackhawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "colorado avalanche",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "columbus blue jackets",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dallas stars",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "detroit red wings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "edmonton oilers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "florida panthers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "los angeles kings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "minnesota wild",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "montreal canadiens",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nashville predators",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new jersey devils",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new york islanders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new york rangers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "ottawa senators",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "philadelphia flyers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "phoenix coyotes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pittsburgh penguins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san jose sharks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. louis blues",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "stanley cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tampa bay lightning",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "toronto maple leafs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vancouver canucks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "washington capitals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "arizona cardinals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "atlanta falcons",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "baltimore colts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "baltimore ravens",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "boston patriots",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "buffalo bills",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "carolina panthers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "chicago bears",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cincinnati bengals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cleveland browns",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dallas cowboys",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "dallas texans",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "denver broncos",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "detroit lions",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "green bay packers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "houston oilers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "houston texans",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "indianapolis colts",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "jacksonville jaguars",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kansas city chiefs",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "los angeles chargers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "los angeles raiders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "los angeles rams",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "miami dolphins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "minnesota vikings",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new england patriots",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new orleans saints",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new york giants",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new york jets",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new york titans",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "oakland raiders",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "philadelphia eagles",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "phoenix cardinals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "pittsburgh steelers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san diego chargers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san francisco 49ers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "seattle seahawks",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. louis cardinals",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "st. louis rams",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tampa bay buccaneers",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tennessee titans",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "washington redskins",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vuitton cup",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "valencia",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "boat race",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "yacht race",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "windsurf",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "outboard",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "canoeing",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "rafting",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "kayak",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "yacht club",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "scottish premier league",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "barclays premiership",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "carling cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "scottish league cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "club deportivo chivas usa",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "league champion",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fa cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "lg cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "fc dallas",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "houston dynamo",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "kansas city wizards",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "los angeles galaxy",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new england revolution",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "new york red bulls",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "portuguese premier league",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "real salt lake",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "san jose earthquakes",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "spanish primera liga",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "scottish cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "celtic cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "african nations cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "australian open",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "davis cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "federation cup",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "french open",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wimbledon",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "champions tour",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golf course",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "golf club",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golf ball",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golf play",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golf swing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golf score",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golf news",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golfer",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "golfing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "european tour",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nationwide tour",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "u.s. open",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "u.s. senior open",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "youth clinics",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nhra",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "irl",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "iroc",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "wrc",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "drag racing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "horse racing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "car racing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "auto racing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "motorcycle racing",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "formula 1",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "indy car",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nascar",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "olympic games",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "olympic team",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "olympic",+    "score": 15,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/translation.json view
@@ -0,0 +1,386 @@+[+  {+    "phrase": "translate",+    "score": 30,+    "forest": [+      {+        "phrase": "web page",+        "score": 40,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "translation service",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "text translator",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "translate text",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "instantly translates",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "free translation",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "web translator",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "translation engine",+    "score": 150,+    "forest": [++    ]+  },+  {+    "phrase": "surf and translate",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "translation direction",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "machine translation",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "babel fish",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "babelfish",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "freetranslation",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "worldlingo",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "foreignword.com",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "beolingus",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "foxlingo",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "tranexp.com",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "betranslated",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "systran",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "intertran",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "imtranslator.com",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "linguamatix",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "lingvo",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "online-translator",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "opentrad.org",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "translendium",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "apertium",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "appliedlanguage.com",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "langenberg",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "click2translate",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to spanish",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "spanish to english",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to german",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to russian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to japanese",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to chinese",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to korean",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to greek",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to italian",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to dutch",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "english to portuguese",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "japanese to english",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "russian to english",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "chinese to english",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "korean to english",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "german to english",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "traduction",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "traducteur",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "traduire",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "translatica",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "translendium",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "traductor",+    "score": 50,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/travel.json view
@@ -0,0 +1,618 @@+[+  {+    "phrase": "alpine resort",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "golf resort",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "great resort",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "dream resort",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "luxury resort",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "island resort",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "honeymoon suite",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "bed & breakfast",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "bed and breakfast",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "b&b",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "guest house",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "room service",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "travel agen",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "travel guid",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "travel wire",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "travel book",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "travelogue",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "popular attraction",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "popular destination",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "destination guide",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "best destination",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vacation info",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vacation spot",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vacation guide",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vacation getaway",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "vacation package",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "leisure",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "touris",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "touring",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tour operat",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "tour guide",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "things to do",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "plan your trip",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "plan your vacation",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "recreation",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "island playground",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "private island",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "islands for sale",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "island for sale",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "attractions",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "accomodations",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "ecotour",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "sightsee",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "scenic spot",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "nature show",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "national park",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "park service",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "park info",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "vistor info",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "park pass",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "national forest",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "national monument",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "african safari",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "hunting safari",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "photo safari",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "african safari",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "baja",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "historic village",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "walt disney",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "epcot",+    "score": 105,+    "forest": [++    ]+  },+  {+    "phrase": "six flags",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "roller coast",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "amusement park",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "marine world",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "thrill ride",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "family ride",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "live show",+    "score": 60,+    "forest": [++    ]+  },+  {+    "phrase": "theme park",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "waterpark",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "water park",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "water slide",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "daring adventur",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "amusement park",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "adventure park",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "wild adventure",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "wild fun",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "thrill park",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "miniature golf",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "cruise vacation",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "family cruise",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "river cruise",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "passage cruise",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "restaurant cruise",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "holiday cruise",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "cruise rout",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "cruise ship",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "cruise line",+    "score": 55,+    "forest": [++    ]+  },+  {+    "phrase": "expedition cruis",+    "score": 55,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/upstream-filter.json view
@@ -0,0 +1,37 @@+[+  {+    "phrase": "Adult site blocked",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "is not allowed on this network",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "This service is powered by OpenDNS with data from St. Bernard's iGuard",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "This site was categorized as",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "block.opendns.com",+    "score": 100,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/violence.json view
@@ -0,0 +1,170 @@+[+  {+    "phrase": "bloodbath",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "blutbad",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "carnage",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "catfight",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "catfights",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "cockfight",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "cockfighting",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "cockfights",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "gemordet",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "killed",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "killer",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "killing",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "massacre",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "massacrer",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "murder",+    "score": 35,+    "forest": [++    ]+  },+  {+    "phrase": "murdered",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "rape",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "retaliation",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "revanche",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "slaughter",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "slaughtered",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "steit",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "torture",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "tortured",+    "score": 25,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/warez-hacking.json view
@@ -0,0 +1,155 @@+[+  {+    "phrase": "cracking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "got warez?",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "hacking",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "serials 2000",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "warez",+    "score": 10,+    "forest": [+      {+        "phrase": "appz",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "crack",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "download",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "free",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "ftp",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "gamez",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "hacks",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "hackz",+        "score": 20,+        "forest": [++        ]+      },+      {+        "phrase": "illegal",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "patch",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "pirate",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "serial number",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "serials",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "serialz",+        "score": 10,+        "forest": [++        ]+      },+      {+        "phrase": "underground",+        "score": 10,+        "forest": [++        ]+      }+    ]+  },+  {+    "phrase": "warez king",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "warez monkey",+    "score": 10,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/weapons.json view
@@ -0,0 +1,912 @@+[+  {+    "phrase": "22lr",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "357mag",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "38spl",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "45acp",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "advocate",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "advocates",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ak 47",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "ak47",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "ammo",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ammunition",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ar15",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "armalite",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "armory",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "artillery",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "beltfed",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "belt fed",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "benelli",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "black powder",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "blackpowder",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "blueing",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bluing",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bolt action",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bomb building",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "bren ten",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "bullet",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "bullets",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "caliber",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "calibers",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "carbine",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "centerfire",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "checkering",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "control",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cruise missile",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "cruise missiles",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "diskettbomb",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "firearm",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "firearms",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "firing pin",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "flintlock",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "flintlocks",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "garotte",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "garrote",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "glock",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gun",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "gun making",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "gun powder",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gunpowder",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "gun range",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "gunrange",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "guns",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "gunshop",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "gunsmith",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "gunsmithing",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "handgun",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "handguns",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "handloading",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "heckler kock",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "kahr",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "knife",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "knives",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "m16",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "mac10",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "machine gun",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "machinegun",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "machineguns",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "machine guns",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "marksmanship",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "mauser",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "mossberg",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "muzzleloader",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "muzzleloading",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "nra",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ordnance",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "parkerize",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "parkerizing",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pistol",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pistols",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "pistolsmith",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "radarjamming",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "recoil buffer",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "recoil buffers",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "revolver",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "revolvers",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "rifle",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "rifles",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "rifling",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "rimfire",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "ruger",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "saiga",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "schrotflinte",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "semiauto",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "semi automatic",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "semiautomatic",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shooters",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shooting",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "shootist",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shotgun",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shotguns",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "shuriken",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sidearm",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sidearms",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sigarms",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "smith wesson",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "sniper",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sniping",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "speedloader",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "steyr",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "sub machinegun",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "submachinegun",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "sub machineguns",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "submachineguns",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "sword",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "swords",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "tactical",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "tec9",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "terroristhandbook",+    "score": 70,+    "forest": [++    ]+  },+  {+    "phrase": "terrorists handbook",+    "score": 50,+    "forest": [++    ]+  },+  {+    "phrase": "uzi",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "wadcutter",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "walther",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "weapon",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "weapons",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "winchester",+    "score": 10,+    "forest": [++    ]+  },+  {+    "phrase": "fertilizer bomb",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "triiodide",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "solidox",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "thermite",+    "score": 15,+    "forest": [++    ]+  },+  {+    "phrase": "molitoff cocktail",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "molitov cocktail",+    "score": 25,+    "forest": [++    ]+  },+  {+    "phrase": "molotov cocktail",+    "score": 25,+    "forest": [++    ]+  }+]
+ res/phraselists-pretty/webmail.json view
@@ -0,0 +1,93 @@+[+  {+    "phrase": "webmail",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "inbox",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "mailbox",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "free email",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "free webmail",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "by the squirrelmail development team",+    "score": 100,+    "forest": [++    ]+  },+  {+    "phrase": "gmail",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Sign in to Gmail",+    "score": 75,+    "forest": [++    ]+  },+  {+    "phrase": "Search, don't sort",+    "score": 20,+    "forest": [++    ]+  },+  {+    "phrase": "Welcome to Gmail",+    "score": 40,+    "forest": [++    ]+  },+  {+    "phrase": "for you to use Gmail",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "welcome to imp",+    "score": 30,+    "forest": [++    ]+  },+  {+    "phrase": "internet messaging program",+    "score": 20,+    "forest": [++    ]+  }+]
+ res/phraselists-ugly/domains-for-sale.json view
@@ -0,0 +1,1 @@+[{"phrase":"search our catalogue for more domains","score":50,"forest":[]},{"phrase":"this domain may be for sale by its owner","score":50,"forest":[]},{"phrase":"this website is for sale","score":50,"forest":[]},{"phrase":"domain names for sale","score":50,"forest":[]},{"phrase":"buy domains","score":50,"forest":[]},{"phrase":"domain parking","score":50,"forest":[]},{"phrase":"domain auction","score":50,"forest":[]},{"phrase":"parking_form","score":50,"forest":[]},{"phrase":"fabulousdomains","score":50,"forest":[]},{"phrase":"sedo","score":50,"forest":[]},{"phrase":"sedolinks","score":50,"forest":[]},{"phrase":"this web page is parked","score":150,"forest":[]},{"phrase":"buydomains.com","score":100,"forest":[]},{"phrase":"fabulousdomains.com","score":50,"forest":[]},{"phrase":"sedo.com","score":50,"forest":[]},{"phrase":"sedoparking.com","score":50,"forest":[]}]
+ res/phraselists-ugly/travel.json view
@@ -0,0 +1,1 @@+[{"phrase":"alpine resort","score":35,"forest":[]},{"phrase":"golf resort","score":35,"forest":[]},{"phrase":"great resort","score":35,"forest":[]},{"phrase":"dream resort","score":35,"forest":[]},{"phrase":"luxury resort","score":35,"forest":[]},{"phrase":"island resort","score":35,"forest":[]},{"phrase":"honeymoon suite","score":35,"forest":[]},{"phrase":"bed & breakfast","score":35,"forest":[]},{"phrase":"bed and breakfast","score":35,"forest":[]},{"phrase":"b&b","score":35,"forest":[]},{"phrase":"guest house","score":35,"forest":[]},{"phrase":"room service","score":35,"forest":[]},{"phrase":"travel agen","score":30,"forest":[]},{"phrase":"travel guid","score":30,"forest":[]},{"phrase":"travel wire","score":30,"forest":[]},{"phrase":"travel book","score":30,"forest":[]},{"phrase":"travelogue","score":30,"forest":[]},{"phrase":"popular attraction","score":40,"forest":[]},{"phrase":"popular destination","score":40,"forest":[]},{"phrase":"destination guide","score":30,"forest":[]},{"phrase":"best destination","score":30,"forest":[]},{"phrase":"vacation info","score":30,"forest":[]},{"phrase":"vacation spot","score":30,"forest":[]},{"phrase":"vacation guide","score":30,"forest":[]},{"phrase":"vacation getaway","score":30,"forest":[]},{"phrase":"vacation package","score":30,"forest":[]},{"phrase":"leisure","score":20,"forest":[]},{"phrase":"touris","score":30,"forest":[]},{"phrase":"touring","score":30,"forest":[]},{"phrase":"tour operat","score":30,"forest":[]},{"phrase":"tour guide","score":30,"forest":[]},{"phrase":"things to do","score":30,"forest":[]},{"phrase":"plan your trip","score":30,"forest":[]},{"phrase":"plan your vacation","score":30,"forest":[]},{"phrase":"recreation","score":30,"forest":[]},{"phrase":"island playground","score":55,"forest":[]},{"phrase":"private island","score":55,"forest":[]},{"phrase":"islands for sale","score":55,"forest":[]},{"phrase":"island for sale","score":55,"forest":[]},{"phrase":"attractions","score":25,"forest":[]},{"phrase":"accomodations","score":25,"forest":[]},{"phrase":"ecotour","score":55,"forest":[]},{"phrase":"sightsee","score":55,"forest":[]},{"phrase":"scenic spot","score":30,"forest":[]},{"phrase":"nature show","score":40,"forest":[]},{"phrase":"national park","score":40,"forest":[]},{"phrase":"park service","score":40,"forest":[]},{"phrase":"park info","score":40,"forest":[]},{"phrase":"vistor info","score":40,"forest":[]},{"phrase":"park pass","score":40,"forest":[]},{"phrase":"national forest","score":40,"forest":[]},{"phrase":"national monument","score":40,"forest":[]},{"phrase":"african safari","score":55,"forest":[]},{"phrase":"hunting safari","score":55,"forest":[]},{"phrase":"photo safari","score":55,"forest":[]},{"phrase":"african safari","score":55,"forest":[]},{"phrase":"baja","score":40,"forest":[]},{"phrase":"historic village","score":40,"forest":[]},{"phrase":"walt disney","score":55,"forest":[]},{"phrase":"epcot","score":105,"forest":[]},{"phrase":"six flags","score":55,"forest":[]},{"phrase":"roller coast","score":55,"forest":[]},{"phrase":"amusement park","score":55,"forest":[]},{"phrase":"marine world","score":55,"forest":[]},{"phrase":"thrill ride","score":55,"forest":[]},{"phrase":"family ride","score":55,"forest":[]},{"phrase":"live show","score":60,"forest":[]},{"phrase":"theme park","score":55,"forest":[]},{"phrase":"waterpark","score":55,"forest":[]},{"phrase":"water park","score":55,"forest":[]},{"phrase":"water slide","score":55,"forest":[]},{"phrase":"daring adventur","score":55,"forest":[]},{"phrase":"amusement park","score":55,"forest":[]},{"phrase":"adventure park","score":55,"forest":[]},{"phrase":"wild adventure","score":55,"forest":[]},{"phrase":"wild fun","score":55,"forest":[]},{"phrase":"thrill park","score":55,"forest":[]},{"phrase":"miniature golf","score":55,"forest":[]},{"phrase":"cruise vacation","score":55,"forest":[]},{"phrase":"family cruise","score":55,"forest":[]},{"phrase":"river cruise","score":55,"forest":[]},{"phrase":"passage cruise","score":55,"forest":[]},{"phrase":"restaurant cruise","score":55,"forest":[]},{"phrase":"holiday cruise","score":55,"forest":[]},{"phrase":"cruise rout","score":55,"forest":[]},{"phrase":"cruise ship","score":55,"forest":[]},{"phrase":"cruise line","score":55,"forest":[]},{"phrase":"expedition cruis","score":55,"forest":[]}]
+ src/client/Main.lhs view
@@ -0,0 +1,78 @@+|This is the main module for the eros client. This is not the meat &+potatoes of the program, but this is the bread & butter.++> module Main where+++So, here are our imports. I would like to only have IO inputs, however+the import of 'Data.Aeson' is needed in order to keep the+'Erosc.Processor' module pure.++Essentially, I was faced with either making this module be tainted by+purity, or have the other module be pure.++My qualified imports are a bit obnoxious. Even though they aren't+needed, I find that using qualified names makes the code a bit less+confusing. That is, @LzByte.hGetContents@ is a lot more informative+than just @hGetContents@.++> import           Data.Aeson             as Aeson+> import qualified Data.ByteString.Lazy   as LzByte+> import           Erosc.Processor        as Erosc+> import qualified System.IO              as StdIO+++|Eventually, I'll need this data type when I use command line+arguments. For the moment, it's just a dummy type. So, enjoy it.++> data EroscOpts = EroscOpts++|So, this is the main function. Whoop de doo.  It sends the contents+of 'StdIO.stdin' to runBtStr.++Eventually, I'll add in command line argument parsing, and then we'll+have a use for the 'EroscOptions' type.++> main :: IO ()+> main = runBtStr =<< LzByte.hGetContents StdIO.stdin++|This function takes the input (presumably 'StdIO.stdin'), and tries+to decode it.++If it successfully decodes the input into the 'Erosc.Input' type,+it sends the newfound decoded input to 'runInput', which sends it to+the processor.++If it can't, the program will throw a tantrum and shit itself.++> runBtStr :: LzByte.ByteString -> IO ()+> runBtStr inputBt = do+>   let eitherJson = (Aeson.eitherDecode inputBt) :: Either String Erosc.Input+>   case eitherJson of+>     Left msg      -> fail msg+>     Right ecInput -> runInput ecInput+++There is an astonishing quantity of bureaucracy in this program. You+have to go through like 5 functions before you get to a function that+actually does something useful.++|Okay, so, we're getting closer to the part of the program that+actually does stuff (or further away, depending on the location from+whence you come).++'runInput' takes the 'Erosc.Input' object (I do hate that word), and+sends it to some function in 'Erosc' that actually mutates the+data. Well, it doesn't mutate it, obviously, because this is Haskell,+but you get the idea.++@result@ needs to be '(<-)'d because 'Erosc.processInput' needs to+read the phraselist JSON file. This is a result of poor library design+on my part. I will fix this in a future release.++> runInput :: Erosc.Input -> IO ()+> runInput ipt = do+>   result <- Erosc.processInput ipt+>   let jsonText = Erosc.encode result+>   LzByte.hPutStr StdIO.stdout jsonText+
− src/erosc/Main.lhs
@@ -1,78 +0,0 @@-|This is the main module for the eros client. This is not the meat &-potatoes of the program, but this is the bread & butter.--> module Main where---So, here are our imports. I would like to only have IO inputs, however-the import of 'Data.Aeson' is needed in order to keep the-'Erosc.Processor' module pure.--Essentially, I was faced with either making this module be tainted by-purity, or have the other module be pure.--My qualified imports are a bit obnoxious. Even though they aren't-needed, I find that using qualified names makes the code a bit less-confusing. That is, @LzByte.hGetContents@ is a lot more informative-than just @hGetContents@.--> import           Data.Aeson             as Aeson-> import qualified Data.ByteString.Lazy   as LzByte-> import           Erosc.Processor        as Erosc-> import qualified System.IO              as StdIO---|Eventually, I'll need this data type when I use command line-arguments. For the moment, it's just a dummy type. So, enjoy it.--> data EroscOpts = EroscOpts--|So, this is the main function. Whoop de doo.  It sends the contents-of 'StdIO.stdin' to runBtStr.--Eventually, I'll add in command line argument parsing, and then we'll-have a use for the 'EroscOptions' type.--> main :: IO ()-> main = runBtStr =<< LzByte.hGetContents StdIO.stdin--|This function takes the input (presumably 'StdIO.stdin'), and tries-to decode it.--If it successfully decodes the input into the 'Erosc.Input' type,-it sends the newfound decoded input to 'runInput', which sends it to-the processor.--If it can't, the program will throw a tantrum and shit itself.--> runBtStr :: LzByte.ByteString -> IO ()-> runBtStr inputBt = do->   let eitherJson = (Aeson.eitherDecode inputBt) :: Either String Erosc.Input->   case eitherJson of->     Left msg      -> fail msg->     Right ecInput -> runInput ecInput---There is an astonishing quantity of bureaucracy in this program. You-have to go through like 5 functions before you get to a function that-actually does something useful.--|Okay, so, we're getting closer to the part of the program that-actually does stuff (or further away, depending on the location from-whence you come).--'runInput' takes the 'Erosc.Input' object (I do hate that word), and-sends it to some function in 'Erosc' that actually mutates the-data. Well, it doesn't mutate it, obviously, because this is Haskell,-but you get the idea.--@result@ needs to be '(<-)'d because 'Erosc.processInput' needs to-read the phraselist JSON file. This is a result of poor library design-on my part. I will fix this in a future release.--> runInput :: Erosc.Input -> IO ()-> runInput ipt = do->   result <- Erosc.processInput ipt->   let jsonText = Erosc.encode result->   LzByte.hPutStr StdIO.stdout jsonText-
− src/lib/Text/Eros/Message.hs
@@ -1,61 +0,0 @@--- |--- Module       : Text.Eros.Message--- Description  : Module for censoring pieces of text.--- Copyright    : 2014, Peter Harpending--- License      : BSD3--- Maintainer   : Peter Harpending <pharpend2@gmail.com>--- Stability    : experimental--- Portability  : archlinux---- This module deals specifically with pieces of 'Text'.--module Text.Eros.Message (messageScore) where---- Here, we have all the imports.-import           Data.List-import qualified Data.Map.Strict as M-import qualified Data.Text.Lazy as L-import           Data.Tree-import           Text.Eros.Phrase-import           Text.Eros.Phraselist----- |I can never remember what I named things, so here are a bunch of--- type synonyms.-type BadWord     = L.Text-type Message     = L.Text-type MessagePart = L.Text-type Restof      = L.Text-type RestOf      = L.Text-type Word        = L.Text-type Score       = Int---- |Does a top-level split of a 'Message'. Returns a list of pairs,--- with the first element being the score up to that point in the--- message, as well as the rest of the message. That gives you--- somewhat of an idea how it works, but that's not quite it-messageSplit :: Message -> PhraseMap -> [(Score, RestOf)]-messageSplit initialText sayingsMap = concat $ filter (/= [])-                                             $ nub-                                             $ map breakSaying potentialSayings-  where-    potentialSayings      = M.keys sayingsMap-    breakSaying saying    = map (trimSaying saying . snd) $ broked saying-    trimSaying saying txt = (sayScore saying, L.strip $ L.drop (L.length saying) txt)-    sayScore saying       = case maybeScore saying of-                              Just score -> score-                              Nothing    -> 0-    maybeScore saying     = fmap score $ fmap rootLabel $ M.lookup saying sayingsMap-    broked saying         = L.breakOnAll saying lowerText -- looks like [("go ", "fuck yourself ")]-    lowerText             = L.toLower initialText         -- looks like "go fuck yourself" (compared to "gO fUcK yOURSelf")-    trimPair (a, b)       = (L.strip a, L.strip b)        -- looks like ("go", "fuck yourself")---- |Given a message, find its score.-messageScore :: Message -> PhraseMap -> Score-messageScore msg pmap-  | L.empty == msg = 0-  | otherwise      = (sum topScores) + (sum lowerScores)-      where-        msgSplit    = messageSplit msg pmap-        topScores   = map fst msgSplit-        lowerScores = map (\m -> messageScore m pmap) $ map snd msgSplit
− src/lib/Text/Eros/Phrase.hs
@@ -1,57 +0,0 @@--- |--- Module       : Text.Eros.Phrase--- Description  : Pure interface for 'Phrase's and 'PhraseTree's.--- Copyright    : 2014, Peter Harpending.--- License      : BSD3--- Maintainer   : Peter Harpending <pharpend2@gmail.com>--- Stability    : experimental--- Portability  : archlinux--- --module Text.Eros.Phrase where--import qualified Data.Map as M-import           Data.Ord (comparing)-import           Data.Text.Lazy (Text)-import           Data.Tree---- |A Phrase is a piece of Text, with an int representing its--- weight. These are the used internally within 'eros', in--- 'Tree's. -data Phrase = Phrase { phrase :: Text-                     , score  :: Int-                     }-  deriving (Read, Show)--instance Eq Phrase where-  a == b = (score a) == (score b)-  a /= b = (score a) /= (score b)--instance Ord Phrase where-  -- |To compare 'Phrases', just compare their 'score's-  compare = comparing score---- |A 'Tree' of 'Phrase's-type PhraseTree = Tree Phrase--- |A 'Forest' of 'Phrase's-type PhraseForest = Forest Phrase--- |A Map of text values the appropriate tree-type PhraseMap = M.Map Text PhraseTree---- |The 'score' of the 'PhraseTree' is the sum of the 'score's of its 'Node's.-treeScore :: PhraseTree -> Int-treeScore = sum . map score . flatten---- |Given a list of 'PhraseTree's, return the top-level 'phrase's.-forestPhrases :: [PhraseTree] -> [Text]-forestPhrases = map forestPhrase---- |Given a 'PhraseTree', return the top-level 'phrase'.-forestPhrase :: PhraseTree -> Text-forestPhrase (Node phr subf) = phrase phr---- |Given a list of 'PhraseTree's, return a map of each phrase with--- the appropriate tree.-mkMap :: PhraseForest -> PhraseMap-mkMap = M.fromList . phraseTreeAlist-  where phraseTreeAlist frs = zip (forestPhrases frs) frs
− src/lib/Text/Eros/Phraselist.hs
@@ -1,330 +0,0 @@-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RankNTypes #-}---- |--- Module       : Text.Eros.Phraselist--- Description  : A module for dealing with Phraselists.--- Copyright    : 2014, Peter Harpending.--- License      : BSD3--- Maintainer   : Peter Harpending <pharpend2@gmail.com>--- Stability    : experimental--- Portability  : archlinux------ If you want to make your own phraselist, you need to write a JSON--- file, in accordance with the--- <https://raw.githubusercontent.com/pharpend/eros/master/res/phraselist-schema.json schema>.--- Once you do that, make a data type for your phraselist.--- Make your data type an instance of 'Phraselist', and you're good to--- go.--- --- For example, let's say your phraselist is @mylist.json@, and it's--- all in accordance with the schema. Your code would look something--- like this:--- --- @--- data MyList = MyList--- --- instance Phraselist MyList where---   phraselistPath MyList = getDataFileName "mylist.json"---   phraselistPath _      = undefined--- @--- --- Don't forget to add @mylist.json@ to @Data-Files@ in your @.cabal@--- file.--- --- If you want to use one of the lists we already supply--- --module Text.Eros.Phraselist where--import           Control.Applicative  ((<$>), (<*>))-import           Control.Monad        (mzero, sequence)-import           Data.Aeson-import qualified Data.ByteString.Lazy as B-import qualified Data.Map             as M-import           Data.Text.Lazy       (Text)-import qualified Data.Text.Lazy       as L-import           Data.Tree-import           Paths_eros-import           System.Exit-import           Text.Eros.Phrase--class Phraselist t where-  phraselistPath :: t -> IO FilePath---- |A set of 'Phraselist's. Note that this is actually a list, and I'm--- calling it a "set" for purely lexical purposes.-type PhraselistSet = Phraselist t => [t]---- |The phraselists in @res/@. Each of these constructors correspond--- to one of the files--- <https://github.com/pharpend/eros/tree/master/res/phraselists-pretty here>.--- --- Gitlab has a terrible interface, so I won't provide links to each--- one of them.-data ErosList = Chat-              | Conspiracy-              | DrugAdvocacy-              | Forums-              | Gambling-              | Games-              | Gore-              | IdTheft-              | IllegalDrugs-              | Intolerance-              | LegalDrugs-              | Malware-              | Music-              | News-              | Nudism-              | Peer2Peer-              | Personals-              | Pornography-              | Proxies-              | SecretSocieties-              | SelfLabeling-              | Sport-              | Translation-              | UpstreamFilter-              | Violence-              | WarezHacking-              | Weapons-              | Webmail--instance Eq ErosList where-  (==) Chat Chat = True-  (==) Conspiracy Conspiracy = True-  (==) DrugAdvocacy DrugAdvocacy = True-  (==) Forums Forums = True-  (==) Gambling Gambling = True-  (==) Games Games = True-  (==) Gore Gore = True-  (==) IdTheft IdTheft = True-  (==) IllegalDrugs IllegalDrugs = True-  (==) Intolerance Intolerance = True-  (==) LegalDrugs LegalDrugs = True-  (==) Malware Malware = True-  (==) Music Music = True-  (==) News News = True-  (==) Nudism Nudism = True-  (==) Peer2Peer Peer2Peer = True-  (==) Personals Personals = True-  (==) Pornography Pornography = True-  (==) Proxies Proxies = True-  (==) SecretSocieties SecretSocieties = True-  (==) SelfLabeling SelfLabeling = True-  (==) Sport Sport = True-  (==) Translation Translation = True-  (==) UpstreamFilter UpstreamFilter = True-  (==) Violence Violence = True-  (==) WarezHacking WarezHacking = True-  (==) Weapons Weapons = True-  (==) Webmail Webmail = True-  (==) Chat _ = False-  (==) Conspiracy _ = False-  (==) DrugAdvocacy _ = False-  (==) Forums _ = False-  (==) Gambling _ = False-  (==) Games _ = False-  (==) Gore _ = False-  (==) IdTheft _ = False-  (==) IllegalDrugs _ = False-  (==) Intolerance _ = False-  (==) LegalDrugs _ = False-  (==) Malware _ = False-  (==) Music _ = False-  (==) News _ = False-  (==) Nudism _ = False-  (==) Peer2Peer _ = False-  (==) Personals _ = False-  (==) Pornography _ = False-  (==) Proxies _ = False-  (==) SecretSocieties _ = False-  (==) SelfLabeling _ = False-  (==) Sport _ = False-  (==) Translation _ = False-  (==) UpstreamFilter _ = False-  (==) Violence _ = False-  (==) WarezHacking _ = False-  (==) Weapons _ = False-  (==) Webmail _ = False---- |A list of phraselists we provide.-erosLists :: [ErosList]-erosLists = [ Chat-            , Conspiracy-            , DrugAdvocacy-            , Forums-            , Gambling-            , Games-            , Gore-            , IdTheft-            , IllegalDrugs-            , Intolerance-            , LegalDrugs-            , Malware-            , Music-            , News-            , Nudism-            , Peer2Peer-            , Personals-            , Pornography-            , Proxies-            , SecretSocieties-            , SelfLabeling-            , Sport-            , Translation-            , UpstreamFilter-            , Violence-            , WarezHacking-            , Weapons-            , Webmail-            ]---- |A list of the paths to the phraselists we provide.-erosListPaths :: IO [FilePath]-erosListPaths = mapM phraselistPath erosLists--erosListNames :: [L.Text]-erosListNames = [ "chat"-                , "conspiracy"-                , "drug-advocacy"-                , "forums"-                , "gambling"-                , "games"-                , "gore"-                , "id-theft"-                , "illegal-drugs"-                , "intolerance"-                , "legal-drugs"-                , "malware"-                , "music"-                , "news"-                , "nudism"-                , "peer2peer"-                , "personals"-                , "pornography"-                , "proxies"-                , "secret-societies"-                , "self-labeling"-                , "sport"-                , "translation"-                , "upstream-filter"-                , "violence"-                , "warez-hacking"-                , "weapons"-                , "webmail"-                ]---- |You can't really order the lists, so we won't use 'M.Map'-erosListNamePairs :: [(ErosList, L.Text)]-erosListNamePairs = zip erosLists erosListNames--erosNameByList :: ErosList -> Maybe L.Text-erosNameByList key = lookup key erosListNamePairs--erosNameListMap :: M.Map L.Text ErosList-erosNameListMap = M.fromList $ zip erosListNames erosLists--erosListByName :: L.Text -> Maybe ErosList-erosListByName key = M.lookup key erosNameListMap ---- These are the data paths for the various PhraseLists-instance Phraselist ErosList where-  phraselistPath Chat            = getDataFileName "res/phraselists-ugly/chat.json"-  phraselistPath Conspiracy      = getDataFileName "res/phraselists-ugly/conspiracy.json"-  phraselistPath DrugAdvocacy    = getDataFileName "res/phraselists-ugly/drug-advocacy.json"-  phraselistPath Forums          = getDataFileName "res/phraselists-ugly/forums.json"-  phraselistPath Gambling        = getDataFileName "res/phraselists-ugly/gambling.json"-  phraselistPath Games           = getDataFileName "res/phraselists-ugly/games.json"-  phraselistPath Gore            = getDataFileName "res/phraselists-ugly/gore.json"-  phraselistPath IdTheft         = getDataFileName "res/phraselists-ugly/id-theft.json"-  phraselistPath IllegalDrugs    = getDataFileName "res/phraselists-ugly/illegal-drugs.json"-  phraselistPath Intolerance     = getDataFileName "res/phraselists-ugly/intolerance.json"-  phraselistPath LegalDrugs      = getDataFileName "res/phraselists-ugly/legal-drugs.json"-  phraselistPath Malware         = getDataFileName "res/phraselists-ugly/malware.json"-  phraselistPath Music           = getDataFileName "res/phraselists-ugly/music.json"-  phraselistPath News            = getDataFileName "res/phraselists-ugly/news.json"-  phraselistPath Nudism          = getDataFileName "res/phraselists-ugly/nudism.json"-  phraselistPath Peer2Peer       = getDataFileName "res/phraselists-ugly/peer2peer.json"-  phraselistPath Personals       = getDataFileName "res/phraselists-ugly/personals.json"-  phraselistPath Pornography     = getDataFileName "res/phraselists-ugly/pornography.json"-  phraselistPath Proxies         = getDataFileName "res/phraselists-ugly/proxies.json"-  phraselistPath SecretSocieties = getDataFileName "res/phraselists-ugly/secret-societies.json"-  phraselistPath SelfLabeling    = getDataFileName "res/phraselists-ugly/self-labeling.json"-  phraselistPath Sport           = getDataFileName "res/phraselists-ugly/sport.json"-  phraselistPath Translation     = getDataFileName "res/phraselists-ugly/translation.json"-  phraselistPath UpstreamFilter  = getDataFileName "res/phraselists-ugly/upstream-filter.json"-  phraselistPath Violence        = getDataFileName "res/phraselists-ugly/violence.json"-  phraselistPath WarezHacking    = getDataFileName "res/phraselists-ugly/warez-hacking.json"-  phraselistPath Weapons         = getDataFileName "res/phraselists-ugly/weapons.json"-  phraselistPath Webmail         = getDataFileName "res/phraselists-ugly/webmail.json"---- |Placeholder type used to read JSON. The JSON schema (currently, at--- least) is such that one needs this type to read the JSON. You can--- use 'fromPAT' to convert this type into a 'PhraseTree'-data PhraseAlmostTree = PhraseAlmostTree { patPhrase :: Text-                                         , patScore  :: Int-                                         , patForest :: [PhraseAlmostTree]-                                         }-  deriving (Show, Read)---- |Alias for 'PhraseAlmostTree'-type PAT = PhraseAlmostTree---- |You can read the--- <https://raw.githubusercontent.com/pharpend/eros/master/res/phraselist-schema.json JSON schema>--- to see how this works.-instance FromJSON PAT where-  parseJSON (Object v) = PhraseAlmostTree-    <$> v .: "phrase"-    <*> v .: "score"-    <*> v .: "forest"-  parseJSON _          = fail "Object not a PhraseAlmostTree."---- |Convert a 'PAT' into a 'PhraseTree'.-fromPAT :: PAT -> PhraseTree-fromPAT (PhraseAlmostTree p s f) = Node (Phrase p s) $ map fromPAT f---- |I figure some people like to type a lot.-fromPhraseAlmostTree :: PAT -> PhraseTree-fromPhraseAlmostTree = fromPAT---- |Read a 'Phraselist', marshal it into a 'PhraseForest'.-readPhraselist :: Phraselist t => t -> IO PhraseForest-readPhraselist elist = do-  lpath <- phraselistPath elist-  ltext <- B.readFile lpath-  let ljson = (eitherDecode ltext) :: Either String [PAT]-  case ljson of-    Left msg   -> fail msg-    Right pats -> return $ map fromPAT pats---- |Alias for 'readPhraselist'-loadPhraselist :: Phraselist t => t -> IO PhraseForest-loadPhraselist = readPhraselist---- |Alias for 'readPhraselist'-readPhraseFile :: Phraselist t => t -> IO PhraseForest-readPhraseFile = readPhraselist---- |Alias for 'readPhraselist'-loadPhraseFile :: Phraselist t => t -> IO PhraseForest-loadPhraseFile = readPhraselist---- |Alias for 'readPhraselist'-readPhraseForest :: Phraselist t => t -> IO PhraseForest-readPhraseForest = readPhraselist---- |Alias for 'readPhraselist'-loadPhraseForest :: Phraselist t => t -> IO PhraseForest-loadPhraseForest = readPhraselist---- |Load a 'Phraselist' directly into a 'PhraseMap'-readPhraseMap :: Phraselist t => t -> IO PhraseMap-readPhraseMap plist = fmap mkMap $ readPhraselist plist---- |Alias for 'readPhraseMap'-loadPhraseMap :: Phraselist t => t -> IO PhraseMap-loadPhraseMap = readPhraseMap
+ src/library/Text/Eros/Message.hs view
@@ -0,0 +1,61 @@+-- |+-- Module       : Text.Eros.Message+-- Description  : Module for censoring pieces of text.+-- Copyright    : 2014, Peter Harpending+-- License      : BSD3+-- Maintainer   : Peter Harpending <pharpend2@gmail.com>+-- Stability    : experimental+-- Portability  : archlinux++-- This module deals specifically with pieces of 'Text'.++module Text.Eros.Message (messageScore) where++-- Here, we have all the imports.+import           Data.List+import qualified Data.Map.Strict as M+import qualified Data.Text.Lazy as L+import           Data.Tree+import           Text.Eros.Phrase+import           Text.Eros.Phraselist+++-- |I can never remember what I named things, so here are a bunch of+-- type synonyms.+type BadWord     = L.Text+type Message     = L.Text+type MessagePart = L.Text+type Restof      = L.Text+type RestOf      = L.Text+type Word        = L.Text+type Score       = Int++-- |Does a top-level split of a 'Message'. Returns a list of pairs,+-- with the first element being the score up to that point in the+-- message, as well as the rest of the message. That gives you+-- somewhat of an idea how it works, but that's not quite it+messageSplit :: Message -> PhraseMap -> [(Score, RestOf)]+messageSplit initialText sayingsMap = concat $ filter (/= [])+                                             $ nub+                                             $ map breakSaying potentialSayings+  where+    potentialSayings      = M.keys sayingsMap+    breakSaying saying    = map (trimSaying saying . snd) $ broked saying+    trimSaying saying txt = (sayScore saying, L.strip $ L.drop (L.length saying) txt)+    sayScore saying       = case maybeScore saying of+                              Just score -> score+                              Nothing    -> 0+    maybeScore saying     = fmap score $ fmap rootLabel $ M.lookup saying sayingsMap+    broked saying         = L.breakOnAll saying lowerText -- looks like [("go ", "fuck yourself ")]+    lowerText             = L.toLower initialText         -- looks like "go fuck yourself" (compared to "gO fUcK yOURSelf")+    trimPair (a, b)       = (L.strip a, L.strip b)        -- looks like ("go", "fuck yourself")++-- |Given a message, find its score.+messageScore :: Message -> PhraseMap -> Score+messageScore msg pmap+  | L.empty == msg = 0+  | otherwise      = (sum topScores) + (sum lowerScores)+      where+        msgSplit    = messageSplit msg pmap+        topScores   = map fst msgSplit+        lowerScores = map (\m -> messageScore m pmap) $ map snd msgSplit
+ src/library/Text/Eros/Phrase.hs view
@@ -0,0 +1,57 @@+-- |+-- Module       : Text.Eros.Phrase+-- Description  : Pure interface for 'Phrase's and 'PhraseTree's.+-- Copyright    : 2014, Peter Harpending.+-- License      : BSD3+-- Maintainer   : Peter Harpending <pharpend2@gmail.com>+-- Stability    : experimental+-- Portability  : archlinux+-- ++module Text.Eros.Phrase where++import qualified Data.Map as M+import           Data.Ord (comparing)+import           Data.Text.Lazy (Text)+import           Data.Tree++-- |A Phrase is a piece of Text, with an int representing its+-- weight. These are the used internally within 'eros', in+-- 'Tree's. +data Phrase = Phrase { phrase :: Text+                     , score  :: Int+                     }+  deriving (Read, Show)++instance Eq Phrase where+  a == b = (score a) == (score b)+  a /= b = (score a) /= (score b)++instance Ord Phrase where+  -- |To compare 'Phrases', just compare their 'score's+  compare = comparing score++-- |A 'Tree' of 'Phrase's+type PhraseTree = Tree Phrase+-- |A 'Forest' of 'Phrase's+type PhraseForest = Forest Phrase+-- |A Map of text values the appropriate tree+type PhraseMap = M.Map Text PhraseTree++-- |The 'score' of the 'PhraseTree' is the sum of the 'score's of its 'Node's.+treeScore :: PhraseTree -> Int+treeScore = sum . map score . flatten++-- |Given a list of 'PhraseTree's, return the top-level 'phrase's.+forestPhrases :: [PhraseTree] -> [Text]+forestPhrases = map forestPhrase++-- |Given a 'PhraseTree', return the top-level 'phrase'.+forestPhrase :: PhraseTree -> Text+forestPhrase (Node phr subf) = phrase phr++-- |Given a list of 'PhraseTree's, return a map of each phrase with+-- the appropriate tree.+mkMap :: PhraseForest -> PhraseMap+mkMap = M.fromList . phraseTreeAlist+  where phraseTreeAlist frs = zip (forestPhrases frs) frs
+ src/library/Text/Eros/Phraselist.hs view
@@ -0,0 +1,330 @@+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RankNTypes #-}++-- |+-- Module       : Text.Eros.Phraselist+-- Description  : A module for dealing with Phraselists.+-- Copyright    : 2014, Peter Harpending.+-- License      : BSD3+-- Maintainer   : Peter Harpending <pharpend2@gmail.com>+-- Stability    : experimental+-- Portability  : archlinux+--+-- If you want to make your own phraselist, you need to write a JSON+-- file, in accordance with the+-- <https://raw.githubusercontent.com/pharpend/eros/master/res/phraselist-schema.json schema>.+-- Once you do that, make a data type for your phraselist.+-- Make your data type an instance of 'Phraselist', and you're good to+-- go.+-- +-- For example, let's say your phraselist is @mylist.json@, and it's+-- all in accordance with the schema. Your code would look something+-- like this:+-- +-- @+-- data MyList = MyList+-- +-- instance Phraselist MyList where+--   phraselistPath MyList = getDataFileName "mylist.json"+--   phraselistPath _      = undefined+-- @+-- +-- Don't forget to add @mylist.json@ to @Data-Files@ in your @.cabal@+-- file.+-- +-- If you want to use one of the lists we already supply+-- ++module Text.Eros.Phraselist where++import           Control.Applicative  ((<$>), (<*>))+import           Control.Monad        (mzero, sequence)+import           Data.Aeson+import qualified Data.ByteString.Lazy as B+import qualified Data.Map             as M+import           Data.Text.Lazy       (Text)+import qualified Data.Text.Lazy       as L+import           Data.Tree+import           Paths_eros+import           System.Exit+import           Text.Eros.Phrase++class Phraselist t where+  phraselistPath :: t -> IO FilePath++-- |A set of 'Phraselist's. Note that this is actually a list, and I'm+-- calling it a "set" for purely lexical purposes.+type PhraselistSet = Phraselist t => [t]++-- |The phraselists in @res/@. Each of these constructors correspond+-- to one of the files+-- <https://github.com/pharpend/eros/tree/master/res/phraselists-pretty here>.+-- +-- Gitlab has a terrible interface, so I won't provide links to each+-- one of them.+data ErosList = Chat+              | Conspiracy+              | DrugAdvocacy+              | Forums+              | Gambling+              | Games+              | Gore+              | IdTheft+              | IllegalDrugs+              | Intolerance+              | LegalDrugs+              | Malware+              | Music+              | News+              | Nudism+              | Peer2Peer+              | Personals+              | Pornography+              | Proxies+              | SecretSocieties+              | SelfLabeling+              | Sport+              | Translation+              | UpstreamFilter+              | Violence+              | WarezHacking+              | Weapons+              | Webmail++instance Eq ErosList where+  (==) Chat Chat = True+  (==) Conspiracy Conspiracy = True+  (==) DrugAdvocacy DrugAdvocacy = True+  (==) Forums Forums = True+  (==) Gambling Gambling = True+  (==) Games Games = True+  (==) Gore Gore = True+  (==) IdTheft IdTheft = True+  (==) IllegalDrugs IllegalDrugs = True+  (==) Intolerance Intolerance = True+  (==) LegalDrugs LegalDrugs = True+  (==) Malware Malware = True+  (==) Music Music = True+  (==) News News = True+  (==) Nudism Nudism = True+  (==) Peer2Peer Peer2Peer = True+  (==) Personals Personals = True+  (==) Pornography Pornography = True+  (==) Proxies Proxies = True+  (==) SecretSocieties SecretSocieties = True+  (==) SelfLabeling SelfLabeling = True+  (==) Sport Sport = True+  (==) Translation Translation = True+  (==) UpstreamFilter UpstreamFilter = True+  (==) Violence Violence = True+  (==) WarezHacking WarezHacking = True+  (==) Weapons Weapons = True+  (==) Webmail Webmail = True+  (==) Chat _ = False+  (==) Conspiracy _ = False+  (==) DrugAdvocacy _ = False+  (==) Forums _ = False+  (==) Gambling _ = False+  (==) Games _ = False+  (==) Gore _ = False+  (==) IdTheft _ = False+  (==) IllegalDrugs _ = False+  (==) Intolerance _ = False+  (==) LegalDrugs _ = False+  (==) Malware _ = False+  (==) Music _ = False+  (==) News _ = False+  (==) Nudism _ = False+  (==) Peer2Peer _ = False+  (==) Personals _ = False+  (==) Pornography _ = False+  (==) Proxies _ = False+  (==) SecretSocieties _ = False+  (==) SelfLabeling _ = False+  (==) Sport _ = False+  (==) Translation _ = False+  (==) UpstreamFilter _ = False+  (==) Violence _ = False+  (==) WarezHacking _ = False+  (==) Weapons _ = False+  (==) Webmail _ = False++-- |A list of phraselists we provide.+erosLists :: [ErosList]+erosLists = [ Chat+            , Conspiracy+            , DrugAdvocacy+            , Forums+            , Gambling+            , Games+            , Gore+            , IdTheft+            , IllegalDrugs+            , Intolerance+            , LegalDrugs+            , Malware+            , Music+            , News+            , Nudism+            , Peer2Peer+            , Personals+            , Pornography+            , Proxies+            , SecretSocieties+            , SelfLabeling+            , Sport+            , Translation+            , UpstreamFilter+            , Violence+            , WarezHacking+            , Weapons+            , Webmail+            ]++-- |A list of the paths to the phraselists we provide.+erosListPaths :: IO [FilePath]+erosListPaths = mapM phraselistPath erosLists++erosListNames :: [L.Text]+erosListNames = [ "chat"+                , "conspiracy"+                , "drug-advocacy"+                , "forums"+                , "gambling"+                , "games"+                , "gore"+                , "id-theft"+                , "illegal-drugs"+                , "intolerance"+                , "legal-drugs"+                , "malware"+                , "music"+                , "news"+                , "nudism"+                , "peer2peer"+                , "personals"+                , "pornography"+                , "proxies"+                , "secret-societies"+                , "self-labeling"+                , "sport"+                , "translation"+                , "upstream-filter"+                , "violence"+                , "warez-hacking"+                , "weapons"+                , "webmail"+                ]++-- |You can't really order the lists, so we won't use 'M.Map'+erosListNamePairs :: [(ErosList, L.Text)]+erosListNamePairs = zip erosLists erosListNames++erosNameByList :: ErosList -> Maybe L.Text+erosNameByList key = lookup key erosListNamePairs++erosNameListMap :: M.Map L.Text ErosList+erosNameListMap = M.fromList $ zip erosListNames erosLists++erosListByName :: L.Text -> Maybe ErosList+erosListByName key = M.lookup key erosNameListMap ++-- These are the data paths for the various PhraseLists+instance Phraselist ErosList where+  phraselistPath Chat            = getDataFileName "res/phraselists-ugly/chat.json"+  phraselistPath Conspiracy      = getDataFileName "res/phraselists-ugly/conspiracy.json"+  phraselistPath DrugAdvocacy    = getDataFileName "res/phraselists-ugly/drug-advocacy.json"+  phraselistPath Forums          = getDataFileName "res/phraselists-ugly/forums.json"+  phraselistPath Gambling        = getDataFileName "res/phraselists-ugly/gambling.json"+  phraselistPath Games           = getDataFileName "res/phraselists-ugly/games.json"+  phraselistPath Gore            = getDataFileName "res/phraselists-ugly/gore.json"+  phraselistPath IdTheft         = getDataFileName "res/phraselists-ugly/id-theft.json"+  phraselistPath IllegalDrugs    = getDataFileName "res/phraselists-ugly/illegal-drugs.json"+  phraselistPath Intolerance     = getDataFileName "res/phraselists-ugly/intolerance.json"+  phraselistPath LegalDrugs      = getDataFileName "res/phraselists-ugly/legal-drugs.json"+  phraselistPath Malware         = getDataFileName "res/phraselists-ugly/malware.json"+  phraselistPath Music           = getDataFileName "res/phraselists-ugly/music.json"+  phraselistPath News            = getDataFileName "res/phraselists-ugly/news.json"+  phraselistPath Nudism          = getDataFileName "res/phraselists-ugly/nudism.json"+  phraselistPath Peer2Peer       = getDataFileName "res/phraselists-ugly/peer2peer.json"+  phraselistPath Personals       = getDataFileName "res/phraselists-ugly/personals.json"+  phraselistPath Pornography     = getDataFileName "res/phraselists-ugly/pornography.json"+  phraselistPath Proxies         = getDataFileName "res/phraselists-ugly/proxies.json"+  phraselistPath SecretSocieties = getDataFileName "res/phraselists-ugly/secret-societies.json"+  phraselistPath SelfLabeling    = getDataFileName "res/phraselists-ugly/self-labeling.json"+  phraselistPath Sport           = getDataFileName "res/phraselists-ugly/sport.json"+  phraselistPath Translation     = getDataFileName "res/phraselists-ugly/translation.json"+  phraselistPath UpstreamFilter  = getDataFileName "res/phraselists-ugly/upstream-filter.json"+  phraselistPath Violence        = getDataFileName "res/phraselists-ugly/violence.json"+  phraselistPath WarezHacking    = getDataFileName "res/phraselists-ugly/warez-hacking.json"+  phraselistPath Weapons         = getDataFileName "res/phraselists-ugly/weapons.json"+  phraselistPath Webmail         = getDataFileName "res/phraselists-ugly/webmail.json"++-- |Placeholder type used to read JSON. The JSON schema (currently, at+-- least) is such that one needs this type to read the JSON. You can+-- use 'fromPAT' to convert this type into a 'PhraseTree'+data PhraseAlmostTree = PhraseAlmostTree { patPhrase :: Text+                                         , patScore  :: Int+                                         , patForest :: [PhraseAlmostTree]+                                         }+  deriving (Show, Read)++-- |Alias for 'PhraseAlmostTree'+type PAT = PhraseAlmostTree++-- |You can read the+-- <https://raw.githubusercontent.com/pharpend/eros/master/res/phraselist-schema.json JSON schema>+-- to see how this works.+instance FromJSON PAT where+  parseJSON (Object v) = PhraseAlmostTree+    <$> v .: "phrase"+    <*> v .: "score"+    <*> v .: "forest"+  parseJSON _          = fail "Object not a PhraseAlmostTree."++-- |Convert a 'PAT' into a 'PhraseTree'.+fromPAT :: PAT -> PhraseTree+fromPAT (PhraseAlmostTree p s f) = Node (Phrase p s) $ map fromPAT f++-- |I figure some people like to type a lot.+fromPhraseAlmostTree :: PAT -> PhraseTree+fromPhraseAlmostTree = fromPAT++-- |Read a 'Phraselist', marshal it into a 'PhraseForest'.+readPhraselist :: Phraselist t => t -> IO PhraseForest+readPhraselist elist = do+  lpath <- phraselistPath elist+  ltext <- B.readFile lpath+  let ljson = (eitherDecode ltext) :: Either String [PAT]+  case ljson of+    Left msg   -> fail msg+    Right pats -> return $ map fromPAT pats++-- |Alias for 'readPhraselist'+loadPhraselist :: Phraselist t => t -> IO PhraseForest+loadPhraselist = readPhraselist++-- |Alias for 'readPhraselist'+readPhraseFile :: Phraselist t => t -> IO PhraseForest+readPhraseFile = readPhraselist++-- |Alias for 'readPhraselist'+loadPhraseFile :: Phraselist t => t -> IO PhraseForest+loadPhraseFile = readPhraselist++-- |Alias for 'readPhraselist'+readPhraseForest :: Phraselist t => t -> IO PhraseForest+readPhraseForest = readPhraselist++-- |Alias for 'readPhraselist'+loadPhraseForest :: Phraselist t => t -> IO PhraseForest+loadPhraseForest = readPhraselist++-- |Load a 'Phraselist' directly into a 'PhraseMap'+readPhraseMap :: Phraselist t => t -> IO PhraseMap+readPhraseMap plist = fmap mkMap $ readPhraselist plist++-- |Alias for 'readPhraseMap'+loadPhraseMap :: Phraselist t => t -> IO PhraseMap+loadPhraseMap = readPhraseMap