Haram detector

This commit is contained in:
Lawrence Liu 2024-04-03 19:59:53 -07:00
parent a71199b513
commit 3e71a0cee9
14 changed files with 1577 additions and 13 deletions

4
AUTOLOG Normal file
View File

@ -0,0 +1,4 @@
/home/lawrence/chatbot
Tue 02 Apr 2024 12:32:08 AM PDT
lawrence
1

0
admin.txt Normal file
View File

540
catlist.txt Normal file
View File

@ -0,0 +1,540 @@
6992 lolicon
3755 sole female
3687 sole male
2647 stockings
2276 schoolgirl uniform
2092 group
2020 nakadashi
1871 glasses
1856 incest
1723 anal
1597 blowjob
1448 sister
1350 mosaic censorship
1201 defloration
1190 shotacon
1105 multi-work series
1064 anthology
1045 full color
997 rape
984 x-ray
976 twintails
867 swimsuit
867 dark skin
837 ffm threesome
836 dilf
728 bondage
712 bbm
688 sex toys
642 tanlines
638 ahegao
616 teacher
613 double penetration
611 bikini
586 impregnation
534 kemonomimi
504 pantyhose
502 ponytail
501 footjob
489 femdom
481 catgirl
466 tankoubon
451 yuri
436 yaoi
421 collar
398 prostitution
388 unusual pupils
361 maid
355 males only
354 mmf threesome
352 mind control
343 demon girl
341 school swimsuit
338 masturbation
330 oppai loli
329 urination
322 crossdressing
320 uncensored
319 daughter
318 randoseru
318 handjob
316 netorare
296 condom
283 full censorship
282 schoolboy uniform
281 big breasts
273 small breasts
271 tail
267 futanari
265 drugs
263 mind break
261 harem
260 tomgirl
260 exhibitionism
260 big penis
258 kimono
253 sleeping
243 females only
240 sweating
239 lingerie
237 filming
226 fingering
222 tentacles
222 cunnilingus
219 bloomers
218 pregnant
215 elf
214 stomach deformation
207 deepthroat
206 tomboy
192 garter belt
185 bunny girl
183 horns
181 virginity
175 blindfold
169 paizuri
169 inseki
166 kissing
154 bike shorts
152 muscle
151 blackmail
149 cheating
144 story arc
142 sundress
142 fox girl
137 beauty mark
131 bald
131 artbook
130 wings
129 gag
124 replaced
120 rimjob
116 cervix penetration
116 bukkake
115 gloves
114 tail plug
110 niece
109 leotard
109 crotch tattoo
108 hotpants
107 gender bender
104 drunk
103 wolf girl
101 monster girl
101 gokkun
101 cheerleader
98 lactation
92 military
87 tutor
87 milf
85 tracksuit
85 magical girl
83 thigh high boots
81 shimapan
80 miniguy
80 miko
79 oni
77 squirting
77 inflation
77 asphyxiation
75 vampire
75 snuff
75 catboy
74 twins
73 slave
72 urethra insertion
72 hair buns
70 apron
68 sumata
68 piss drinking
68 "null"
67 eyepatch
65 gyaru
65 cosplaying
63 dog girl
61 tribadism
60 unbirth
60 christmas
58 anal intercourse
57 leg lock
57 chikan
56 ghost
55 spanking
55 old man
54 bisexual
53 scat
53 ryona
53 masked face
53 human pet
53 hidden sex
53 business suit
52 smegma
52 shibari
52 monster
52 hairy
52 chloroform
51 soushuuhen
49 scanmark
49 no penetration
49 already uploaded
48 orgasm denial
46 possession
46 incomplete
46 facesitting
45 piercing
45 blood
44 nurse
44 foot licking
42 manga
42 inverted nipples
42 enema
42 bestiality
41 cousin
41 chinese dress
41 birth
40 voyeurism
40 nun
40 age regression
39 leash
39 facial hair
39 dickgirl on dickgirl
39 amputee
38 onahole
38 demon
38 bodysuit
36 ball sucking
35 prostate massage
34 very long hair
34 smell
34 diaper
33 vomit
33 tiara
33 shrinking
32 guro
32 giantess
31 tickling
31 dick growth
31 corruption
30 vore
30 solo action
30 doujinshi
29 pegging
29 mermaid
29 kiyomiya ryou
28 waitress
28 triple penetration
28 strap-on king
28 mother
27 humiliation
27 coach
27 cbt
26 chastity belt
25 robot
25 lab coat
25 dougi
25 angel
24 thick eyebrows
24 shimaidon
24 scar
24 emotionless sex
24 domination loss
24 dickgirl on male
24 breast feeding
23 witch
23 vaginal sticker
23 long tongue
23 gothic lolita
23 freckles
23 clothed female nude male
23 bride
23 big ass
23 bbw
22 underwater
22 stuck in wall
22 lizard girl
22 frottage
22 forbidden content
22 focus anal
21 sole dickgirl
21 eyemask
21 double vaginal
21 brother
20 yandere
20 torture
20 oil
20 layer cake
20 josou seme
20 cum swap
20 butler
20 age progression
19 poor grammar
19 hairjob
19 body swap
19 armpit sex
18 huge penis
18 double blowjob
17 wet clothes
17 time stop
17 pantyjob
17 mecha girl
17 large insertions
17 goudoushi
17 cowgirl
17 bdsm
17 bandages
16 takuji
16 swinging
16 sunglasses
16 male on dickgirl
16 invisible
16 focus blowjob
16 dog
16 corset
15 transformation
15 prolapse
15 pasties
15 heterochromia
15 fisting
14 zombie
14 petplay
14 fundoshi
14 eggs
14 cumflation
13 sample
13 public use
13 policewoman
13 nudity only
3 low lolicon
13 insect
13 gymshorts
13 gyaru-oh
13 compilation
13 bandaid
12 unusual teeth
12 tall girl
12 shared senses
12 pixie cut
12 oyakodon
12 non-h
12 latex
12 fishnets
12 feminization
11 tall man
11 school gym uniform
11 saliva
11 raccoon girl
11 machine
11 drill hair
10 tailjob
10 shemale
10 selfcest
10 mesuiki
10 all the way through
9 vtuber
9 stewardess
9 slime
9 phimosis
9 parasite
9 minigirl
9 low shotacon
9 handicapped
9 gaping
9 double anal
9 clothed male nude female
9 brain fuck
9 armpit licking
8 watermarked
8 pig man
8 pig
8 multiple penises
8 mtf threesome
8 menstruation
8 grandmother
8 eye-covering bang
8 bunny boy
8 breast expansion
8 blind
7 worm
7 tights
7 smoking
7 pirate
7 out of order
7 nijisanji
7 metal armor
7 low bestiality
7 kunoichi
7 huge breasts
7 father
7 fairy
7 clothed paizuri
7 autofellatio
6 ziggurat
6 kindergarten uniform
6 hood
6 granddaughter
6 glory hole
6 dragon
6 dark sclera
6 clone
6 cannibalism
6 aunt
6 assjob
6 anal birth
5 wolf boy
5 uzuki kou
5 ttm threesome
5 ttf threesome
5 squirrel girl
5 squid girl
5 snake girl
5 small penis
5 omorashi
5 multimouth blowjob
5 mouse girl
5 horse girl
5 ear fuck
5 dickgirls only
5 crown
5 body writing
5 blowjob face
4 uncle
4 syringe
4 speculum
4 mouth mask
4 forced exposure
4 clamp
4 catfight
4 body painting
4 body modification
4 big nipples
4 big lips
4 big clit
4 anorexic
4 aji ponntarou
4 abortion
3 wrestling
3 wormhole
3 widow
3 whip
3 stirrup legwear
3 soredemo ayumu wa yosetekuru
3 slime girl
3 shaved head
3 scrotal lingerie
3 redraw
3 pillory
3 phone sex
3 multiple paizuri
3 monkey
3 missing cover
3 milk tissue girl
3 large tattoo
3 infantilism
3 imageset
3 horse cock
3 horse
3 harpy
3 gorilla
3 goblin
3 full body tattoo
3 first person perspective
3 farting
3 cuntboy
3 big balls
3 analphagia
2 widower
2 tuna empire
2 table masturbation
2 spider girl
2 sarashi
2 rough grammar
2 priest
2 nose hook
2 nipple fuck
2 multiple orgasms
2 multipanel sequence
2 melonbooks
2 makeup
2 leonard 16 sei
2 konechi
2 insect girl
2 human cattle
2 harness
2 gender change
2 furry
2 forniphilia
2 fff threesome
2 exposed clothing
2 dog boy
2 doctor
2 cum in eye
2 cum bath
2 coprophagia
2 closed eyes
2 bodystocking
2 artistcg
2 alien
2 absorption
2 ""
1 wooden horse
1 weight gain
1 waiter
1 variant set
1 unusual insertions
1 triple vaginal
1 tooth brushing
1 tiger
1 ssbbm
1 sockjob
1 snake
1 skinsuit
1 sketch lines
1 sheep girl
1 seisha ryuso
1 rough translation
1 race queen
1 prehensile hair
1 policeman
1 plant girl
1 oruca
1 orc
1 onanism
1 nude only
1 nishimura hanten
1 nipple expansion
1 mute
1 mottsuo
1 moral degeneration
1 milking
1 midget
1 maruko rondo
1 luini antonio
1 low scat
1 living clothes
1 kugami annin
1 kigurumi pajama
1 kakunini
1 kage mochizuki
1 kaduki todaemon
1 horse boy
1 hiropon
1 headless
1 hairy armpits
1 hair bun
1 fox boy
1 fox
1 foot insertion
1 fantia
1 electric shocks
1 defaced
1 dark nipples
1 dalton
1 cockslapping
1 cock ring
1 chino
1 centaur
1 bujidearu
1 big areolae
1 arekishi raiho
1 animated
1 alien girl

BIN
chatbot.db Normal file

Binary file not shown.

Binary file not shown.

View File

@ -5,53 +5,337 @@ import subprocess
import time
import asyncio
import os
#from threading import Timer
import re
from unidecode import unidecode
import sqlite3
import random
def cleanString(mystr):
mystr3 = unidecode(mystr)
mystr2 = ''.join(letter for letter in mystr3 if (letter.isalnum() or letter==' '))
return ' '+mystr2+' '
async def delMsg(msg):
await asyncio.sleep(10)
await asyncio.sleep(1)
await msg.delete()
###config stuff
#config stuff
load_dotenv()
debug=False
client = discord.Client()
"""
##init model
tokenizer, model = load_tokenizer_and_model()
print("Model Loaded")
###init chatbot_history
#lazy way rn, may change latter to record and load back
chat_histories={}
"""
serious_channels = [974553346591576105,927849858025529474, 972963507916128297]
con = sqlite3.connect("chatbot.db")
cur = con.cursor()
haram_users = []
admin = [757788221877911613]
sexWords = []
haramUser = []
haramTwo = []
lastHaram = 0
f = open("haramwords.txt", "r")
for x in f:
sexWords.append(x.replace("\n", ""))
f.close()
f = open("haramuser.txt", "r")
for x in f:
haramUser.append(x.replace("\n", ""))
f.close()
f = open("haramtwo.txt", "r")
for x in f:
haramTwo.append(x.replace("\n", ""))
f.close()
sexRegex = []
f = open("haramregex.txt", "r")
for x in f:
sexRegex.append(x.replace("\n", ""))
f.close()
sisRegex = []
f = open("haramsis.txt", "r")
for x in f:
sisRegex.append(x.replace("\n", ""))
f.close()
f = open("catlist.txt", "r")
lines = f.readlines()
def dellast(filename):
with open(filename, "r+", encoding = "utf-8") as file:
file.seek(0, os.SEEK_END)
pos = file.tell() - 1
while pos > 0 and file.read(1) != "\n":
pos -= 1
file.seek(pos, os.SEEK_SET)
if pos > 0:
file.seek(pos, os.SEEK_SET)
file.truncate()
async def getUsername(userid):
res = cur.execute(f"SELECT username FROM totals WHERE id={userid}").fetchone()
if (res is None or res[0] is None or res[0]==""):
try:
user = await client.fetch_user(userid)
except:
#user doesn't exist
return None
if (res is None):
cur.execute(f"INSERT INTO totals VALUES({userid}, 0,\"{user.name}\")")
else:
cur.execute(f"UPDATE totals SET username=\"{user.name}\" WHERE id={userid}")
con.commit()
return user.name
else:
return res[0]
def increment(userid, word):
res = cur.execute(f"SELECT count FROM totals WHERE id={userid}").fetchone()
if (res is None):
cur.execute(f"""INSERT INTO totals
VALUES ({userid}, 1, "", ?)""", (word,))
else:
cur.execute(f"UPDATE totals SET count={res[0]+1}, lastharam = ? WHERE id={userid}", (word,))
con.commit()
@client.event
async def on_ready():
print('We have logged in as {0.user}'.format(client))
@client.event
async def on_message(message):
print(chat_histories)
async def addItem(message, wordlist, wordfile,lastid):
global lastHaram
if (not "\"" in message.content.lower()):
await message.reply("Wrong syntax - word must be in quotes")
return
word = message.content.lower().split("\"")[1]
if (word in wordlist or (word+" ") in wordlist or (" "+word) in wordlist or (" "+word+" ") in wordlist):
await message.reply("Already in DB")
return
else:
wordlist.append(word)
f=open(wordfile, "a")
f.write(word+"\n")
f.close()
lastHaram = lastid
await message.reply("Added: \""+word+"\"")
@client.event
async def on_message(message):
global lastHaram
#print(chat_histories)
if (message.author.id in admin and message.content.lower()[:9] == "!haramadd"):
await addItem(message, sexWords, "haramwords.txt", 0)
return
if (message.author.id in admin and message.content.lower()[:9] == "!haramreg"):
await addItem(message, sexRegex, "haramregex.txt", 1)
return
if (message.content == "!haramnum"):
await message.reply("Haram list: "+str(len(sexWords))+", Haram regex: "+str(len(sexRegex))+ ", Haram sis: "+str(len(sisRegex)))
return
if (message.author.id in admin and message.content.lower()[:9] == "!haramsis"):
await addItem(message, sisRegex, "haramsis.txt", 2)
return
if (message.author.id in admin and message.content.lower()[:9] == "!haramusr"):
await addItem(message, haramUser, "haramuser.txt", 3)
return
if (message.author.id in admin and message.content.lower()[:9] == "!haramtwo"):
await addItem(message, haramTwo, "haramtwo.txt", 4)
return
if (message.content.lower()[:10] == "!haramrand"):
await message.reply(random.choice(lines))
return
if(message.author.id in admin and message.content.lower() == "!haramdel"):
if (lastHaram == 0):
dellast("haramwords.txt")
await message.reply("Deleted: "+sexWords.pop())
if (lastHaram == 1):
dellast("haramreg.txt")
await message.reply("Deleted: "+sexRegex.pop())
if (lastHaram == 2):
dellast("haramsis.txt")
await message.reply("Deleted: "+sisRegex.pop())
if (lastHaram == 3):
dellast("haramuser.txt")
await message.reply("Deleted: "+haramUser.pop())
if (lastHaram == 4):
dellast("haramtwo.txt")
await message.reply("Deleted: "+haramTwo.pop())
return
if (message.content.lower()[:10] == "!haramlist"):
if (not "\"" in message.content.lower()):
msg = await message.reply("Bad syntax, no quotes")
await asyncio.sleep(3)
await msg.delete()
return
word = message.content.lower().split("\"")[1]
if (not "," in word):
msg = await message.reply("Bad syntax, expected list number + comma + start index")
await asyncio.sleep(3)
await msg.delete()
return
list_num = word.split(",")[0].strip()
list_ind = word.split(",")[1].strip()
if not(list_num.isdigit() and list_ind.isdigit()):
msg = await message.reply("Not integers")
await asyncio.sleep(3)
await msg.delete()
return
list_num = int(list_num)
list_ind = int(list_ind)
titles = ["Haram words", "Haram regex", "Haram sis"]
if (list_num < 0 or list_num > 2):
msg = await message.reply ("Bad list")
await asyncio.sleep(3)
await msg.delete()
return
reply = "Here is a list of "+str(titles[list_num]) + " starting from "+str(list_ind)+":\n"
msg = 0
if (list_num == 0):
for i in range(list_ind, list_ind + 10):
if (i<0 or i >= len(sexWords)):
continue
reply += str(i)+". \""+sexWords[i]+"\"\n"
msg = await message.reply(reply)
elif (list_num == 1):
for i in range(list_ind, list_ind + 10):
if (i<0 or i >= len(sexRegex)):
continue
reply += str(i)+". \""+sexRegex[i]+"\"\n"
msg = await message.reply(reply)
elif (list_num == 2):
for i in range(list_ind, list_ind + 10):
if (i<0 or i >= len(sisRegex)):
continue
reply += str(i)+". \""+sisRegex[i]+"\"\n"
msg = await message.reply(reply)
else:
msg = await message.reply("Bad list")
await asyncio.sleep(3)
await msg.delete()
return
if (message.content.lower()[:11] == "!haramcount"):
m = message.content
i = str(message.author.id)
if ("\"" in m):
i = m.split("\"")[1]
if i.isdigit():
res = cur.execute(f"SELECT count FROM totals WHERE id={i}").fetchone()
total = 0
if not(res is None):
total = res[0]
usern = await getUsername(i)
if (usern is None):
await message.reply("Invalid ID")
return
await message.reply(f"User {usern} has said {total} haram things")
return
await message.reply("Syntax Error, put user ID in quotes")
if (message.content.lower()[:10] == "!haramlast"):
m = message.content
i = str(message.author.id)
if ("\"" in m):
i = m.split("\"")[1]
if i.isdigit():
res = cur.execute(f"SELECT lastharam FROM totals WHERE id={i}").fetchone()
lh = ""
if not(res is None):
lh = res[0]
usern = await getUsername(i)
if (usern is None):
await message.reply("Invalid ID")
return
await message.reply(f"User {usern} has last said: {lh}")
return
await message.reply("Syntax Error, put user ID in quotes")
if (message.content == "!haramtop"):
res = cur.execute("SELECT id, count FROM totals ORDER BY count DESC LIMIT 10").fetchall()
msg = "Most haram users:\n"
for i in res:
user = await getUsername(i[0])
if (user is None):
continue
msg = msg + f"{user}: {i[1]} harams\n"
await message.reply(msg)
author = message.author.id
cleanedStr = cleanString(message.content.lower())
#stop it from fucking around if it looking at its own message
if message.author == client.user:
return
if (message.channel.id in serious_channels):
return
#1984 feature could be added here ;)
for word in sexWords:
if (word in message.content.lower() or word in cleanedStr):
msg = await message.reply("<:gogetmarried:1204950895217999984>")
increment(message.author.id, word)
await asyncio.sleep(3)
await msg.delete()
return
for reg in sexRegex:
if (re.search(reg," "+ message.content.lower()+" ") or message.author.id in haram_users):
msg = await message.reply("<:gogetmarried:1204950895217999984>")
increment(message.author.id, "Regex: "+reg)
await asyncio.sleep(3)
await msg.delete()
return
for reg in sisRegex:
if (re.search(" sis.*"+reg," "+ message.content.lower()+" ") or re.search(reg+".* sis", " "+message.content.lower()+" ")):
msg = await message.reply("<:gogetmarried:1204950895217999984>")
increment(message.author.id, "Sis: "+reg)
await asyncio.sleep(3)
await msg.delete()
return
if (str(message.author.id) in haramUser):
for reg in haramTwo:
if (re.search(reg," "+message.content.lower()+" ")):
increment(message.author.id, "Haram2: "+reg)
msg = await message.reply("<:gogetmarried:1204950895217999984>")
await asyncio.sleep(3)
await msg.delete()
return
if (message.content.lower() == "go get married"):
await message.reply("<:halal:1204949791717457940>")
return
if ("pipi" in message.content.lower()):
msg = await message.channel.send("""Are you kidding ??? What the \\*\\*\\*\\* are you talking about man ? You are a biggest looser i ever seen in my life ! You was doing PIPI in your pampers when i was beating players much more stronger then you! You are not proffesional, because proffesionals knew how to lose and congratulate opponents, you are like a girl crying after i beat you! Be brave, be honest to yourself and stop this trush talkings!!! Everybody know that i am very good blitz player, i can win anyone in the world in single game! And \"w\"esley \"s\"o is nobody for me, just a player who are crying every single time when loosing, ( remember what you say about Firouzja ) !!! Stop playing with my name, i deserve to have a good name during whole my chess carrier, I am Officially inviting you to OTB blitz match with the Prize fund! Both of us will invest 5000$ and winner takes it all!
I suggest all other people who's intrested in this situation, just take a look at my results in 2016 and 2017 Blitz World championships, and that should be enough... No need to listen for every crying babe, Tigran Petrosyan is always play Fair ! And if someone will continue Officially talk about me like that, we will meet in Court! God bless with true! True will never die ! Liers will kicked off...""")
await asyncio.sleep(10)
await asyncio.sleep(0.5)
await msg.delete()
return
if ("fortune" in message.content.lower() and message.channel.id == 912240638664257555):
fort = subprocess.run(["fortune"], stdout=subprocess.PIPE, text=True)
await message.channel.send(fort.stdout)
if ("alpine" in message.content.lower()):
msg = await message.channel.send('''"I use Linux as my operating system," I state proudly to the unkempt, bearded man. He swivels around in his desk chair with a devilish gleam in his eyes, ready to mansplain with extreme precision. "Actually", he says with a grin, "Linux is just the kernel. You use GNU+Linux!' I don\'t miss a beat and reply with a smirk, "I use Alpine, a distro that doesn\'t include the GNU coreutils, or any other GNU code. It\'s Linux, but it\'s not GNU+Linux." The smile quickly drops from the man\'s face. His body begins convulsing and he foams at the mouth and drops to the floor with a sickly thud. As he writhes around he screams "I-IT WAS COMPILED WITH GCC! THAT MEANS IT\'S STILL GNU!" Coolly, I reply "If windows was compiled with gcc, would that make it GNU?" I interrupt his response with "-and work is being made on the kernel to make it more compiler-agnostic. Even you were correct, you won\'t be for long." With a sickly wheeze, the last of the man\'s life is ejected from his body. He lies on the floor, cold and limp. I\'ve womansplained him to death.''')
await asyncio.sleep(0.5)
await msg.delete()
return
if ("fortune" in message.content.lower()):
fort = subprocess.run(["fortune" , "-a"], stdout=subprocess.PIPE, text=True)
await message.channel.send("```\n"+fort.stdout+"```")
return
if ("asciiart" in message.content.lower()):
fort = subprocess.run(["fortune", "mario.arteascii"], stdout=subprocess.PIPE, text=True)
#cow = subprocess.run(["cowthink", "-n"], stdin=fort.stdout, stdout=subprocess.PIPE, text=True)
await message.channel.send("```\n"+fort.stdout.replace("`", "\'")+"```")
return
# rms copypasta
if ("linux" in message.content.lower() and "gnu/linux" not in message.content.lower() and "gnu+linux" not in message.content.lower() and "ucla.edu" not in message.content.lower()):
@ -86,7 +370,7 @@ There really is a Linux, and these people are using it, but it is just a part of
if not message.content.startswith('!chatbot'):
#if it isn't stop (return)
return
"""
#get string
message_string=message.content[9:].lower()
#actually important message things
@ -112,5 +396,5 @@ There really is a Linux, and these people are using it, but it is just a part of
chat_histories[author],message_string)
await message.channel.send(chatbotOutput)
"""
client.run(os.environ.get('TOKEN'))

302
haram_bak1.txt Normal file
View File

@ -0,0 +1,302 @@
pussy
cunt
twat
sex
gay
erect
masturb
cbt
cock
penis
cunny
incest
vagina
anus
cum
ejaculat
jack off
jerk off
coom
porn
hentai
shota
doujin
boob
breast
tits
titties
titty
anal
horny
nakadashi
creampie
ass
pron
loli
lesbian
cervix
dick
peg
dildo
butt plug
vibrator
cute and funny
bdsm
uoh
crotch
dtf
twink
tomboy
tomgirl
scat
philia
willy
masochis
sadis
mindbreak
aheago
strap on
strap-on
strapon
tranny
bosom
flat chest
nipple
squirt
milf
hard
dilf
golden shower
boykisser
boysmell
fellatio
bj
blowjob
oral
finger
jizz
sticky white
sticky, white
orgasm
bussy
cuddle
spooning
clitoris
g-spot
gspot
g spot
monkeyspank
spanking the monkey
spank the monkey
beating my meat
beat off
bashing the bishop
beat my meat
bash the bishop
one eyed snake
oneeyed snake
one-eyed snake
mesugaki
osugaki
ballsack
hypnosis
sissy
shag
intercourse
fuck
make love
making love
go to down
went to town
eromanga
bukkake
eroge
yukikaze
hookup
hook up
fornicat
lewd
💢
😭
rape
lascivious
underage
correction need
correction is need
need correct
flat-chest
mommy
daddy
lolita
erotic
belly and chest
chest and belly
get off
got off
nut
libido
lust
unchaste
🍆
🍑
💦
feet
footjob
pomf
marewife
anime
seggs
ya0i
yaoi
boybortion
pregante
pregarnat
preggers
milker
puci
condom
cuck
netorare
cheating
ntr
69
slept with
sleep with
got laid
virgin
fondl
intercourse
blue ball
contraceptive
prostitute
hooker
thot
egirl
e girl
e-girl
onlyfans
stripper
booty
std
sti
threesome
orgy
voyeur
bestial
stripping
hickey
french kiss
frenchkiss
boner
ho
hoe
bitch
kink
smut
furr
edg
goon
jelq
white sticky
white, sticky
cp
do my sis
spread her leg
peenus
fetish
bareback
bbc
cooch
glory hole
wank
netflix and chill
quickie
slut
rusty trombone
teabagg
soaking
balls
give head
suck off
deflorat
yiff
blumpkin
frot
sounding
double penetrat
inseminat
impregnat
handjob
femdom
scrotum
penile
yuri
prostitut
woody
wet dream
futa
back shots
trap
harem
shenis
clit
deepthroat
paizuri
rimjob
camel toe
cameltoe
gokkun
lactat
urethra
facesit
onahole
vulva
teat
estrus
zoophil
whore
thrust
throb
horni
genital
phall
dominatrix
submissive
breedable
imouto
blacked
brazzer
mindgeek
brony
creaming
rule 34
bangbros
redtube
xhamster
xvideo
butch
femme
bimbo
dommy
jailbait
molest
grop
deflower
degown
undress
derobe
disrobe
disrob
derob
chok
fisting
doggy
arous
intima
boni
coitus
fap
busty
lingerie
panties
penetrat

11
haram_bak2.txt Normal file
View File

@ -0,0 +1,11 @@
u+o+h
lick.*kitt
kitt.*lick
[a@][s\$][s\$]
fu?[ck ]*bo[yi]
clap.* cheek
well.?endowed
c[ao]m[e(ing)].?in
coming.?in
c[ao]m(e|ing) .* (in|on|over |everywhere)
ben(t|d|ding) over

39
haram_bak3.txt Normal file
View File

@ -0,0 +1,39 @@
pound
bang
spread
hot
wet
procreat
blow
touch
caress
fondle
kiss
breed
curve
supple
tight
curvy
nubile
naughty
stroke
snuggl
choke
straddle
straddl
meat
bust
suck
tongue
tongui
cuddl
manhandl
feel
smell
cloth
freak
correct
penetrate
breach
pentest
spank

14
haramregex.txt Normal file
View File

@ -0,0 +1,14 @@
u+o+h
lick.*kitt
kitt.*lick
[a@][s\$][s\$]
fu?[ck ]*bo[yi]
clap.* cheek
well.?endowed
c[ao]m[e(ing)].?in
coming.?in
c[ao]m(e|ing) .* (in|on|over |everywhere)
ben(t|d|ding) over
(s|5)(e|3)x
tit[stiy]
rule.?34

41
haramsis.txt Normal file
View File

@ -0,0 +1,41 @@
pound
bang
spread
hot
wet
procreat
blow
touch
caress
fondle
kiss
breed
curve
supple
tight
curvy
nubile
naughty
stroke
snuggl
choke
straddle
straddl
meat
bust
suck
tongue
tongui
cuddl
manhandl
feel
smell
cloth
freak
correct
penetrate
breach
pentest
spank
inside
private

2
haramtwo.txt Normal file
View File

@ -0,0 +1,2 @@
sis
hardsibling”siblingtease

3
haramuser.txt Normal file
View File

@ -0,0 +1,3 @@
487785744652566539
615065360961372160
166762831713271817449983218788204569449983218788204569

324
haramwords.txt Normal file
View File

@ -0,0 +1,324 @@
pussy
cunt
twat
sex
gay
erect
masturb
cbt
cock
penis
cunny
incest
vagina
anus
cum
ejaculat
jack off
jerk off
coom
porn
hentai
shota
doujin
boob
breast
anal
horny
nakadashi
creampie
ass
pron
loli
lesbian
cervix
dick
peg
dildo
butt plug
vibrator
cute and funny
bdsm
uoh
crotch
dtf
twink
tomboy
tomgirl
scat
philia
willy
masochis
sadis
mindbreak
aheago
strap on
strap-on
strapon
tranny
bosom
flat chest
nipple
squirt
milf
dilf
golden shower
boykisser
boysmell
fellatio
bj
blowjob
oral
finger
jizz
sticky white
sticky, white
orgasm
bussy
cuddle
spooning
clitoris
g-spot
gspot
g spot
monkeyspank
spanking the monkey
spank the monkey
beating my meat
beat off
bashing the bishop
beat my meat
bash the bishop
one eyed snake
oneeyed snake
one-eyed snake
mesugaki
osugaki
ballsack
hypnosis
sissy
shag
intercourse
fuck
make love
making love
go to town
went to town
eromanga
bukkake
eroge
yukikaze
hookup
hook up
fornicat
lewd
💢
😭
rape
lascivious
underage
correction need
correction is need
need correct
flat-chest
mommy
daddy
lolita
erotic
belly and chest
chest and belly
get off
got off
nut
libido
lust
unchaste
🍆
🍑
💦
feet
footjob
pomf
marewife
anime
seggs
ya0i
yaoi
boybortion
pregante
pregarnat
preggers
milker
puci
condom
cuck
netorare
cheating
ntr
69
slept with
sleep with
got laid
virgin
fondl
intercourse
blue ball
contraceptive
prostitute
hooker
thot
egirl
e girl
e-girl
onlyfans
stripper
booty
std
sti
threesome
orgy
voyeur
bestial
stripping
hickey
french kiss
frenchkiss
boner
ho
hoe
bitch
kink
smut
furr
edg
goon
jelq
white sticky
white, sticky
cp
do my sis
spread her leg
peenus
fetish
bareback
bbc
cooch
glory hole
wank
netflix and chill
quickie
slut
rusty trombone
teabagg
soaking
balls
give head
suck off
deflorat
yiff
blumpkin
frot
sounding
double penetrat
inseminat
impregnat
handjob
femdom
scrotum
penile
yuri
prostitut
woody
wet dream
futa
back shots
trap
harem
shenis
clit
deepthroat
paizuri
rimjob
camel toe
cameltoe
gokkun
lactat
urethra
facesit
onahole
vulva
teat
estrus
zoophil
whore
thrust
throb
horni
genital
phall
dominatrix
submissive
breedable
imouto
blacked
brazzer
mindgeek
brony
creaming
rule 34
bangbros
redtube
xhamster
xvideo
butch
femme
bimbo
dommy
jailbait
molest
grop
deflower
degown
undress
derobe
disrobe
disrob
derob
chok
fisting
doggy
arous
intima
boni
coitus
fap
busty
lingerie
panties
penetrat
tit
bewb
cheese pizza
predator
strog
bjs
privatesmenstr
copula
tsundere vore
puberty
e621
e926
plap
derpybooru
derpibooru
secks
enby
bra
waifu
fursuit
fursona
catboy
boymod
cunnie
cunnilingus
bronie