Spaces:
Running on CPU Upgrade
Running on CPU Upgrade
Upload folder using huggingface_hub
Browse files- app/clean.py +43 -0
- app/pipeline.py +16 -6
- app/profanity/SOURCE.txt +3 -0
- app/profanity/ar.txt +38 -0
- app/profanity/cs.txt +41 -0
- app/profanity/da.txt +20 -0
- app/profanity/de.txt +66 -0
- app/profanity/en.txt +403 -0
- app/profanity/es.txt +68 -0
- app/profanity/fa.txt +45 -0
- app/profanity/fi.txt +130 -0
- app/profanity/fil.txt +14 -0
- app/profanity/fr.txt +91 -0
- app/profanity/hi.txt +119 -0
- app/profanity/hu.txt +96 -0
- app/profanity/it.txt +168 -0
- app/profanity/ja.txt +180 -0
- app/profanity/ko.txt +72 -0
- app/profanity/nl.txt +190 -0
- app/profanity/no.txt +40 -0
- app/profanity/pl.txt +54 -0
- app/profanity/pt.txt +76 -0
- app/profanity/ru.txt +151 -0
- app/profanity/sv.txt +43 -0
- app/profanity/th.txt +31 -0
- app/profanity/tr.txt +142 -0
- app/profanity/zh.txt +319 -0
- app/server.py +16 -3
- app/static/index.html +32 -4
- app/static/privacy.html +4 -1
- app/static/terms.html +6 -2
- docs/LEGAL-COMPLIANCE.md +1 -1
app/clean.py
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"""Clean mode: mask swear words in subtitles/transcripts and leave them out of the voice-over.
|
| 2 |
+
|
| 3 |
+
Required for Teen mode (ages 13-17), optional for adults. Word lists: LDNOOBW (CC BY 4.0), 24 languages,
|
| 4 |
+
see app/profanity/SOURCE.txt. Languages without a list fall back to the English list (many videos mix in
|
| 5 |
+
English slang).
|
| 6 |
+
"""
|
| 7 |
+
from __future__ import annotations
|
| 8 |
+
|
| 9 |
+
import re
|
| 10 |
+
from functools import lru_cache
|
| 11 |
+
from pathlib import Path
|
| 12 |
+
|
| 13 |
+
DIR = Path(__file__).parent / "profanity"
|
| 14 |
+
FILE_FOR = {"tl": "fil", "zh-TW": "zh", "yue": "zh"}
|
| 15 |
+
NO_SPACES = {"zh", "ja", "th", "zh-TW", "yue", "lo", "km", "my"}
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
@lru_cache(maxsize=64)
|
| 19 |
+
def _pattern(lang: str):
|
| 20 |
+
words: set[str] = set()
|
| 21 |
+
for code in {FILE_FOR.get(lang, lang), "en"}:
|
| 22 |
+
f = DIR / f"{code}.txt"
|
| 23 |
+
if f.exists():
|
| 24 |
+
words |= {w.strip().lower() for w in f.read_text(encoding="utf-8").splitlines() if w.strip()}
|
| 25 |
+
if not words:
|
| 26 |
+
return None
|
| 27 |
+
alts = "|".join(re.escape(w) for w in sorted(words, key=len, reverse=True))
|
| 28 |
+
if lang in NO_SPACES:
|
| 29 |
+
return re.compile(f"({alts})", re.I)
|
| 30 |
+
return re.compile(rf"(?<![\w])({alts})(?![\w])", re.I)
|
| 31 |
+
|
| 32 |
+
|
| 33 |
+
def mask(text: str, lang: str) -> str:
|
| 34 |
+
"""'fuck this' -> 'f*** this' (first letter kept so the sentence still reads)."""
|
| 35 |
+
p = _pattern(lang)
|
| 36 |
+
if not p or not text:
|
| 37 |
+
return text
|
| 38 |
+
return p.sub(lambda m: m.group(0)[0] + "*" * (len(m.group(0)) - 1), text)
|
| 39 |
+
|
| 40 |
+
|
| 41 |
+
def for_speech(text: str) -> str:
|
| 42 |
+
"""Drop masked words entirely so the AI voice never says them."""
|
| 43 |
+
return re.sub(r"\s{2,}", " ", re.sub(r"\S\*{2,}\S*", "", text)).strip()
|
app/pipeline.py
CHANGED
|
@@ -212,7 +212,8 @@ def _speech_sample(media: Path, segs: list[dict], out: Path, max_sec: float = 75
|
|
| 212 |
|
| 213 |
|
| 214 |
def dub(media: Path, segs: list[dict], lang: str, out: Path, has_video: bool, duration: float,
|
| 215 |
-
gender: str, voice_engine: str, work: Path, progress: Progress, clone: bool = False
|
|
|
|
| 216 |
parts = work / "voice"
|
| 217 |
parts.mkdir(exist_ok=True)
|
| 218 |
n = max(len(segs), 1)
|
|
@@ -227,7 +228,11 @@ def dub(media: Path, segs: list[dict], lang: str, out: Path, has_video: bool, du
|
|
| 227 |
for k, s in enumerate(segs):
|
| 228 |
progress(f"Voicing line {k + 1} of {len(segs)}", 0.70 + 0.15 * k / n)
|
| 229 |
f = parts / f"{k:04}.mp3"
|
| 230 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 231 |
files.append(f)
|
| 232 |
finally:
|
| 233 |
if voice_id:
|
|
@@ -273,7 +278,8 @@ def dub(media: Path, segs: list[dict], lang: str, out: Path, has_video: bool, du
|
|
| 273 |
track[st:st + len(a)] += a[:len(track) - st]
|
| 274 |
raw = work / "dub.raw"
|
| 275 |
np.clip(track, -32768, 32767).astype(np.int16).tofile(raw)
|
| 276 |
-
|
|
|
|
| 277 |
"[bg][vo]amix=inputs=2:duration=first:normalize=0,alimiter=limit=0.95[a]")
|
| 278 |
cmd = ["ffmpeg", "-y", "-loglevel", "error", "-i", str(media),
|
| 279 |
"-f", "s16le", "-ar", str(SR), "-ac", "1", "-i", str(raw), "-filter_complex", mix]
|
|
@@ -290,7 +296,7 @@ def run(job_dir: Path, source_path: Path | None, url: str | None, target: str,
|
|
| 290 |
source_lang: str | None = None, engine: str = "madlad", outputs: tuple = ("text", "subs", "dub"),
|
| 291 |
quality: str = "fast", gender: str = "Female", voice_engine: str = "edge",
|
| 292 |
max_minutes: float = 0, progress: Progress = lambda m, p: None,
|
| 293 |
-
clone: bool = True, lipsync: bool = False) -> dict:
|
| 294 |
languages.get(target)
|
| 295 |
progress("Getting the media", 0.02)
|
| 296 |
media = fetch_url(url, job_dir) if url else source_path
|
|
@@ -315,10 +321,14 @@ def run(job_dir: Path, source_path: Path | None, url: str | None, target: str,
|
|
| 315 |
for s, t, h in zip(segs, trs, human):
|
| 316 |
s["tr"] = t if h else engines.clean(t)
|
| 317 |
s["human"] = h
|
|
|
|
|
|
|
|
|
|
|
|
|
| 318 |
|
| 319 |
results: dict = {"source_lang": src, "source_name": languages.get(src)["name"],
|
| 320 |
"target_lang": target, "target_name": languages.get(target)["name"],
|
| 321 |
-
"detect_confidence": round(conf, 2), "auto_detected": not source_lang, "engine": engine,
|
| 322 |
"duration": meta["duration"], "has_video": meta["has_video"],
|
| 323 |
"segments": [{"s": round(s["s"], 2), "e": round(s["e"], 2),
|
| 324 |
"original": s["t"], "translated": s["tr"], "human": s["human"]} for s in segs],
|
|
@@ -347,7 +357,7 @@ def run(job_dir: Path, source_path: Path | None, url: str | None, target: str,
|
|
| 347 |
progress("Creating the voice-over", 0.70)
|
| 348 |
name = "voiceover.mp4" if meta["has_video"] else "voiceover.m4a"
|
| 349 |
dub(base, segs, target, job_dir / name, meta["has_video"], meta["duration"],
|
| 350 |
-
gender, voice_engine, job_dir, progress, clone=clone)
|
| 351 |
results["files"]["voiceover"] = name
|
| 352 |
results["voice_cloned"] = clone
|
| 353 |
if lipsync and meta["has_video"] and engines.lipsync_available():
|
|
|
|
| 212 |
|
| 213 |
|
| 214 |
def dub(media: Path, segs: list[dict], lang: str, out: Path, has_video: bool, duration: float,
|
| 215 |
+
gender: str, voice_engine: str, work: Path, progress: Progress, clone: bool = False,
|
| 216 |
+
clean: bool = False) -> None:
|
| 217 |
parts = work / "voice"
|
| 218 |
parts.mkdir(exist_ok=True)
|
| 219 |
n = max(len(segs), 1)
|
|
|
|
| 228 |
for k, s in enumerate(segs):
|
| 229 |
progress(f"Voicing line {k + 1} of {len(segs)}", 0.70 + 0.15 * k / n)
|
| 230 |
f = parts / f"{k:04}.mp3"
|
| 231 |
+
text = s["tr"]
|
| 232 |
+
if clean:
|
| 233 |
+
from . import clean as cl
|
| 234 |
+
text = cl.for_speech(text) or "…"
|
| 235 |
+
engines.speak(text, lang, f, gender=gender, engine=voice_engine, voice_id=voice_id)
|
| 236 |
files.append(f)
|
| 237 |
finally:
|
| 238 |
if voice_id:
|
|
|
|
| 278 |
track[st:st + len(a)] += a[:len(track) - st]
|
| 279 |
raw = work / "dub.raw"
|
| 280 |
np.clip(track, -32768, 32767).astype(np.int16).tofile(raw)
|
| 281 |
+
bg = 0.05 if clean else 0.12 # keep the original speech faint (quieter still in Clean mode)
|
| 282 |
+
mix = (f"[0:a]volume={bg}[bg];[1:a]aresample=48000,volume=1.6[vo];"
|
| 283 |
"[bg][vo]amix=inputs=2:duration=first:normalize=0,alimiter=limit=0.95[a]")
|
| 284 |
cmd = ["ffmpeg", "-y", "-loglevel", "error", "-i", str(media),
|
| 285 |
"-f", "s16le", "-ar", str(SR), "-ac", "1", "-i", str(raw), "-filter_complex", mix]
|
|
|
|
| 296 |
source_lang: str | None = None, engine: str = "madlad", outputs: tuple = ("text", "subs", "dub"),
|
| 297 |
quality: str = "fast", gender: str = "Female", voice_engine: str = "edge",
|
| 298 |
max_minutes: float = 0, progress: Progress = lambda m, p: None,
|
| 299 |
+
clone: bool = True, lipsync: bool = False, clean: bool = False) -> dict:
|
| 300 |
languages.get(target)
|
| 301 |
progress("Getting the media", 0.02)
|
| 302 |
media = fetch_url(url, job_dir) if url else source_path
|
|
|
|
| 321 |
for s, t, h in zip(segs, trs, human):
|
| 322 |
s["tr"] = t if h else engines.clean(t)
|
| 323 |
s["human"] = h
|
| 324 |
+
if clean: # Clean mode (always on for Teen mode): mask swear words everywhere we output text
|
| 325 |
+
from . import clean as cl
|
| 326 |
+
for s in segs:
|
| 327 |
+
s["t"], s["tr"] = cl.mask(s["t"], src), cl.mask(s["tr"], target)
|
| 328 |
|
| 329 |
results: dict = {"source_lang": src, "source_name": languages.get(src)["name"],
|
| 330 |
"target_lang": target, "target_name": languages.get(target)["name"],
|
| 331 |
+
"detect_confidence": round(conf, 2), "auto_detected": not source_lang, "engine": engine, "clean": clean,
|
| 332 |
"duration": meta["duration"], "has_video": meta["has_video"],
|
| 333 |
"segments": [{"s": round(s["s"], 2), "e": round(s["e"], 2),
|
| 334 |
"original": s["t"], "translated": s["tr"], "human": s["human"]} for s in segs],
|
|
|
|
| 357 |
progress("Creating the voice-over", 0.70)
|
| 358 |
name = "voiceover.mp4" if meta["has_video"] else "voiceover.m4a"
|
| 359 |
dub(base, segs, target, job_dir / name, meta["has_video"], meta["duration"],
|
| 360 |
+
gender, voice_engine, job_dir, progress, clone=clone, clean=clean)
|
| 361 |
results["files"]["voiceover"] = name
|
| 362 |
results["voice_cloned"] = clone
|
| 363 |
if lipsync and meta["has_video"] and engines.lipsync_available():
|
app/profanity/SOURCE.txt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Word lists from "List of Dirty, Naughty, Obscene, and Otherwise Bad Words"
|
| 2 |
+
https://github.com/LDNOOBW/List-of-Dirty-Naughty-Obscene-and-Otherwise-Bad-Words
|
| 3 |
+
License: CC BY 4.0 (Shutterstock). Used unmodified for Clean mode masking.
|
app/profanity/ar.txt
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
سكس
|
| 2 |
+
طيز
|
| 3 |
+
شرج
|
| 4 |
+
لعق
|
| 5 |
+
لحس
|
| 6 |
+
مص
|
| 7 |
+
تمص
|
| 8 |
+
بيضان
|
| 9 |
+
ثدي
|
| 10 |
+
بز
|
| 11 |
+
بزاز
|
| 12 |
+
حلمة
|
| 13 |
+
مفلقسة
|
| 14 |
+
بظر
|
| 15 |
+
كس
|
| 16 |
+
فرج
|
| 17 |
+
شهوة
|
| 18 |
+
شاذ
|
| 19 |
+
مبادل
|
| 20 |
+
عاهرة
|
| 21 |
+
جماع
|
| 22 |
+
قضيب
|
| 23 |
+
زب
|
| 24 |
+
لوطي
|
| 25 |
+
لواط
|
| 26 |
+
سحاق
|
| 27 |
+
سحاقية
|
| 28 |
+
اغتصاب
|
| 29 |
+
خنثي
|
| 30 |
+
احتلام
|
| 31 |
+
نيك
|
| 32 |
+
متناك
|
| 33 |
+
متناكة
|
| 34 |
+
شرموطة
|
| 35 |
+
عرص
|
| 36 |
+
خول
|
| 37 |
+
قحبة
|
| 38 |
+
لبوة
|
app/profanity/cs.txt
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
bordel
|
| 2 |
+
buzna
|
| 3 |
+
čumět
|
| 4 |
+
čurák
|
| 5 |
+
debil
|
| 6 |
+
do piče
|
| 7 |
+
do prdele
|
| 8 |
+
dršťka
|
| 9 |
+
držka
|
| 10 |
+
flundra
|
| 11 |
+
hajzl
|
| 12 |
+
hovno
|
| 13 |
+
chcanky
|
| 14 |
+
chuj
|
| 15 |
+
jebat
|
| 16 |
+
kokot
|
| 17 |
+
kokotina
|
| 18 |
+
koňomrd
|
| 19 |
+
kunda
|
| 20 |
+
kurva
|
| 21 |
+
mamrd
|
| 22 |
+
mrdat
|
| 23 |
+
mrdka
|
| 24 |
+
mrdník
|
| 25 |
+
oslošoust
|
| 26 |
+
piča
|
| 27 |
+
píčus
|
| 28 |
+
píchat
|
| 29 |
+
pizda
|
| 30 |
+
prcat
|
| 31 |
+
prdel
|
| 32 |
+
prdelka
|
| 33 |
+
sračka
|
| 34 |
+
srát
|
| 35 |
+
šoustat
|
| 36 |
+
šulin
|
| 37 |
+
vypíčenec
|
| 38 |
+
zkurvit
|
| 39 |
+
zkurvysyn
|
| 40 |
+
zmrd
|
| 41 |
+
žrát
|
app/profanity/da.txt
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
anus
|
| 2 |
+
bøsserøv
|
| 3 |
+
cock
|
| 4 |
+
fisse
|
| 5 |
+
fissehår
|
| 6 |
+
fuck
|
| 7 |
+
hestepik
|
| 8 |
+
kussekryller
|
| 9 |
+
lort
|
| 10 |
+
luder
|
| 11 |
+
pik
|
| 12 |
+
pikhår
|
| 13 |
+
pikslugeri
|
| 14 |
+
piksutteri
|
| 15 |
+
pis
|
| 16 |
+
røv
|
| 17 |
+
røvhul
|
| 18 |
+
røvskæg
|
| 19 |
+
røvspræke
|
| 20 |
+
shit
|
app/profanity/de.txt
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
analritter
|
| 2 |
+
arsch
|
| 3 |
+
arschficker
|
| 4 |
+
arschlecker
|
| 5 |
+
arschloch
|
| 6 |
+
bimbo
|
| 7 |
+
bratze
|
| 8 |
+
bumsen
|
| 9 |
+
bonze
|
| 10 |
+
dödel
|
| 11 |
+
fick
|
| 12 |
+
ficken
|
| 13 |
+
flittchen
|
| 14 |
+
fotze
|
| 15 |
+
fratze
|
| 16 |
+
hackfresse
|
| 17 |
+
hure
|
| 18 |
+
hurensohn
|
| 19 |
+
ische
|
| 20 |
+
kackbratze
|
| 21 |
+
kacke
|
| 22 |
+
kacken
|
| 23 |
+
kackwurst
|
| 24 |
+
kampflesbe
|
| 25 |
+
kanake
|
| 26 |
+
kimme
|
| 27 |
+
lümmel
|
| 28 |
+
MILF
|
| 29 |
+
möpse
|
| 30 |
+
morgenlatte
|
| 31 |
+
möse
|
| 32 |
+
mufti
|
| 33 |
+
muschi
|
| 34 |
+
nackt
|
| 35 |
+
neger
|
| 36 |
+
nigger
|
| 37 |
+
nippel
|
| 38 |
+
nutte
|
| 39 |
+
onanieren
|
| 40 |
+
orgasmus
|
| 41 |
+
penis
|
| 42 |
+
pimmel
|
| 43 |
+
pimpern
|
| 44 |
+
pinkeln
|
| 45 |
+
pissen
|
| 46 |
+
pisser
|
| 47 |
+
popel
|
| 48 |
+
poppen
|
| 49 |
+
porno
|
| 50 |
+
reudig
|
| 51 |
+
rosette
|
| 52 |
+
schabracke
|
| 53 |
+
schlampe
|
| 54 |
+
scheiße
|
| 55 |
+
scheisser
|
| 56 |
+
schiesser
|
| 57 |
+
schnackeln
|
| 58 |
+
schwanzlutscher
|
| 59 |
+
schwuchtel
|
| 60 |
+
tittchen
|
| 61 |
+
titten
|
| 62 |
+
vögeln
|
| 63 |
+
vollpfosten
|
| 64 |
+
wichse
|
| 65 |
+
wichsen
|
| 66 |
+
wichser
|
app/profanity/en.txt
ADDED
|
@@ -0,0 +1,403 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
2g1c
|
| 2 |
+
2 girls 1 cup
|
| 3 |
+
acrotomophilia
|
| 4 |
+
alabama hot pocket
|
| 5 |
+
alaskan pipeline
|
| 6 |
+
anal
|
| 7 |
+
anilingus
|
| 8 |
+
anus
|
| 9 |
+
apeshit
|
| 10 |
+
arsehole
|
| 11 |
+
ass
|
| 12 |
+
asshole
|
| 13 |
+
assmunch
|
| 14 |
+
auto erotic
|
| 15 |
+
autoerotic
|
| 16 |
+
babeland
|
| 17 |
+
baby batter
|
| 18 |
+
baby juice
|
| 19 |
+
ball gag
|
| 20 |
+
ball gravy
|
| 21 |
+
ball kicking
|
| 22 |
+
ball licking
|
| 23 |
+
ball sack
|
| 24 |
+
ball sucking
|
| 25 |
+
bangbros
|
| 26 |
+
bangbus
|
| 27 |
+
bareback
|
| 28 |
+
barely legal
|
| 29 |
+
barenaked
|
| 30 |
+
bastard
|
| 31 |
+
bastardo
|
| 32 |
+
bastinado
|
| 33 |
+
bbw
|
| 34 |
+
bdsm
|
| 35 |
+
beaner
|
| 36 |
+
beaners
|
| 37 |
+
beaver cleaver
|
| 38 |
+
beaver lips
|
| 39 |
+
beastiality
|
| 40 |
+
bestiality
|
| 41 |
+
big black
|
| 42 |
+
big breasts
|
| 43 |
+
big knockers
|
| 44 |
+
big tits
|
| 45 |
+
bimbos
|
| 46 |
+
birdlock
|
| 47 |
+
bitch
|
| 48 |
+
bitches
|
| 49 |
+
black cock
|
| 50 |
+
blonde action
|
| 51 |
+
blonde on blonde action
|
| 52 |
+
blowjob
|
| 53 |
+
blow job
|
| 54 |
+
blow your load
|
| 55 |
+
blue waffle
|
| 56 |
+
blumpkin
|
| 57 |
+
bollocks
|
| 58 |
+
bondage
|
| 59 |
+
boner
|
| 60 |
+
boob
|
| 61 |
+
boobs
|
| 62 |
+
booty call
|
| 63 |
+
brown showers
|
| 64 |
+
brunette action
|
| 65 |
+
bukkake
|
| 66 |
+
bulldyke
|
| 67 |
+
bullet vibe
|
| 68 |
+
bullshit
|
| 69 |
+
bung hole
|
| 70 |
+
bunghole
|
| 71 |
+
busty
|
| 72 |
+
butt
|
| 73 |
+
buttcheeks
|
| 74 |
+
butthole
|
| 75 |
+
camel toe
|
| 76 |
+
camgirl
|
| 77 |
+
camslut
|
| 78 |
+
camwhore
|
| 79 |
+
carpet muncher
|
| 80 |
+
carpetmuncher
|
| 81 |
+
chocolate rosebuds
|
| 82 |
+
cialis
|
| 83 |
+
circlejerk
|
| 84 |
+
cleveland steamer
|
| 85 |
+
clit
|
| 86 |
+
clitoris
|
| 87 |
+
clover clamps
|
| 88 |
+
clusterfuck
|
| 89 |
+
cock
|
| 90 |
+
cocks
|
| 91 |
+
coprolagnia
|
| 92 |
+
coprophilia
|
| 93 |
+
cornhole
|
| 94 |
+
coon
|
| 95 |
+
coons
|
| 96 |
+
creampie
|
| 97 |
+
cum
|
| 98 |
+
cumming
|
| 99 |
+
cumshot
|
| 100 |
+
cumshots
|
| 101 |
+
cunnilingus
|
| 102 |
+
cunt
|
| 103 |
+
darkie
|
| 104 |
+
date rape
|
| 105 |
+
daterape
|
| 106 |
+
deep throat
|
| 107 |
+
deepthroat
|
| 108 |
+
dendrophilia
|
| 109 |
+
dick
|
| 110 |
+
dildo
|
| 111 |
+
dingleberry
|
| 112 |
+
dingleberries
|
| 113 |
+
dirty pillows
|
| 114 |
+
dirty sanchez
|
| 115 |
+
doggie style
|
| 116 |
+
doggiestyle
|
| 117 |
+
doggy style
|
| 118 |
+
doggystyle
|
| 119 |
+
dog style
|
| 120 |
+
dolcett
|
| 121 |
+
domination
|
| 122 |
+
dominatrix
|
| 123 |
+
dommes
|
| 124 |
+
donkey punch
|
| 125 |
+
double dong
|
| 126 |
+
double penetration
|
| 127 |
+
dp action
|
| 128 |
+
dry hump
|
| 129 |
+
dvda
|
| 130 |
+
eat my ass
|
| 131 |
+
ecchi
|
| 132 |
+
ejaculation
|
| 133 |
+
erotic
|
| 134 |
+
erotism
|
| 135 |
+
escort
|
| 136 |
+
eunuch
|
| 137 |
+
fag
|
| 138 |
+
faggot
|
| 139 |
+
fecal
|
| 140 |
+
felch
|
| 141 |
+
fellatio
|
| 142 |
+
feltch
|
| 143 |
+
female squirting
|
| 144 |
+
femdom
|
| 145 |
+
figging
|
| 146 |
+
fingerbang
|
| 147 |
+
fingering
|
| 148 |
+
fisting
|
| 149 |
+
foot fetish
|
| 150 |
+
footjob
|
| 151 |
+
frotting
|
| 152 |
+
fuck
|
| 153 |
+
fuck buttons
|
| 154 |
+
fuckin
|
| 155 |
+
fucking
|
| 156 |
+
fucktards
|
| 157 |
+
fudge packer
|
| 158 |
+
fudgepacker
|
| 159 |
+
futanari
|
| 160 |
+
gangbang
|
| 161 |
+
gang bang
|
| 162 |
+
gay sex
|
| 163 |
+
genitals
|
| 164 |
+
giant cock
|
| 165 |
+
girl on
|
| 166 |
+
girl on top
|
| 167 |
+
girls gone wild
|
| 168 |
+
goatcx
|
| 169 |
+
goatse
|
| 170 |
+
god damn
|
| 171 |
+
gokkun
|
| 172 |
+
golden shower
|
| 173 |
+
goodpoop
|
| 174 |
+
goo girl
|
| 175 |
+
goregasm
|
| 176 |
+
grope
|
| 177 |
+
group sex
|
| 178 |
+
g-spot
|
| 179 |
+
guro
|
| 180 |
+
hand job
|
| 181 |
+
handjob
|
| 182 |
+
hard core
|
| 183 |
+
hardcore
|
| 184 |
+
hentai
|
| 185 |
+
homoerotic
|
| 186 |
+
honkey
|
| 187 |
+
hooker
|
| 188 |
+
horny
|
| 189 |
+
hot carl
|
| 190 |
+
hot chick
|
| 191 |
+
how to kill
|
| 192 |
+
how to murder
|
| 193 |
+
huge fat
|
| 194 |
+
humping
|
| 195 |
+
incest
|
| 196 |
+
intercourse
|
| 197 |
+
jack off
|
| 198 |
+
jail bait
|
| 199 |
+
jailbait
|
| 200 |
+
jelly donut
|
| 201 |
+
jerk off
|
| 202 |
+
jigaboo
|
| 203 |
+
jiggaboo
|
| 204 |
+
jiggerboo
|
| 205 |
+
jizz
|
| 206 |
+
juggs
|
| 207 |
+
kike
|
| 208 |
+
kinbaku
|
| 209 |
+
kinkster
|
| 210 |
+
kinky
|
| 211 |
+
knobbing
|
| 212 |
+
leather restraint
|
| 213 |
+
leather straight jacket
|
| 214 |
+
lemon party
|
| 215 |
+
livesex
|
| 216 |
+
lolita
|
| 217 |
+
lovemaking
|
| 218 |
+
make me come
|
| 219 |
+
male squirting
|
| 220 |
+
masturbate
|
| 221 |
+
masturbating
|
| 222 |
+
masturbation
|
| 223 |
+
menage a trois
|
| 224 |
+
milf
|
| 225 |
+
missionary position
|
| 226 |
+
mong
|
| 227 |
+
motherfucker
|
| 228 |
+
mound of venus
|
| 229 |
+
mr hands
|
| 230 |
+
muff diver
|
| 231 |
+
muffdiving
|
| 232 |
+
nambla
|
| 233 |
+
nawashi
|
| 234 |
+
negro
|
| 235 |
+
neonazi
|
| 236 |
+
nigga
|
| 237 |
+
nigger
|
| 238 |
+
nig nog
|
| 239 |
+
nimphomania
|
| 240 |
+
nipple
|
| 241 |
+
nipples
|
| 242 |
+
nsfw
|
| 243 |
+
nsfw images
|
| 244 |
+
nude
|
| 245 |
+
nudity
|
| 246 |
+
nutten
|
| 247 |
+
nympho
|
| 248 |
+
nymphomania
|
| 249 |
+
octopussy
|
| 250 |
+
omorashi
|
| 251 |
+
one cup two girls
|
| 252 |
+
one guy one jar
|
| 253 |
+
orgasm
|
| 254 |
+
orgy
|
| 255 |
+
paedophile
|
| 256 |
+
paki
|
| 257 |
+
panties
|
| 258 |
+
panty
|
| 259 |
+
pedobear
|
| 260 |
+
pedophile
|
| 261 |
+
pegging
|
| 262 |
+
penis
|
| 263 |
+
phone sex
|
| 264 |
+
piece of shit
|
| 265 |
+
pikey
|
| 266 |
+
pissing
|
| 267 |
+
piss pig
|
| 268 |
+
pisspig
|
| 269 |
+
playboy
|
| 270 |
+
pleasure chest
|
| 271 |
+
pole smoker
|
| 272 |
+
ponyplay
|
| 273 |
+
poof
|
| 274 |
+
poon
|
| 275 |
+
poontang
|
| 276 |
+
punany
|
| 277 |
+
poop chute
|
| 278 |
+
poopchute
|
| 279 |
+
porn
|
| 280 |
+
porno
|
| 281 |
+
pornography
|
| 282 |
+
prince albert piercing
|
| 283 |
+
pthc
|
| 284 |
+
pubes
|
| 285 |
+
pussy
|
| 286 |
+
queaf
|
| 287 |
+
queef
|
| 288 |
+
quim
|
| 289 |
+
raghead
|
| 290 |
+
raging boner
|
| 291 |
+
rape
|
| 292 |
+
raping
|
| 293 |
+
rapist
|
| 294 |
+
rectum
|
| 295 |
+
reverse cowgirl
|
| 296 |
+
rimjob
|
| 297 |
+
rimming
|
| 298 |
+
rosy palm
|
| 299 |
+
rosy palm and her 5 sisters
|
| 300 |
+
rusty trombone
|
| 301 |
+
sadism
|
| 302 |
+
santorum
|
| 303 |
+
scat
|
| 304 |
+
schlong
|
| 305 |
+
scissoring
|
| 306 |
+
semen
|
| 307 |
+
sex
|
| 308 |
+
sexcam
|
| 309 |
+
sexo
|
| 310 |
+
sexy
|
| 311 |
+
sexual
|
| 312 |
+
sexually
|
| 313 |
+
sexuality
|
| 314 |
+
shaved beaver
|
| 315 |
+
shaved pussy
|
| 316 |
+
shemale
|
| 317 |
+
shibari
|
| 318 |
+
shit
|
| 319 |
+
shitblimp
|
| 320 |
+
shitty
|
| 321 |
+
shota
|
| 322 |
+
shrimping
|
| 323 |
+
skeet
|
| 324 |
+
slanteye
|
| 325 |
+
slut
|
| 326 |
+
s&m
|
| 327 |
+
smut
|
| 328 |
+
snatch
|
| 329 |
+
snowballing
|
| 330 |
+
sodomize
|
| 331 |
+
sodomy
|
| 332 |
+
spastic
|
| 333 |
+
spic
|
| 334 |
+
splooge
|
| 335 |
+
splooge moose
|
| 336 |
+
spooge
|
| 337 |
+
spread legs
|
| 338 |
+
spunk
|
| 339 |
+
strap on
|
| 340 |
+
strapon
|
| 341 |
+
strappado
|
| 342 |
+
strip club
|
| 343 |
+
style doggy
|
| 344 |
+
suck
|
| 345 |
+
sucks
|
| 346 |
+
suicide girls
|
| 347 |
+
sultry women
|
| 348 |
+
swastika
|
| 349 |
+
swinger
|
| 350 |
+
tainted love
|
| 351 |
+
taste my
|
| 352 |
+
tea bagging
|
| 353 |
+
threesome
|
| 354 |
+
throating
|
| 355 |
+
thumbzilla
|
| 356 |
+
tied up
|
| 357 |
+
tight white
|
| 358 |
+
tit
|
| 359 |
+
tits
|
| 360 |
+
titties
|
| 361 |
+
titty
|
| 362 |
+
tongue in a
|
| 363 |
+
topless
|
| 364 |
+
tosser
|
| 365 |
+
towelhead
|
| 366 |
+
tranny
|
| 367 |
+
tribadism
|
| 368 |
+
tub girl
|
| 369 |
+
tubgirl
|
| 370 |
+
tushy
|
| 371 |
+
twat
|
| 372 |
+
twink
|
| 373 |
+
twinkie
|
| 374 |
+
two girls one cup
|
| 375 |
+
undressing
|
| 376 |
+
upskirt
|
| 377 |
+
urethra play
|
| 378 |
+
urophilia
|
| 379 |
+
vagina
|
| 380 |
+
venus mound
|
| 381 |
+
viagra
|
| 382 |
+
vibrator
|
| 383 |
+
violet wand
|
| 384 |
+
vorarephilia
|
| 385 |
+
voyeur
|
| 386 |
+
voyeurweb
|
| 387 |
+
voyuer
|
| 388 |
+
vulva
|
| 389 |
+
wank
|
| 390 |
+
wetback
|
| 391 |
+
wet dream
|
| 392 |
+
white power
|
| 393 |
+
whore
|
| 394 |
+
worldsex
|
| 395 |
+
wrapping men
|
| 396 |
+
wrinkled starfish
|
| 397 |
+
xx
|
| 398 |
+
xxx
|
| 399 |
+
yaoi
|
| 400 |
+
yellow showers
|
| 401 |
+
yiffy
|
| 402 |
+
zoophilia
|
| 403 |
+
🖕
|
app/profanity/es.txt
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Asesinato
|
| 2 |
+
asno
|
| 3 |
+
bastardo
|
| 4 |
+
Bollera
|
| 5 |
+
Cabrón
|
| 6 |
+
Caca
|
| 7 |
+
Chupada
|
| 8 |
+
Chupapollas
|
| 9 |
+
Chupetón
|
| 10 |
+
concha
|
| 11 |
+
Concha de tu madre
|
| 12 |
+
Coño
|
| 13 |
+
Coprofagía
|
| 14 |
+
Culo
|
| 15 |
+
Drogas
|
| 16 |
+
Esperma
|
| 17 |
+
Fiesta de salchichas
|
| 18 |
+
Follador
|
| 19 |
+
Follar
|
| 20 |
+
Gilipichis
|
| 21 |
+
Gilipollas
|
| 22 |
+
Hacer una paja
|
| 23 |
+
Haciendo el amor
|
| 24 |
+
Heroína
|
| 25 |
+
Hija de puta
|
| 26 |
+
Hijaputa
|
| 27 |
+
Hijo de puta
|
| 28 |
+
Hijoputa
|
| 29 |
+
Idiota
|
| 30 |
+
Imbécil
|
| 31 |
+
infierno
|
| 32 |
+
Jilipollas
|
| 33 |
+
Kapullo
|
| 34 |
+
Lameculos
|
| 35 |
+
Maciza
|
| 36 |
+
Macizorra
|
| 37 |
+
maldito
|
| 38 |
+
Mamada
|
| 39 |
+
Marica
|
| 40 |
+
Maricón
|
| 41 |
+
Mariconazo
|
| 42 |
+
martillo
|
| 43 |
+
Mierda
|
| 44 |
+
Nazi
|
| 45 |
+
Orina
|
| 46 |
+
Pedo
|
| 47 |
+
Pendejo
|
| 48 |
+
Pervertido
|
| 49 |
+
Pezón
|
| 50 |
+
Pinche
|
| 51 |
+
Pis
|
| 52 |
+
Prostituta
|
| 53 |
+
Puta
|
| 54 |
+
Racista
|
| 55 |
+
Ramera
|
| 56 |
+
Sádico
|
| 57 |
+
Semen
|
| 58 |
+
Sexo
|
| 59 |
+
Sexo oral
|
| 60 |
+
Soplagaitas
|
| 61 |
+
Soplapollas
|
| 62 |
+
Tetas grandes
|
| 63 |
+
Tía buena
|
| 64 |
+
Travesti
|
| 65 |
+
Trio
|
| 66 |
+
Verga
|
| 67 |
+
vete a la mierda
|
| 68 |
+
Vulva
|
app/profanity/fa.txt
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
آب کیر
|
| 2 |
+
ارگاسم
|
| 3 |
+
برهنه
|
| 4 |
+
پورن
|
| 5 |
+
پورنو
|
| 6 |
+
تجاوز
|
| 7 |
+
تخمی
|
| 8 |
+
جق
|
| 9 |
+
جقی
|
| 10 |
+
جلق
|
| 11 |
+
جنده
|
| 12 |
+
چوچول
|
| 13 |
+
حشر
|
| 14 |
+
حشری
|
| 15 |
+
داف
|
| 16 |
+
دودول
|
| 17 |
+
ساک زدن
|
| 18 |
+
سکس
|
| 19 |
+
سکس کردن
|
| 20 |
+
سکسی
|
| 21 |
+
سوپر
|
| 22 |
+
شق کردن
|
| 23 |
+
شهوت
|
| 24 |
+
شهوتی
|
| 25 |
+
شونبول
|
| 26 |
+
فیلم سوپر
|
| 27 |
+
کس
|
| 28 |
+
کس دادن
|
| 29 |
+
کس کردن
|
| 30 |
+
کسکش
|
| 31 |
+
کوس
|
| 32 |
+
کون
|
| 33 |
+
کون دادن
|
| 34 |
+
کون کردن
|
| 35 |
+
کونکش
|
| 36 |
+
کونی
|
| 37 |
+
کیر
|
| 38 |
+
کیری
|
| 39 |
+
لاپا
|
| 40 |
+
لاپایی
|
| 41 |
+
لاشی
|
| 42 |
+
لخت
|
| 43 |
+
لش
|
| 44 |
+
منی
|
| 45 |
+
هرزه
|
app/profanity/fi.txt
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
alfred nussi
|
| 2 |
+
bylsiä
|
| 3 |
+
haahka
|
| 4 |
+
haista paska
|
| 5 |
+
haista vittu
|
| 6 |
+
hatullinen
|
| 7 |
+
helvetisti
|
| 8 |
+
hevonkuusi
|
| 9 |
+
hevonpaska
|
| 10 |
+
hevonperse
|
| 11 |
+
hevonvittu
|
| 12 |
+
hevonvitunperse
|
| 13 |
+
hitosti
|
| 14 |
+
hitto
|
| 15 |
+
huorata
|
| 16 |
+
hässiä
|
| 17 |
+
juosten kustu
|
| 18 |
+
jutku
|
| 19 |
+
jutsku
|
| 20 |
+
jätkä
|
| 21 |
+
kananpaska
|
| 22 |
+
koiranpaska
|
| 23 |
+
kuin esterin perseestä
|
| 24 |
+
kulli
|
| 25 |
+
kullinluikaus
|
| 26 |
+
kuppainen
|
| 27 |
+
kusaista
|
| 28 |
+
kuseksia
|
| 29 |
+
kusettaa
|
| 30 |
+
kusi
|
| 31 |
+
kusipää
|
| 32 |
+
kusta
|
| 33 |
+
kyrpiintynyt
|
| 34 |
+
kyrpiintyä
|
| 35 |
+
kyrpiä
|
| 36 |
+
kyrpä
|
| 37 |
+
kyrpänaama
|
| 38 |
+
kyrvitys
|
| 39 |
+
lahtari
|
| 40 |
+
lutka
|
| 41 |
+
molo
|
| 42 |
+
molopää
|
| 43 |
+
mulkero
|
| 44 |
+
mulkku
|
| 45 |
+
mulkvisti
|
| 46 |
+
muna
|
| 47 |
+
munapää
|
| 48 |
+
munaton
|
| 49 |
+
mutakuono
|
| 50 |
+
mutiainen
|
| 51 |
+
naida
|
| 52 |
+
nainti
|
| 53 |
+
narttu
|
| 54 |
+
neekeri
|
| 55 |
+
nekru
|
| 56 |
+
nuolla persettä
|
| 57 |
+
nussia
|
| 58 |
+
nussija
|
| 59 |
+
nussinta
|
| 60 |
+
paljaalla
|
| 61 |
+
palli
|
| 62 |
+
pallit
|
| 63 |
+
paneskella
|
| 64 |
+
panettaa
|
| 65 |
+
panna
|
| 66 |
+
pano
|
| 67 |
+
pantava
|
| 68 |
+
paska
|
| 69 |
+
paskainen
|
| 70 |
+
paskamainen
|
| 71 |
+
paskanmarjat
|
| 72 |
+
paskantaa
|
| 73 |
+
paskapuhe
|
| 74 |
+
paskapää
|
| 75 |
+
paskattaa
|
| 76 |
+
paskiainen
|
| 77 |
+
paskoa
|
| 78 |
+
pehko
|
| 79 |
+
pentele
|
| 80 |
+
perkele
|
| 81 |
+
perkeleesti
|
| 82 |
+
persaukinen
|
| 83 |
+
perse
|
| 84 |
+
perseennuolija
|
| 85 |
+
perseet olalla
|
| 86 |
+
persereikä
|
| 87 |
+
perseääliö
|
| 88 |
+
persläpi
|
| 89 |
+
perspano
|
| 90 |
+
persvako
|
| 91 |
+
pilkunnussija
|
| 92 |
+
pillu
|
| 93 |
+
pillut
|
| 94 |
+
pipari
|
| 95 |
+
piru
|
| 96 |
+
pistää
|
| 97 |
+
pyllyvako
|
| 98 |
+
reikä
|
| 99 |
+
reva
|
| 100 |
+
ripsipiirakka
|
| 101 |
+
runkata
|
| 102 |
+
runkkari
|
| 103 |
+
runkkaus
|
| 104 |
+
runkku
|
| 105 |
+
ryssä
|
| 106 |
+
rättipää
|
| 107 |
+
saatanasti
|
| 108 |
+
suklaaosasto
|
| 109 |
+
tavara
|
| 110 |
+
toosa
|
| 111 |
+
tuhkaluukku
|
| 112 |
+
tumputtaa
|
| 113 |
+
turpasauna
|
| 114 |
+
tussu
|
| 115 |
+
tussukka
|
| 116 |
+
tussut
|
| 117 |
+
vakipano
|
| 118 |
+
vetää käteen
|
| 119 |
+
viiksi
|
| 120 |
+
vittu
|
| 121 |
+
vittuilla
|
| 122 |
+
vittuilu
|
| 123 |
+
vittumainen
|
| 124 |
+
vittuuntua
|
| 125 |
+
vittuuntunut
|
| 126 |
+
vitun
|
| 127 |
+
vitusti
|
| 128 |
+
vituttaa
|
| 129 |
+
vitutus
|
| 130 |
+
äpärä
|
app/profanity/fil.txt
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
puta ka
|
| 2 |
+
putang ina
|
| 3 |
+
tang ina
|
| 4 |
+
tangina
|
| 5 |
+
burat
|
| 6 |
+
bayag
|
| 7 |
+
bobo
|
| 8 |
+
nognog
|
| 9 |
+
tanga
|
| 10 |
+
ulol
|
| 11 |
+
kantot
|
| 12 |
+
anak ka ng puta
|
| 13 |
+
ulol
|
| 14 |
+
jakol
|
app/profanity/fr.txt
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
baiser
|
| 2 |
+
bander
|
| 3 |
+
bigornette
|
| 4 |
+
bite
|
| 5 |
+
bitte
|
| 6 |
+
bloblos
|
| 7 |
+
bordel
|
| 8 |
+
bourré
|
| 9 |
+
bourrée
|
| 10 |
+
brackmard
|
| 11 |
+
branlage
|
| 12 |
+
branler
|
| 13 |
+
branlette
|
| 14 |
+
branleur
|
| 15 |
+
branleuse
|
| 16 |
+
brouter le cresson
|
| 17 |
+
caca
|
| 18 |
+
chatte
|
| 19 |
+
chiasse
|
| 20 |
+
chier
|
| 21 |
+
chiottes
|
| 22 |
+
clito
|
| 23 |
+
clitoris
|
| 24 |
+
con
|
| 25 |
+
connard
|
| 26 |
+
connasse
|
| 27 |
+
conne
|
| 28 |
+
couilles
|
| 29 |
+
cramouille
|
| 30 |
+
cul
|
| 31 |
+
déconne
|
| 32 |
+
déconner
|
| 33 |
+
emmerdant
|
| 34 |
+
emmerder
|
| 35 |
+
emmerdeur
|
| 36 |
+
emmerdeuse
|
| 37 |
+
enculé
|
| 38 |
+
enculée
|
| 39 |
+
enculeur
|
| 40 |
+
enculeurs
|
| 41 |
+
enfoiré
|
| 42 |
+
enfoirée
|
| 43 |
+
étron
|
| 44 |
+
fille de pute
|
| 45 |
+
fils de pute
|
| 46 |
+
folle
|
| 47 |
+
foutre
|
| 48 |
+
gerbe
|
| 49 |
+
gerber
|
| 50 |
+
gouine
|
| 51 |
+
grande folle
|
| 52 |
+
grogniasse
|
| 53 |
+
gueule
|
| 54 |
+
jouir
|
| 55 |
+
la putain de ta mère
|
| 56 |
+
MALPT
|
| 57 |
+
ménage à trois
|
| 58 |
+
merde
|
| 59 |
+
merdeuse
|
| 60 |
+
merdeux
|
| 61 |
+
meuf
|
| 62 |
+
nègre
|
| 63 |
+
negro
|
| 64 |
+
nique ta mère
|
| 65 |
+
nique ta race
|
| 66 |
+
palucher
|
| 67 |
+
pédale
|
| 68 |
+
pédé
|
| 69 |
+
péter
|
| 70 |
+
pipi
|
| 71 |
+
pisser
|
| 72 |
+
pouffiasse
|
| 73 |
+
pousse-crotte
|
| 74 |
+
putain
|
| 75 |
+
pute
|
| 76 |
+
ramoner
|
| 77 |
+
sac à foutre
|
| 78 |
+
sac à merde
|
| 79 |
+
salaud
|
| 80 |
+
salope
|
| 81 |
+
suce
|
| 82 |
+
tapette
|
| 83 |
+
tanche
|
| 84 |
+
teuch
|
| 85 |
+
tringler
|
| 86 |
+
trique
|
| 87 |
+
troncher
|
| 88 |
+
trou du cul
|
| 89 |
+
turlute
|
| 90 |
+
zigounette
|
| 91 |
+
zizi
|
app/profanity/hi.txt
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
aand
|
| 2 |
+
aandu
|
| 3 |
+
balatkar
|
| 4 |
+
balatkari
|
| 5 |
+
behen chod
|
| 6 |
+
beti chod
|
| 7 |
+
bhadva
|
| 8 |
+
bhadve
|
| 9 |
+
bhandve
|
| 10 |
+
bhangi
|
| 11 |
+
bhootni ke
|
| 12 |
+
bhosad
|
| 13 |
+
bhosadi ke
|
| 14 |
+
boobe
|
| 15 |
+
chakke
|
| 16 |
+
chinaal
|
| 17 |
+
chinki
|
| 18 |
+
chod
|
| 19 |
+
chodu
|
| 20 |
+
chodu bhagat
|
| 21 |
+
chooche
|
| 22 |
+
choochi
|
| 23 |
+
choope
|
| 24 |
+
choot
|
| 25 |
+
choot ke baal
|
| 26 |
+
chootia
|
| 27 |
+
chootiya
|
| 28 |
+
chuche
|
| 29 |
+
chuchi
|
| 30 |
+
chudaap
|
| 31 |
+
chudai khanaa
|
| 32 |
+
chudam chudai
|
| 33 |
+
chude
|
| 34 |
+
chut
|
| 35 |
+
chut ka chuha
|
| 36 |
+
chut ka churan
|
| 37 |
+
chut ka mail
|
| 38 |
+
chut ke baal
|
| 39 |
+
chut ke dhakkan
|
| 40 |
+
chut maarli
|
| 41 |
+
chutad
|
| 42 |
+
chutadd
|
| 43 |
+
chutan
|
| 44 |
+
chutia
|
| 45 |
+
chutiya
|
| 46 |
+
gaand
|
| 47 |
+
gaandfat
|
| 48 |
+
gaandmasti
|
| 49 |
+
gaandufad
|
| 50 |
+
gandfattu
|
| 51 |
+
gandu
|
| 52 |
+
gashti
|
| 53 |
+
gasti
|
| 54 |
+
ghassa
|
| 55 |
+
ghasti
|
| 56 |
+
gucchi
|
| 57 |
+
gucchu
|
| 58 |
+
harami
|
| 59 |
+
haramzade
|
| 60 |
+
hawas
|
| 61 |
+
hawas ke pujari
|
| 62 |
+
hijda
|
| 63 |
+
hijra
|
| 64 |
+
jhant
|
| 65 |
+
jhant chaatu
|
| 66 |
+
jhant ka keeda
|
| 67 |
+
jhant ke baal
|
| 68 |
+
jhant ke pissu
|
| 69 |
+
jhantu
|
| 70 |
+
kamine
|
| 71 |
+
kaminey
|
| 72 |
+
kanjar
|
| 73 |
+
kutta
|
| 74 |
+
kutta kamina
|
| 75 |
+
kutte ki aulad
|
| 76 |
+
kutte ki jat
|
| 77 |
+
kuttiya
|
| 78 |
+
loda
|
| 79 |
+
lodu
|
| 80 |
+
lund
|
| 81 |
+
lund choos
|
| 82 |
+
lund ka bakkal
|
| 83 |
+
lund khajoor
|
| 84 |
+
lundtopi
|
| 85 |
+
lundure
|
| 86 |
+
maa ki chut
|
| 87 |
+
maal
|
| 88 |
+
madar chod
|
| 89 |
+
madarchod
|
| 90 |
+
madhavchod
|
| 91 |
+
mooh mein le
|
| 92 |
+
mutth
|
| 93 |
+
mutthal
|
| 94 |
+
najayaz
|
| 95 |
+
najayaz aulaad
|
| 96 |
+
najayaz paidaish
|
| 97 |
+
paki
|
| 98 |
+
pataka
|
| 99 |
+
patakha
|
| 100 |
+
raand
|
| 101 |
+
randaap
|
| 102 |
+
randi
|
| 103 |
+
randi rona
|
| 104 |
+
saala
|
| 105 |
+
saala kutta
|
| 106 |
+
saali kutti
|
| 107 |
+
saali randi
|
| 108 |
+
suar
|
| 109 |
+
suar ke lund
|
| 110 |
+
suar ki aulad
|
| 111 |
+
tatte
|
| 112 |
+
tatti
|
| 113 |
+
teri maa ka bhosada
|
| 114 |
+
teri maa ka boba chusu
|
| 115 |
+
teri maa ki behenchod
|
| 116 |
+
teri maa ki chut
|
| 117 |
+
tharak
|
| 118 |
+
tharki
|
| 119 |
+
tu chuda
|
app/profanity/hu.txt
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
balfasz
|
| 2 |
+
balfaszok
|
| 3 |
+
balfaszokat
|
| 4 |
+
balfaszt
|
| 5 |
+
barmok
|
| 6 |
+
barmokat
|
| 7 |
+
barmot
|
| 8 |
+
barom
|
| 9 |
+
baszik
|
| 10 |
+
bazmeg
|
| 11 |
+
buksza
|
| 12 |
+
bukszák
|
| 13 |
+
bukszákat
|
| 14 |
+
bukszát
|
| 15 |
+
búr
|
| 16 |
+
búrok
|
| 17 |
+
csöcs
|
| 18 |
+
csöcsök
|
| 19 |
+
csöcsöket
|
| 20 |
+
csöcsöt
|
| 21 |
+
fasz
|
| 22 |
+
faszfej
|
| 23 |
+
faszfejek
|
| 24 |
+
faszfejeket
|
| 25 |
+
faszfejet
|
| 26 |
+
faszok
|
| 27 |
+
faszokat
|
| 28 |
+
faszt
|
| 29 |
+
fing
|
| 30 |
+
fingok
|
| 31 |
+
fingokat
|
| 32 |
+
fingot
|
| 33 |
+
franc
|
| 34 |
+
francok
|
| 35 |
+
francokat
|
| 36 |
+
francot
|
| 37 |
+
geci
|
| 38 |
+
gecibb
|
| 39 |
+
gecik
|
| 40 |
+
geciket
|
| 41 |
+
gecit
|
| 42 |
+
kibaszott
|
| 43 |
+
kibaszottabb
|
| 44 |
+
kúr
|
| 45 |
+
kurafi
|
| 46 |
+
kurafik
|
| 47 |
+
kurafikat
|
| 48 |
+
kurafit
|
| 49 |
+
kurva
|
| 50 |
+
kurvák
|
| 51 |
+
kurvákat
|
| 52 |
+
kurvát
|
| 53 |
+
leggecibb
|
| 54 |
+
legkibaszottabb
|
| 55 |
+
legszarabb
|
| 56 |
+
marha
|
| 57 |
+
marhák
|
| 58 |
+
marhákat
|
| 59 |
+
marhát
|
| 60 |
+
megdöglik
|
| 61 |
+
pele
|
| 62 |
+
pelék
|
| 63 |
+
picsa
|
| 64 |
+
picsákat
|
| 65 |
+
picsát
|
| 66 |
+
pina
|
| 67 |
+
pinák
|
| 68 |
+
pinákat
|
| 69 |
+
pinát
|
| 70 |
+
pofa
|
| 71 |
+
pofákat
|
| 72 |
+
pofát
|
| 73 |
+
pöcs
|
| 74 |
+
pöcsök
|
| 75 |
+
pöcsöket
|
| 76 |
+
pöcsöt
|
| 77 |
+
punci
|
| 78 |
+
puncik
|
| 79 |
+
segg
|
| 80 |
+
seggek
|
| 81 |
+
seggeket
|
| 82 |
+
segget
|
| 83 |
+
seggfej
|
| 84 |
+
seggfejek
|
| 85 |
+
seggfejeket
|
| 86 |
+
seggfejet
|
| 87 |
+
szajha
|
| 88 |
+
szajhák
|
| 89 |
+
szajhákat
|
| 90 |
+
szajhát
|
| 91 |
+
szar
|
| 92 |
+
szarabb
|
| 93 |
+
szarik
|
| 94 |
+
szarok
|
| 95 |
+
szarokat
|
| 96 |
+
szart
|
app/profanity/it.txt
ADDED
|
@@ -0,0 +1,168 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
allupato
|
| 2 |
+
ammucchiata
|
| 3 |
+
anale
|
| 4 |
+
arrapato
|
| 5 |
+
arrusa
|
| 6 |
+
arruso
|
| 7 |
+
assatanato
|
| 8 |
+
bagascia
|
| 9 |
+
bagassa
|
| 10 |
+
bagnarsi
|
| 11 |
+
baldracca
|
| 12 |
+
balle
|
| 13 |
+
battere
|
| 14 |
+
battona
|
| 15 |
+
belino
|
| 16 |
+
biga
|
| 17 |
+
bocchinara
|
| 18 |
+
bocchino
|
| 19 |
+
bofilo
|
| 20 |
+
boiata
|
| 21 |
+
bordello
|
| 22 |
+
brinca
|
| 23 |
+
bucaiolo
|
| 24 |
+
budiùlo
|
| 25 |
+
busone
|
| 26 |
+
cacca
|
| 27 |
+
caciocappella
|
| 28 |
+
cadavere
|
| 29 |
+
cagare
|
| 30 |
+
cagata
|
| 31 |
+
cagna
|
| 32 |
+
casci
|
| 33 |
+
cazzata
|
| 34 |
+
cazzimma
|
| 35 |
+
cazzo
|
| 36 |
+
cesso
|
| 37 |
+
cazzone
|
| 38 |
+
checca
|
| 39 |
+
chiappa
|
| 40 |
+
chiavare
|
| 41 |
+
chiavata
|
| 42 |
+
ciospo
|
| 43 |
+
ciucciami il cazzo
|
| 44 |
+
coglione
|
| 45 |
+
coglioni
|
| 46 |
+
cornuto
|
| 47 |
+
cozza
|
| 48 |
+
culattina
|
| 49 |
+
culattone
|
| 50 |
+
culo
|
| 51 |
+
ditalino
|
| 52 |
+
fava
|
| 53 |
+
femminuccia
|
| 54 |
+
fica
|
| 55 |
+
figa
|
| 56 |
+
figlio di buona donna
|
| 57 |
+
figlio di puttana
|
| 58 |
+
figone
|
| 59 |
+
finocchio
|
| 60 |
+
fottere
|
| 61 |
+
fottersi
|
| 62 |
+
fracicone
|
| 63 |
+
fregna
|
| 64 |
+
frocio
|
| 65 |
+
froscio
|
| 66 |
+
goldone
|
| 67 |
+
guardone
|
| 68 |
+
imbecille
|
| 69 |
+
incazzarsi
|
| 70 |
+
incoglionirsi
|
| 71 |
+
ingoio
|
| 72 |
+
leccaculo
|
| 73 |
+
lecchino
|
| 74 |
+
lofare
|
| 75 |
+
loffa
|
| 76 |
+
loffare
|
| 77 |
+
mannaggia
|
| 78 |
+
merda
|
| 79 |
+
merdata
|
| 80 |
+
merdoso
|
| 81 |
+
mignotta
|
| 82 |
+
minchia
|
| 83 |
+
minchione
|
| 84 |
+
mona
|
| 85 |
+
monta
|
| 86 |
+
montare
|
| 87 |
+
mussa
|
| 88 |
+
nave scuola
|
| 89 |
+
nerchia
|
| 90 |
+
padulo
|
| 91 |
+
palle
|
| 92 |
+
palloso
|
| 93 |
+
patacca
|
| 94 |
+
patonza
|
| 95 |
+
pecorina
|
| 96 |
+
pesce
|
| 97 |
+
picio
|
| 98 |
+
pincare
|
| 99 |
+
pippa
|
| 100 |
+
pinnolone
|
| 101 |
+
pipì
|
| 102 |
+
pippone
|
| 103 |
+
pirla
|
| 104 |
+
pisciare
|
| 105 |
+
piscio
|
| 106 |
+
pisello
|
| 107 |
+
pistolotto
|
| 108 |
+
pomiciare
|
| 109 |
+
pompa
|
| 110 |
+
pompino
|
| 111 |
+
porca
|
| 112 |
+
porca madonna
|
| 113 |
+
porca miseria
|
| 114 |
+
porca puttana
|
| 115 |
+
porco
|
| 116 |
+
porco due
|
| 117 |
+
porco zio
|
| 118 |
+
potta
|
| 119 |
+
puppami
|
| 120 |
+
puttana
|
| 121 |
+
quaglia
|
| 122 |
+
recchione
|
| 123 |
+
regina
|
| 124 |
+
rincoglionire
|
| 125 |
+
rizzarsi
|
| 126 |
+
rompiballe
|
| 127 |
+
rompipalle
|
| 128 |
+
ruffiano
|
| 129 |
+
sbattere
|
| 130 |
+
sbattersi
|
| 131 |
+
sborra
|
| 132 |
+
sborrata
|
| 133 |
+
sborrone
|
| 134 |
+
sbrodolata
|
| 135 |
+
scopare
|
| 136 |
+
scopata
|
| 137 |
+
scorreggiare
|
| 138 |
+
sega
|
| 139 |
+
slinguare
|
| 140 |
+
slinguata
|
| 141 |
+
smandrappata
|
| 142 |
+
soccia
|
| 143 |
+
socmel
|
| 144 |
+
sorca
|
| 145 |
+
spagnola
|
| 146 |
+
spompinare
|
| 147 |
+
sticchio
|
| 148 |
+
stronza
|
| 149 |
+
stronzata
|
| 150 |
+
stronzo
|
| 151 |
+
succhiami
|
| 152 |
+
succhione
|
| 153 |
+
sveltina
|
| 154 |
+
sverginare
|
| 155 |
+
tarzanello
|
| 156 |
+
terrone
|
| 157 |
+
testa di cazzo
|
| 158 |
+
tette
|
| 159 |
+
tirare
|
| 160 |
+
topa
|
| 161 |
+
troia
|
| 162 |
+
trombare
|
| 163 |
+
vacca
|
| 164 |
+
vaffanculo
|
| 165 |
+
vangare
|
| 166 |
+
zinne
|
| 167 |
+
zio cantante
|
| 168 |
+
zoccola
|
app/profanity/ja.txt
ADDED
|
@@ -0,0 +1,180 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
3p
|
| 2 |
+
g スポット
|
| 3 |
+
s & m
|
| 4 |
+
sm
|
| 5 |
+
sm女王
|
| 6 |
+
xx
|
| 7 |
+
アジアのかわいい女の子
|
| 8 |
+
アスホール
|
| 9 |
+
アナリングス
|
| 10 |
+
アナル
|
| 11 |
+
いたずら
|
| 12 |
+
イラマチオ
|
| 13 |
+
エクスタシー
|
| 14 |
+
エスコート
|
| 15 |
+
エッチ
|
| 16 |
+
エロティズム
|
| 17 |
+
エロティック
|
| 18 |
+
オーガズム
|
| 19 |
+
オカマ
|
| 20 |
+
おしっこ
|
| 21 |
+
おしり
|
| 22 |
+
オシリ
|
| 23 |
+
おしりのあな
|
| 24 |
+
おっぱい
|
| 25 |
+
オッパイ
|
| 26 |
+
オナニー
|
| 27 |
+
オマンコ
|
| 28 |
+
おもらし
|
| 29 |
+
お尻
|
| 30 |
+
カーマスートラ
|
| 31 |
+
カント
|
| 32 |
+
クリトリス
|
| 33 |
+
グループ・セックス
|
| 34 |
+
グロ
|
| 35 |
+
クンニリングス
|
| 36 |
+
ゲイ・セックス
|
| 37 |
+
ゲイボーイ
|
| 38 |
+
ゴールデンシャワー
|
| 39 |
+
コカイン
|
| 40 |
+
ゴックン
|
| 41 |
+
サディズム
|
| 42 |
+
しばり
|
| 43 |
+
スウィンガー
|
| 44 |
+
スカートの中
|
| 45 |
+
スカトロ
|
| 46 |
+
ストラップオン
|
| 47 |
+
ストリップ劇場
|
| 48 |
+
スラット
|
| 49 |
+
スリット
|
| 50 |
+
セクシーな
|
| 51 |
+
セクシーな 10 代
|
| 52 |
+
セックス
|
| 53 |
+
ソドミー
|
| 54 |
+
ちんこ
|
| 55 |
+
ディープ・スロート
|
| 56 |
+
ディック
|
| 57 |
+
ディルド
|
| 58 |
+
デートレイプ
|
| 59 |
+
デブ
|
| 60 |
+
テレフォンセックス
|
| 61 |
+
ドッグスタイル
|
| 62 |
+
トップレス
|
| 63 |
+
なめ
|
| 64 |
+
ニガー
|
| 65 |
+
ヌード
|
| 66 |
+
ネオ・ナチ
|
| 67 |
+
ハードコア
|
| 68 |
+
パイパン
|
| 69 |
+
バイブレーター
|
| 70 |
+
バック・スタイル
|
| 71 |
+
パンティー
|
| 72 |
+
ビッチ
|
| 73 |
+
ファック
|
| 74 |
+
ファンタジー
|
| 75 |
+
フィスト
|
| 76 |
+
フェティッシュ
|
| 77 |
+
フェラチオ
|
| 78 |
+
ふたなり
|
| 79 |
+
ぶっかけ
|
| 80 |
+
フック
|
| 81 |
+
プリンス アルバート ピアス
|
| 82 |
+
プレイボーイ
|
| 83 |
+
ベアバック
|
| 84 |
+
ペニス
|
| 85 |
+
ペニスバンド
|
| 86 |
+
ボーイズラブ
|
| 87 |
+
ボールギャグ
|
| 88 |
+
ぽっちゃり
|
| 89 |
+
ホモ
|
| 90 |
+
ポルノ
|
| 91 |
+
ポルノグラフィー
|
| 92 |
+
ボンテージ
|
| 93 |
+
マザー・ファッカー
|
| 94 |
+
マスターベーション
|
| 95 |
+
まんこ
|
| 96 |
+
やおい
|
| 97 |
+
やりまん
|
| 98 |
+
ラティーナ
|
| 99 |
+
ラバー
|
| 100 |
+
ランジェリー
|
| 101 |
+
レイプ
|
| 102 |
+
レズビアン
|
| 103 |
+
ローター
|
| 104 |
+
ロリータ
|
| 105 |
+
淫乱
|
| 106 |
+
陰毛
|
| 107 |
+
革抑制
|
| 108 |
+
騎上位
|
| 109 |
+
巨根
|
| 110 |
+
巨乳
|
| 111 |
+
強姦犯
|
| 112 |
+
玉なめ
|
| 113 |
+
玉舐め
|
| 114 |
+
緊縛
|
| 115 |
+
近親相姦
|
| 116 |
+
嫌い
|
| 117 |
+
後背位
|
| 118 |
+
合意の性交
|
| 119 |
+
拷問
|
| 120 |
+
殺し方
|
| 121 |
+
殺人事件
|
| 122 |
+
殺人方法
|
| 123 |
+
支配
|
| 124 |
+
児童性虐待
|
| 125 |
+
自己愛性
|
| 126 |
+
射精
|
| 127 |
+
手コキ
|
| 128 |
+
獣姦
|
| 129 |
+
女の子
|
| 130 |
+
女王様
|
| 131 |
+
女子高生
|
| 132 |
+
女装
|
| 133 |
+
新しいポルノ
|
| 134 |
+
人妻
|
| 135 |
+
人種
|
| 136 |
+
性交
|
| 137 |
+
正常位
|
| 138 |
+
生殖器
|
| 139 |
+
精液
|
| 140 |
+
挿入
|
| 141 |
+
足フェチ
|
| 142 |
+
足を広げる
|
| 143 |
+
大陰唇
|
| 144 |
+
脱衣
|
| 145 |
+
茶色のシャワー
|
| 146 |
+
中出し
|
| 147 |
+
潮吹き女
|
| 148 |
+
潮吹き男性
|
| 149 |
+
直腸
|
| 150 |
+
剃毛
|
| 151 |
+
貞操帯
|
| 152 |
+
奴隷
|
| 153 |
+
二穴
|
| 154 |
+
乳首
|
| 155 |
+
尿道プレイ
|
| 156 |
+
覗き
|
| 157 |
+
売春婦
|
| 158 |
+
縛り
|
| 159 |
+
噴出
|
| 160 |
+
糞
|
| 161 |
+
糞尿愛好症
|
| 162 |
+
糞便
|
| 163 |
+
平手打ち
|
| 164 |
+
変態
|
| 165 |
+
勃起する
|
| 166 |
+
夢精
|
| 167 |
+
毛深い
|
| 168 |
+
誘惑
|
| 169 |
+
幼児性愛者
|
| 170 |
+
裸
|
| 171 |
+
裸の女性
|
| 172 |
+
乱交
|
| 173 |
+
両性
|
| 174 |
+
両性具有
|
| 175 |
+
両刀
|
| 176 |
+
輪姦
|
| 177 |
+
卍
|
| 178 |
+
宦官
|
| 179 |
+
肛門
|
| 180 |
+
膣
|
app/profanity/ko.txt
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
강간
|
| 2 |
+
개새끼
|
| 3 |
+
개자식
|
| 4 |
+
개좆
|
| 5 |
+
개차반
|
| 6 |
+
거유
|
| 7 |
+
계집년
|
| 8 |
+
고자
|
| 9 |
+
근친
|
| 10 |
+
노모
|
| 11 |
+
니기미
|
| 12 |
+
뒤질래
|
| 13 |
+
딸딸이
|
| 14 |
+
때씹
|
| 15 |
+
또라이
|
| 16 |
+
뙤놈
|
| 17 |
+
로리타
|
| 18 |
+
망가
|
| 19 |
+
몰카
|
| 20 |
+
미친
|
| 21 |
+
미친새끼
|
| 22 |
+
바바리맨
|
| 23 |
+
변태
|
| 24 |
+
병신
|
| 25 |
+
보지
|
| 26 |
+
불알
|
| 27 |
+
빠구리
|
| 28 |
+
사까시
|
| 29 |
+
섹스
|
| 30 |
+
스와핑
|
| 31 |
+
쌍놈
|
| 32 |
+
씨발
|
| 33 |
+
씨발놈
|
| 34 |
+
씨팔
|
| 35 |
+
씹
|
| 36 |
+
씹물
|
| 37 |
+
씹빨
|
| 38 |
+
씹새끼
|
| 39 |
+
씹알
|
| 40 |
+
씹창
|
| 41 |
+
씹팔
|
| 42 |
+
암캐
|
| 43 |
+
애자
|
| 44 |
+
야동
|
| 45 |
+
야사
|
| 46 |
+
야애니
|
| 47 |
+
엄창
|
| 48 |
+
에로
|
| 49 |
+
염병
|
| 50 |
+
옘병
|
| 51 |
+
유모
|
| 52 |
+
육갑
|
| 53 |
+
은꼴
|
| 54 |
+
자위
|
| 55 |
+
자지
|
| 56 |
+
잡년
|
| 57 |
+
종간나
|
| 58 |
+
좆
|
| 59 |
+
좆만
|
| 60 |
+
죽일년
|
| 61 |
+
쥐좆
|
| 62 |
+
직촬
|
| 63 |
+
짱깨
|
| 64 |
+
쪽바리
|
| 65 |
+
창녀
|
| 66 |
+
포르노
|
| 67 |
+
하드코어
|
| 68 |
+
호로
|
| 69 |
+
화냥년
|
| 70 |
+
후레아들
|
| 71 |
+
후장
|
| 72 |
+
희쭈그리
|
app/profanity/nl.txt
ADDED
|
@@ -0,0 +1,190 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
aardappels afgieten
|
| 2 |
+
achter het raam zitten
|
| 3 |
+
afberen
|
| 4 |
+
aflebberen
|
| 5 |
+
afrossen
|
| 6 |
+
afrukken
|
| 7 |
+
aftrekken
|
| 8 |
+
afwerkplaats
|
| 9 |
+
afzeiken
|
| 10 |
+
afzuigen
|
| 11 |
+
een halve man en een paardekop
|
| 12 |
+
anita
|
| 13 |
+
asbak
|
| 14 |
+
aso
|
| 15 |
+
bagger schijten
|
| 16 |
+
balen
|
| 17 |
+
bedonderen
|
| 18 |
+
befborstel
|
| 19 |
+
beffen
|
| 20 |
+
bekken
|
| 21 |
+
belazeren
|
| 22 |
+
besodemieterd zijn
|
| 23 |
+
besodemieteren
|
| 24 |
+
beurt
|
| 25 |
+
boemelen
|
| 26 |
+
boerelul
|
| 27 |
+
boerenpummel
|
| 28 |
+
bokkelul
|
| 29 |
+
botergeil
|
| 30 |
+
broekhoesten
|
| 31 |
+
brugpieper
|
| 32 |
+
buffelen
|
| 33 |
+
buiten de pot piesen
|
| 34 |
+
da's kloten van de bok
|
| 35 |
+
de ballen
|
| 36 |
+
de hoer spelen
|
| 37 |
+
de hond uitlaten
|
| 38 |
+
de koffer induiken
|
| 39 |
+
del
|
| 40 |
+
de pijp uitgaan
|
| 41 |
+
dombo
|
| 42 |
+
draaikont
|
| 43 |
+
driehoog achter wonen
|
| 44 |
+
drol
|
| 45 |
+
drooggeiler
|
| 46 |
+
droogkloot
|
| 47 |
+
een beurt geven
|
| 48 |
+
een nummertje maken
|
| 49 |
+
een wip maken
|
| 50 |
+
eikel
|
| 51 |
+
engerd
|
| 52 |
+
flamoes
|
| 53 |
+
flikken
|
| 54 |
+
flikker
|
| 55 |
+
gadverdamme
|
| 56 |
+
galbak
|
| 57 |
+
gat
|
| 58 |
+
gedoogzone
|
| 59 |
+
geilneef
|
| 60 |
+
gesodemieter
|
| 61 |
+
godverdomme
|
| 62 |
+
graftak
|
| 63 |
+
gras maaien
|
| 64 |
+
gratenkut
|
| 65 |
+
greppeldel
|
| 66 |
+
griet
|
| 67 |
+
hoempert
|
| 68 |
+
hoer
|
| 69 |
+
hoerenbuurt
|
| 70 |
+
hoerenloper
|
| 71 |
+
hoerig
|
| 72 |
+
hol
|
| 73 |
+
hufter
|
| 74 |
+
huisdealer
|
| 75 |
+
johny
|
| 76 |
+
kanen
|
| 77 |
+
kettingzeug
|
| 78 |
+
klaarkomen
|
| 79 |
+
klerebeer
|
| 80 |
+
klojo
|
| 81 |
+
klooien
|
| 82 |
+
klootjesvolk
|
| 83 |
+
klootoog
|
| 84 |
+
klootzak
|
| 85 |
+
kloten
|
| 86 |
+
knor
|
| 87 |
+
kont
|
| 88 |
+
kontneuken
|
| 89 |
+
krentekakker
|
| 90 |
+
kut
|
| 91 |
+
kuttelikkertje
|
| 92 |
+
kwakkie
|
| 93 |
+
liefdesgrot
|
| 94 |
+
lul
|
| 95 |
+
lul-de-behanger
|
| 96 |
+
lulhannes
|
| 97 |
+
lummel
|
| 98 |
+
mafketel
|
| 99 |
+
matennaaier
|
| 100 |
+
matje
|
| 101 |
+
mof
|
| 102 |
+
muts
|
| 103 |
+
naaien
|
| 104 |
+
naakt
|
| 105 |
+
neuken
|
| 106 |
+
neukstier
|
| 107 |
+
nicht
|
| 108 |
+
oetlul
|
| 109 |
+
opgeilen
|
| 110 |
+
opkankeren
|
| 111 |
+
oprotten
|
| 112 |
+
opsodemieteren
|
| 113 |
+
op z'n hondjes
|
| 114 |
+
op z'n sodemieter geven
|
| 115 |
+
opzouten
|
| 116 |
+
ouwehoer
|
| 117 |
+
ouwehoeren
|
| 118 |
+
ouwe rukker
|
| 119 |
+
paal
|
| 120 |
+
paardelul
|
| 121 |
+
palen
|
| 122 |
+
penoze
|
| 123 |
+
piesen
|
| 124 |
+
pijpbekkieg
|
| 125 |
+
pijpen
|
| 126 |
+
pik
|
| 127 |
+
pleurislaaier
|
| 128 |
+
poep
|
| 129 |
+
poepen
|
| 130 |
+
poot
|
| 131 |
+
portiekslet
|
| 132 |
+
pot
|
| 133 |
+
potverdorie
|
| 134 |
+
publiciteitsgeil
|
| 135 |
+
raaskallen
|
| 136 |
+
reet
|
| 137 |
+
reetridder
|
| 138 |
+
reet trappen, voor zijn
|
| 139 |
+
remsporen
|
| 140 |
+
reutelen
|
| 141 |
+
rothoer
|
| 142 |
+
rotzak
|
| 143 |
+
rukhond
|
| 144 |
+
rukken
|
| 145 |
+
schatje
|
| 146 |
+
schijt
|
| 147 |
+
schijten
|
| 148 |
+
schoft
|
| 149 |
+
schuinsmarcheerder
|
| 150 |
+
shit
|
| 151 |
+
slempen
|
| 152 |
+
slet
|
| 153 |
+
sletterig
|
| 154 |
+
slik mijn zaad
|
| 155 |
+
snol
|
| 156 |
+
spuiten
|
| 157 |
+
standje
|
| 158 |
+
standje-69
|
| 159 |
+
stoephoer
|
| 160 |
+
stootje
|
| 161 |
+
stront
|
| 162 |
+
sufferd
|
| 163 |
+
tapijtnek
|
| 164 |
+
teef
|
| 165 |
+
temeier
|
| 166 |
+
teringlijer
|
| 167 |
+
toeter
|
| 168 |
+
tongzoeng
|
| 169 |
+
triootjeg
|
| 170 |
+
trottoir prostituée
|
| 171 |
+
trottoirteef
|
| 172 |
+
vergallen
|
| 173 |
+
verkloten
|
| 174 |
+
verneuken
|
| 175 |
+
viespeuk
|
| 176 |
+
vingeren
|
| 177 |
+
vleesroos
|
| 178 |
+
voor jan lul
|
| 179 |
+
voor jan-met-de-korte-achternaam
|
| 180 |
+
watje
|
| 181 |
+
welzijnsmafia
|
| 182 |
+
wijf
|
| 183 |
+
wippen
|
| 184 |
+
wuftje
|
| 185 |
+
zaadje
|
| 186 |
+
zakkenwasser
|
| 187 |
+
zeiken
|
| 188 |
+
zeiker
|
| 189 |
+
zuigen
|
| 190 |
+
zuiplap
|
app/profanity/no.txt
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
asshole
|
| 2 |
+
dritt
|
| 3 |
+
drittsekk
|
| 4 |
+
faen
|
| 5 |
+
faen i helvete
|
| 6 |
+
fan
|
| 7 |
+
fanken
|
| 8 |
+
fitte
|
| 9 |
+
forbanna
|
| 10 |
+
forbannet
|
| 11 |
+
forjævlig
|
| 12 |
+
fuck
|
| 13 |
+
fy faen
|
| 14 |
+
føkk
|
| 15 |
+
føkka
|
| 16 |
+
føkkings
|
| 17 |
+
jævla
|
| 18 |
+
jævlig
|
| 19 |
+
helvete
|
| 20 |
+
helvetet
|
| 21 |
+
kuk
|
| 22 |
+
kukene
|
| 23 |
+
kuker
|
| 24 |
+
morraknuller
|
| 25 |
+
morrapuler
|
| 26 |
+
nigger
|
| 27 |
+
pakkis
|
| 28 |
+
pikk
|
| 29 |
+
pokker
|
| 30 |
+
ræva
|
| 31 |
+
ræven
|
| 32 |
+
satan
|
| 33 |
+
shit
|
| 34 |
+
sinnsykt
|
| 35 |
+
skitt
|
| 36 |
+
sotrør
|
| 37 |
+
ståpikk
|
| 38 |
+
ståpikkene
|
| 39 |
+
ståpikker
|
| 40 |
+
svartheiteste
|
app/profanity/pl.txt
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
burdel
|
| 2 |
+
burdelmama
|
| 3 |
+
chuj
|
| 4 |
+
chujnia
|
| 5 |
+
ciota
|
| 6 |
+
cipa
|
| 7 |
+
cyc
|
| 8 |
+
debil
|
| 9 |
+
dmuchać
|
| 10 |
+
do kurwy nędzy
|
| 11 |
+
dupa
|
| 12 |
+
dupek
|
| 13 |
+
duperele
|
| 14 |
+
dziwka
|
| 15 |
+
fiut
|
| 16 |
+
gówno
|
| 17 |
+
gówno prawda
|
| 18 |
+
huj
|
| 19 |
+
huj ci w dupę
|
| 20 |
+
jajco
|
| 21 |
+
jajko
|
| 22 |
+
ja pierdolę
|
| 23 |
+
jebać
|
| 24 |
+
jebany
|
| 25 |
+
kurwa
|
| 26 |
+
kurwy
|
| 27 |
+
kutafon
|
| 28 |
+
kutas
|
| 29 |
+
lizać pałę
|
| 30 |
+
obciągać chuja
|
| 31 |
+
obciągać fiuta
|
| 32 |
+
obciągać loda
|
| 33 |
+
pieprzyć
|
| 34 |
+
pierdolec
|
| 35 |
+
pierdolić
|
| 36 |
+
pierdolnąć
|
| 37 |
+
pierdolnięty
|
| 38 |
+
pierdoła
|
| 39 |
+
pierdzieć
|
| 40 |
+
pizda
|
| 41 |
+
pojeb
|
| 42 |
+
pojebany
|
| 43 |
+
popierdolony
|
| 44 |
+
robic loda
|
| 45 |
+
robić loda
|
| 46 |
+
ruchać
|
| 47 |
+
rzygać
|
| 48 |
+
skurwysyn
|
| 49 |
+
sraczka
|
| 50 |
+
srać
|
| 51 |
+
suka
|
| 52 |
+
syf
|
| 53 |
+
wkurwiać
|
| 54 |
+
zajebisty
|
app/profanity/pt.txt
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
aborto
|
| 2 |
+
amador
|
| 3 |
+
ânus
|
| 4 |
+
aranha
|
| 5 |
+
ariano
|
| 6 |
+
balalao
|
| 7 |
+
bastardo
|
| 8 |
+
bicha
|
| 9 |
+
biscate
|
| 10 |
+
bissexual
|
| 11 |
+
boceta
|
| 12 |
+
boob
|
| 13 |
+
bosta
|
| 14 |
+
braulio de borracha
|
| 15 |
+
bumbum
|
| 16 |
+
burro
|
| 17 |
+
cabrao
|
| 18 |
+
cacete
|
| 19 |
+
cagar
|
| 20 |
+
camisinha
|
| 21 |
+
caralho
|
| 22 |
+
cerveja
|
| 23 |
+
chochota
|
| 24 |
+
chupar
|
| 25 |
+
clitoris
|
| 26 |
+
cocaína
|
| 27 |
+
coito
|
| 28 |
+
colhoes
|
| 29 |
+
comer
|
| 30 |
+
cona
|
| 31 |
+
consolo
|
| 32 |
+
corno
|
| 33 |
+
cu
|
| 34 |
+
dar o rabo
|
| 35 |
+
dum raio
|
| 36 |
+
esporra
|
| 37 |
+
fecal
|
| 38 |
+
filho da puta
|
| 39 |
+
foda
|
| 40 |
+
foda-se
|
| 41 |
+
foder
|
| 42 |
+
frango assado
|
| 43 |
+
gozar
|
| 44 |
+
grelho
|
| 45 |
+
heroína
|
| 46 |
+
heterosexual
|
| 47 |
+
homem gay
|
| 48 |
+
homoerótico
|
| 49 |
+
homosexual
|
| 50 |
+
inferno
|
| 51 |
+
lésbica
|
| 52 |
+
lolita
|
| 53 |
+
mama
|
| 54 |
+
merda
|
| 55 |
+
paneleiro
|
| 56 |
+
passar um cheque
|
| 57 |
+
pau
|
| 58 |
+
peidar
|
| 59 |
+
pênis
|
| 60 |
+
pinto
|
| 61 |
+
porra
|
| 62 |
+
puta
|
| 63 |
+
puta que pariu
|
| 64 |
+
puta que te pariu
|
| 65 |
+
queca
|
| 66 |
+
sacanagem
|
| 67 |
+
saco
|
| 68 |
+
torneira
|
| 69 |
+
transar
|
| 70 |
+
vadia
|
| 71 |
+
vai-te foder
|
| 72 |
+
vai tomar no cu
|
| 73 |
+
veado
|
| 74 |
+
vibrador
|
| 75 |
+
xana
|
| 76 |
+
xochota
|
app/profanity/ru.txt
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
bychara
|
| 2 |
+
byk
|
| 3 |
+
chernozhopyi
|
| 4 |
+
dolboy'eb
|
| 5 |
+
ebalnik
|
| 6 |
+
ebalo
|
| 7 |
+
ebalom sch'elkat
|
| 8 |
+
gol
|
| 9 |
+
mudack
|
| 10 |
+
opizdenet
|
| 11 |
+
osto'eblo
|
| 12 |
+
ostokhuitel'no
|
| 13 |
+
ot'ebis
|
| 14 |
+
otmudohat
|
| 15 |
+
otpizdit
|
| 16 |
+
otsosi
|
| 17 |
+
padlo
|
| 18 |
+
pedik
|
| 19 |
+
perdet
|
| 20 |
+
petuh
|
| 21 |
+
pidar gnoinyj
|
| 22 |
+
pizda
|
| 23 |
+
pizdato
|
| 24 |
+
pizdatyi
|
| 25 |
+
piz'det
|
| 26 |
+
pizdetc
|
| 27 |
+
pizdoi nakryt'sja
|
| 28 |
+
pizd'uk
|
| 29 |
+
piz`dyulina
|
| 30 |
+
podi ku'evo
|
| 31 |
+
poeben
|
| 32 |
+
po'imat' na konchik
|
| 33 |
+
po'iti posrat
|
| 34 |
+
po khuy
|
| 35 |
+
poluchit pizdy
|
| 36 |
+
pososi moyu konfetku
|
| 37 |
+
prissat
|
| 38 |
+
proebat
|
| 39 |
+
promudobl'adsksya pizdopro'ebina
|
| 40 |
+
propezdoloch
|
| 41 |
+
prosrat
|
| 42 |
+
raspeezdeyi
|
| 43 |
+
raspizdatyi
|
| 44 |
+
raz'yebuy
|
| 45 |
+
raz'yoba
|
| 46 |
+
s'ebat'sya
|
| 47 |
+
shalava
|
| 48 |
+
styervo
|
| 49 |
+
sukin syn
|
| 50 |
+
svodit posrat
|
| 51 |
+
svoloch
|
| 52 |
+
trakhat'sya
|
| 53 |
+
trimandoblydskiy pizdoproyob
|
| 54 |
+
ubl'yudok
|
| 55 |
+
uboy
|
| 56 |
+
u'ebitsche
|
| 57 |
+
vafl'a
|
| 58 |
+
vafli lovit
|
| 59 |
+
v pizdu
|
| 60 |
+
vyperdysh
|
| 61 |
+
vzdrochennyi
|
| 62 |
+
yeb vas
|
| 63 |
+
za'ebat
|
| 64 |
+
zaebis
|
| 65 |
+
zalupa
|
| 66 |
+
zalupat
|
| 67 |
+
zasranetc
|
| 68 |
+
zassat
|
| 69 |
+
zlo'ebuchy
|
| 70 |
+
бздёнок
|
| 71 |
+
блядки
|
| 72 |
+
блядовать
|
| 73 |
+
блядство
|
| 74 |
+
блядь
|
| 75 |
+
бугор
|
| 76 |
+
во пизду
|
| 77 |
+
встать раком
|
| 78 |
+
выёбываться
|
| 79 |
+
гандон
|
| 80 |
+
говно
|
| 81 |
+
говнюк
|
| 82 |
+
голый
|
| 83 |
+
дать пизды
|
| 84 |
+
дерьмо
|
| 85 |
+
дрочить
|
| 86 |
+
другой дразнится
|
| 87 |
+
ёбарь
|
| 88 |
+
ебать
|
| 89 |
+
ебать-копать
|
| 90 |
+
ебло
|
| 91 |
+
ебнуть
|
| 92 |
+
ёб твою мать
|
| 93 |
+
жопа
|
| 94 |
+
жополиз
|
| 95 |
+
играть на кожаной флейте
|
| 96 |
+
измудохать
|
| 97 |
+
каждый дрочит как он хочет
|
| 98 |
+
какая разница
|
| 99 |
+
как два пальца обоссать
|
| 100 |
+
курите мою трубку
|
| 101 |
+
лысого в кулаке гонять
|
| 102 |
+
малофья
|
| 103 |
+
манда
|
| 104 |
+
мандавошка
|
| 105 |
+
мент
|
| 106 |
+
муда
|
| 107 |
+
мудило
|
| 108 |
+
мудозвон
|
| 109 |
+
наебать
|
| 110 |
+
наебениться
|
| 111 |
+
наебнуться
|
| 112 |
+
на фиг
|
| 113 |
+
на хуй
|
| 114 |
+
на хую вертеть
|
| 115 |
+
на хуя
|
| 116 |
+
нахуячиться
|
| 117 |
+
невебенный
|
| 118 |
+
не ебет
|
| 119 |
+
ни за хуй собачу
|
| 120 |
+
ни хуя
|
| 121 |
+
обнаженный
|
| 122 |
+
обоссаться можно
|
| 123 |
+
один ебётся
|
| 124 |
+
опесдол
|
| 125 |
+
офигеть
|
| 126 |
+
охуеть
|
| 127 |
+
охуительно
|
| 128 |
+
половое сношение
|
| 129 |
+
секс
|
| 130 |
+
сиськи
|
| 131 |
+
спиздить
|
| 132 |
+
срать
|
| 133 |
+
ссать
|
| 134 |
+
траxать
|
| 135 |
+
ты мне ваньку не валяй
|
| 136 |
+
фига
|
| 137 |
+
хапать
|
| 138 |
+
хер с ней
|
| 139 |
+
хер с ним
|
| 140 |
+
хохол
|
| 141 |
+
хрен
|
| 142 |
+
хуёво
|
| 143 |
+
хуёвый
|
| 144 |
+
хуем груши околачивать
|
| 145 |
+
хуеплет
|
| 146 |
+
хуило
|
| 147 |
+
хуиней страдать
|
| 148 |
+
хуиня
|
| 149 |
+
хуй
|
| 150 |
+
хуйнуть
|
| 151 |
+
хуй пинать
|
app/profanity/sv.txt
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
arsle
|
| 2 |
+
brutta
|
| 3 |
+
discofitta
|
| 4 |
+
dra åt helvete
|
| 5 |
+
fan
|
| 6 |
+
fitta
|
| 7 |
+
fittig
|
| 8 |
+
för helvete
|
| 9 |
+
helvete
|
| 10 |
+
hård
|
| 11 |
+
jävlar
|
| 12 |
+
knulla
|
| 13 |
+
kuk
|
| 14 |
+
kuksås
|
| 15 |
+
kötthuvud
|
| 16 |
+
köttnacke
|
| 17 |
+
moona
|
| 18 |
+
moonade
|
| 19 |
+
moonar
|
| 20 |
+
moonat
|
| 21 |
+
mutta
|
| 22 |
+
nigger
|
| 23 |
+
neger
|
| 24 |
+
olla
|
| 25 |
+
pippa
|
| 26 |
+
pitt
|
| 27 |
+
prutt
|
| 28 |
+
pök
|
| 29 |
+
runka
|
| 30 |
+
röv
|
| 31 |
+
rövhål
|
| 32 |
+
rövknulla
|
| 33 |
+
satan
|
| 34 |
+
skita
|
| 35 |
+
skit ner dig
|
| 36 |
+
skäggbiff
|
| 37 |
+
snedfitta
|
| 38 |
+
snefitta
|
| 39 |
+
stake
|
| 40 |
+
subba
|
| 41 |
+
sås
|
| 42 |
+
sätta på
|
| 43 |
+
tusan
|
app/profanity/th.txt
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
กระดอ
|
| 2 |
+
กระเด้า
|
| 3 |
+
กระหรี่
|
| 4 |
+
กะปิ
|
| 5 |
+
กู
|
| 6 |
+
ขี้
|
| 7 |
+
ควย
|
| 8 |
+
จิ๋ม
|
| 9 |
+
จู๋
|
| 10 |
+
เจ๊ก
|
| 11 |
+
เจี๊ยว
|
| 12 |
+
ดอกทอง
|
| 13 |
+
ตอแหล
|
| 14 |
+
ตูด
|
| 15 |
+
น้ําแตก
|
| 16 |
+
มึง
|
| 17 |
+
แม่ง
|
| 18 |
+
เย็ด
|
| 19 |
+
รูตูด
|
| 20 |
+
ล้างตู้เย็น
|
| 21 |
+
ส้นตีน
|
| 22 |
+
สัด
|
| 23 |
+
เสือก
|
| 24 |
+
หญิงชาติชั่ว
|
| 25 |
+
หลั่ง
|
| 26 |
+
ห่า
|
| 27 |
+
หํา
|
| 28 |
+
หี
|
| 29 |
+
เหี้ย
|
| 30 |
+
อมนกเขา
|
| 31 |
+
ไอ้ควาย
|
app/profanity/tr.txt
ADDED
|
@@ -0,0 +1,142 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
am
|
| 2 |
+
amcığa
|
| 3 |
+
amcığı
|
| 4 |
+
amcığın
|
| 5 |
+
amcık
|
| 6 |
+
amcıklar
|
| 7 |
+
amcıklara
|
| 8 |
+
amcıklarda
|
| 9 |
+
amcıklardan
|
| 10 |
+
amcıkları
|
| 11 |
+
amcıkların
|
| 12 |
+
amcıkta
|
| 13 |
+
amcıktan
|
| 14 |
+
amı
|
| 15 |
+
amlar
|
| 16 |
+
çingene
|
| 17 |
+
Çingenede
|
| 18 |
+
Çingeneden
|
| 19 |
+
Çingeneler
|
| 20 |
+
Çingenelerde
|
| 21 |
+
Çingenelerden
|
| 22 |
+
Çingenelere
|
| 23 |
+
Çingeneleri
|
| 24 |
+
Çingenelerin
|
| 25 |
+
Çingenenin
|
| 26 |
+
Çingeneye
|
| 27 |
+
Çingeneyi
|
| 28 |
+
göt
|
| 29 |
+
göte
|
| 30 |
+
götler
|
| 31 |
+
götlerde
|
| 32 |
+
götlerden
|
| 33 |
+
götlere
|
| 34 |
+
götleri
|
| 35 |
+
götlerin
|
| 36 |
+
götte
|
| 37 |
+
götten
|
| 38 |
+
götü
|
| 39 |
+
götün
|
| 40 |
+
götveren
|
| 41 |
+
götverende
|
| 42 |
+
götverenden
|
| 43 |
+
götverene
|
| 44 |
+
götvereni
|
| 45 |
+
götverenin
|
| 46 |
+
götverenler
|
| 47 |
+
götverenlerde
|
| 48 |
+
götverenlerden
|
| 49 |
+
götverenlere
|
| 50 |
+
götverenleri
|
| 51 |
+
götverenlerin
|
| 52 |
+
kaltağa
|
| 53 |
+
kaltağı
|
| 54 |
+
kaltağın
|
| 55 |
+
kaltak
|
| 56 |
+
kaltaklar
|
| 57 |
+
kaltaklara
|
| 58 |
+
kaltaklarda
|
| 59 |
+
kaltaklardan
|
| 60 |
+
kaltakları
|
| 61 |
+
kaltakların
|
| 62 |
+
kaltakta
|
| 63 |
+
kaltaktan
|
| 64 |
+
orospu
|
| 65 |
+
orospuda
|
| 66 |
+
orospudan
|
| 67 |
+
orospular
|
| 68 |
+
orospulara
|
| 69 |
+
orospularda
|
| 70 |
+
orospulardan
|
| 71 |
+
orospuları
|
| 72 |
+
orospuların
|
| 73 |
+
orospunun
|
| 74 |
+
orospuya
|
| 75 |
+
orospuyu
|
| 76 |
+
otuz birci
|
| 77 |
+
otuz bircide
|
| 78 |
+
otuz birciden
|
| 79 |
+
otuz birciler
|
| 80 |
+
otuz bircilerde
|
| 81 |
+
otuz bircilerden
|
| 82 |
+
otuz bircilere
|
| 83 |
+
otuz bircileri
|
| 84 |
+
otuz bircilerin
|
| 85 |
+
otuz bircinin
|
| 86 |
+
otuz birciye
|
| 87 |
+
otuz birciyi
|
| 88 |
+
saksocu
|
| 89 |
+
saksocuda
|
| 90 |
+
saksocudan
|
| 91 |
+
saksocular
|
| 92 |
+
saksoculara
|
| 93 |
+
saksocularda
|
| 94 |
+
saksoculardan
|
| 95 |
+
saksocuları
|
| 96 |
+
saksocuların
|
| 97 |
+
saksocunun
|
| 98 |
+
saksocuya
|
| 99 |
+
saksocuyu
|
| 100 |
+
sıçmak
|
| 101 |
+
sik
|
| 102 |
+
sike
|
| 103 |
+
siker sikmez
|
| 104 |
+
siki
|
| 105 |
+
sikilir sikilmez
|
| 106 |
+
sikin
|
| 107 |
+
sikler
|
| 108 |
+
siklerde
|
| 109 |
+
siklerden
|
| 110 |
+
siklere
|
| 111 |
+
sikleri
|
| 112 |
+
siklerin
|
| 113 |
+
sikmek
|
| 114 |
+
sikmemek
|
| 115 |
+
sikte
|
| 116 |
+
sikten
|
| 117 |
+
siktir
|
| 118 |
+
siktirir siktirmez
|
| 119 |
+
taşağa
|
| 120 |
+
taşağı
|
| 121 |
+
taşağın
|
| 122 |
+
taşak
|
| 123 |
+
taşaklar
|
| 124 |
+
taşaklara
|
| 125 |
+
taşaklarda
|
| 126 |
+
taşaklardan
|
| 127 |
+
taşakları
|
| 128 |
+
taşakların
|
| 129 |
+
taşakta
|
| 130 |
+
taşaktan
|
| 131 |
+
yarağa
|
| 132 |
+
yarağı
|
| 133 |
+
yarağın
|
| 134 |
+
yarak
|
| 135 |
+
yaraklar
|
| 136 |
+
yaraklara
|
| 137 |
+
yaraklarda
|
| 138 |
+
yaraklardan
|
| 139 |
+
yarakları
|
| 140 |
+
yarakların
|
| 141 |
+
yarakta
|
| 142 |
+
yaraktan
|
app/profanity/zh.txt
ADDED
|
@@ -0,0 +1,319 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
13.
|
| 2 |
+
13点
|
| 3 |
+
三级片
|
| 4 |
+
下三烂
|
| 5 |
+
下贱
|
| 6 |
+
个老子的
|
| 7 |
+
九游
|
| 8 |
+
乳
|
| 9 |
+
乳交
|
| 10 |
+
乳头
|
| 11 |
+
乳房
|
| 12 |
+
乳波臀浪
|
| 13 |
+
交配
|
| 14 |
+
仆街
|
| 15 |
+
他奶奶
|
| 16 |
+
他奶奶的
|
| 17 |
+
他奶娘的
|
| 18 |
+
他妈
|
| 19 |
+
他妈ㄉ王八蛋
|
| 20 |
+
他妈地
|
| 21 |
+
他妈的
|
| 22 |
+
他娘
|
| 23 |
+
他马的
|
| 24 |
+
你个傻比
|
| 25 |
+
你他马的
|
| 26 |
+
你全家
|
| 27 |
+
你奶奶的
|
| 28 |
+
你她马的
|
| 29 |
+
你妈
|
| 30 |
+
你妈的
|
| 31 |
+
你娘
|
| 32 |
+
你娘卡好
|
| 33 |
+
你娘咧
|
| 34 |
+
你它妈的
|
| 35 |
+
你它马的
|
| 36 |
+
你是鸡
|
| 37 |
+
你是鸭
|
| 38 |
+
你马的
|
| 39 |
+
做爱
|
| 40 |
+
傻比
|
| 41 |
+
傻逼
|
| 42 |
+
册那
|
| 43 |
+
军妓
|
| 44 |
+
几八
|
| 45 |
+
几叭
|
| 46 |
+
几巴
|
| 47 |
+
几芭
|
| 48 |
+
刚度
|
| 49 |
+
刚瘪三
|
| 50 |
+
包皮
|
| 51 |
+
十三点
|
| 52 |
+
卖B
|
| 53 |
+
卖比
|
| 54 |
+
卖淫
|
| 55 |
+
卵
|
| 56 |
+
卵子
|
| 57 |
+
双峰微颤
|
| 58 |
+
口交
|
| 59 |
+
口肯
|
| 60 |
+
叫床
|
| 61 |
+
吃屎
|
| 62 |
+
后庭
|
| 63 |
+
吹箫
|
| 64 |
+
塞你公
|
| 65 |
+
塞你娘
|
| 66 |
+
塞你母
|
| 67 |
+
塞你爸
|
| 68 |
+
塞你老师
|
| 69 |
+
塞你老母
|
| 70 |
+
处女
|
| 71 |
+
外阴
|
| 72 |
+
大卵子
|
| 73 |
+
大卵泡
|
| 74 |
+
大鸡巴
|
| 75 |
+
奶
|
| 76 |
+
奶奶的熊
|
| 77 |
+
奶子
|
| 78 |
+
奸
|
| 79 |
+
奸你
|
| 80 |
+
她妈地
|
| 81 |
+
她妈的
|
| 82 |
+
她马的
|
| 83 |
+
妈B
|
| 84 |
+
妈个B
|
| 85 |
+
妈个比
|
| 86 |
+
妈个老比
|
| 87 |
+
妈妈的
|
| 88 |
+
妈比
|
| 89 |
+
妈的
|
| 90 |
+
妈的B
|
| 91 |
+
妈逼
|
| 92 |
+
妓
|
| 93 |
+
妓女
|
| 94 |
+
妓院
|
| 95 |
+
妳她妈的
|
| 96 |
+
妳妈的
|
| 97 |
+
妳娘的
|
| 98 |
+
妳老母的
|
| 99 |
+
妳马的
|
| 100 |
+
姘头
|
| 101 |
+
姣西
|
| 102 |
+
姦
|
| 103 |
+
娘个比
|
| 104 |
+
娘的
|
| 105 |
+
婊子
|
| 106 |
+
婊子养的
|
| 107 |
+
嫖娼
|
| 108 |
+
嫖客
|
| 109 |
+
它妈地
|
| 110 |
+
它妈的
|
| 111 |
+
密洞
|
| 112 |
+
射你
|
| 113 |
+
射精
|
| 114 |
+
小乳头
|
| 115 |
+
小卵子
|
| 116 |
+
小卵泡
|
| 117 |
+
小瘪三
|
| 118 |
+
小肉粒
|
| 119 |
+
小骚比
|
| 120 |
+
小骚货
|
| 121 |
+
小鸡巴
|
| 122 |
+
小鸡鸡
|
| 123 |
+
屁眼
|
| 124 |
+
屁股
|
| 125 |
+
屄
|
| 126 |
+
屌
|
| 127 |
+
巨乳
|
| 128 |
+
干x娘
|
| 129 |
+
干七八
|
| 130 |
+
干你
|
| 131 |
+
干你妈
|
| 132 |
+
干你娘
|
| 133 |
+
干你老母
|
| 134 |
+
干你良
|
| 135 |
+
干妳妈
|
| 136 |
+
干妳娘
|
| 137 |
+
干妳老母
|
| 138 |
+
干妳马
|
| 139 |
+
干您娘
|
| 140 |
+
干机掰
|
| 141 |
+
干死CS
|
| 142 |
+
干死GM
|
| 143 |
+
干死你
|
| 144 |
+
干死客服
|
| 145 |
+
幹
|
| 146 |
+
强奸
|
| 147 |
+
强奸你
|
| 148 |
+
性
|
| 149 |
+
性交
|
| 150 |
+
性器
|
| 151 |
+
性无能
|
| 152 |
+
性爱
|
| 153 |
+
情色
|
| 154 |
+
想上你
|
| 155 |
+
懆您妈
|
| 156 |
+
懆您娘
|
| 157 |
+
懒8
|
| 158 |
+
懒八
|
| 159 |
+
懒叫
|
| 160 |
+
懒教
|
| 161 |
+
成人
|
| 162 |
+
我操你祖宗十八代
|
| 163 |
+
扒光
|
| 164 |
+
打炮
|
| 165 |
+
打飞机
|
| 166 |
+
抽插
|
| 167 |
+
招妓
|
| 168 |
+
插你
|
| 169 |
+
插死你
|
| 170 |
+
撒尿
|
| 171 |
+
操你
|
| 172 |
+
操你全家
|
| 173 |
+
操你奶奶
|
| 174 |
+
操你妈
|
| 175 |
+
操你娘
|
| 176 |
+
操你祖宗
|
| 177 |
+
操你老妈
|
| 178 |
+
操你老母
|
| 179 |
+
操妳
|
| 180 |
+
操妳全家
|
| 181 |
+
操妳妈
|
| 182 |
+
操妳娘
|
| 183 |
+
操妳祖宗
|
| 184 |
+
操机掰
|
| 185 |
+
操比
|
| 186 |
+
操逼
|
| 187 |
+
放荡
|
| 188 |
+
日他娘
|
| 189 |
+
日你
|
| 190 |
+
日你妈
|
| 191 |
+
日你老娘
|
| 192 |
+
日你老母
|
| 193 |
+
日批
|
| 194 |
+
月经
|
| 195 |
+
机八
|
| 196 |
+
机巴
|
| 197 |
+
机机歪歪
|
| 198 |
+
杂种
|
| 199 |
+
浪叫
|
| 200 |
+
淫
|
| 201 |
+
淫乱
|
| 202 |
+
淫妇
|
| 203 |
+
淫棍
|
| 204 |
+
淫水
|
| 205 |
+
淫秽
|
| 206 |
+
淫荡
|
| 207 |
+
淫西
|
| 208 |
+
湿透的内裤
|
| 209 |
+
激情
|
| 210 |
+
灨你娘
|
| 211 |
+
烂货
|
| 212 |
+
烂逼
|
| 213 |
+
爛
|
| 214 |
+
狗屁
|
| 215 |
+
狗日
|
| 216 |
+
狗狼养的
|
| 217 |
+
玉杵
|
| 218 |
+
王八蛋
|
| 219 |
+
瓜娃子
|
| 220 |
+
瓜婆娘
|
| 221 |
+
瓜批
|
| 222 |
+
瘪三
|
| 223 |
+
白烂
|
| 224 |
+
白痴
|
| 225 |
+
白癡
|
| 226 |
+
祖宗
|
| 227 |
+
私服
|
| 228 |
+
笨蛋
|
| 229 |
+
精子
|
| 230 |
+
老二
|
| 231 |
+
老味
|
| 232 |
+
老母
|
| 233 |
+
老瘪三
|
| 234 |
+
老骚比
|
| 235 |
+
老骚货
|
| 236 |
+
肉壁
|
| 237 |
+
肉棍子
|
| 238 |
+
肉棒
|
| 239 |
+
肉缝
|
| 240 |
+
肏
|
| 241 |
+
肛交
|
| 242 |
+
肥西
|
| 243 |
+
色情
|
| 244 |
+
花柳
|
| 245 |
+
荡妇
|
| 246 |
+
賤
|
| 247 |
+
贝肉
|
| 248 |
+
贱B
|
| 249 |
+
贱人
|
| 250 |
+
贱货
|
| 251 |
+
贼你妈
|
| 252 |
+
赛你老母
|
| 253 |
+
赛妳阿母
|
| 254 |
+
赣您娘
|
| 255 |
+
轮奸
|
| 256 |
+
迷药
|
| 257 |
+
逼
|
| 258 |
+
逼样
|
| 259 |
+
野鸡
|
| 260 |
+
阳具
|
| 261 |
+
阳萎
|
| 262 |
+
阴唇
|
| 263 |
+
阴户
|
| 264 |
+
阴核
|
| 265 |
+
阴毛
|
| 266 |
+
阴茎
|
| 267 |
+
阴道
|
| 268 |
+
阴部
|
| 269 |
+
雞巴
|
| 270 |
+
靠北
|
| 271 |
+
靠母
|
| 272 |
+
靠爸
|
| 273 |
+
靠背
|
| 274 |
+
靠腰
|
| 275 |
+
驶你公
|
| 276 |
+
驶你娘
|
| 277 |
+
驶你母
|
| 278 |
+
驶你爸
|
| 279 |
+
驶你老师
|
| 280 |
+
驶你老母
|
| 281 |
+
骚比
|
| 282 |
+
骚货
|
| 283 |
+
骚逼
|
| 284 |
+
鬼公
|
| 285 |
+
鸡8
|
| 286 |
+
鸡八
|
| 287 |
+
鸡叭
|
| 288 |
+
鸡吧
|
| 289 |
+
鸡奸
|
| 290 |
+
鸡巴
|
| 291 |
+
鸡芭
|
| 292 |
+
鸡鸡
|
| 293 |
+
龟儿子
|
| 294 |
+
龟头
|
| 295 |
+
𨳒
|
| 296 |
+
陰莖
|
| 297 |
+
㞗
|
| 298 |
+
尻
|
| 299 |
+
𨳊
|
| 300 |
+
鳩
|
| 301 |
+
𡳞
|
| 302 |
+
𨶙
|
| 303 |
+
撚
|
| 304 |
+
𨳍
|
| 305 |
+
柒
|
| 306 |
+
閪
|
| 307 |
+
仆街
|
| 308 |
+
咸家鏟
|
| 309 |
+
冚家鏟
|
| 310 |
+
咸家伶
|
| 311 |
+
冚家拎
|
| 312 |
+
笨實
|
| 313 |
+
粉腸
|
| 314 |
+
屎忽
|
| 315 |
+
躝癱
|
| 316 |
+
你老闆
|
| 317 |
+
你老味
|
| 318 |
+
你老母
|
| 319 |
+
硬膠
|
app/server.py
CHANGED
|
@@ -102,10 +102,16 @@ async def create_job(
|
|
| 102 |
lipsync: str = Form("0"),
|
| 103 |
agree: str = Form(""),
|
| 104 |
voice_consent: str = Form(""),
|
|
|
|
|
|
|
| 105 |
file: UploadFile | None = File(None),
|
| 106 |
):
|
|
|
|
|
|
|
| 107 |
if agree != "1":
|
| 108 |
raise HTTPException(400, "Please confirm you have the right to use this video and accept the Terms.")
|
|
|
|
|
|
|
| 109 |
if clone == "1" and voice_consent != "1":
|
| 110 |
clone = "0" # never clone a voice without the user's permission statement
|
| 111 |
if target not in languages.LANGS:
|
|
@@ -141,14 +147,16 @@ async def create_job(
|
|
| 141 |
job = {"id": job_id, "status": "queued", "step": "Waiting in line", "progress": 0.0,
|
| 142 |
"created": time.time(), "input": file.filename if file and file.filename else url.strip(),
|
| 143 |
"target": target, "ip": ip,
|
| 144 |
-
"consent": {"terms": TERMS_VERSION, "rights": True, "voice": clone == "1", "
|
|
|
|
| 145 |
JOBS[job_id] = job
|
| 146 |
_save(job)
|
| 147 |
kwargs = dict(source_path=src_path, url=url.strip() or None, target=target,
|
| 148 |
source_lang=source or None, engine=engine,
|
| 149 |
outputs=tuple(o for o in outputs.split(",") if o), quality=quality,
|
| 150 |
gender=gender, voice_engine=voice_engine, max_minutes=MAX_MINUTES,
|
| 151 |
-
clone=clone == "1", lipsync=lipsync == "1" and engines.lipsync_available()
|
|
|
|
| 152 |
pool.submit(_work, job_id, kwargs)
|
| 153 |
return {"id": job_id}
|
| 154 |
|
|
@@ -237,9 +245,14 @@ def teach_languages():
|
|
| 237 |
|
| 238 |
@app.post("/api/teach")
|
| 239 |
async def teach(request: Request, lang: str = Form(...), en: str = Form(...), text: str = Form(...),
|
| 240 |
-
token: str = Form(""), agree: str = Form(""),
|
|
|
|
| 241 |
if agree != "1":
|
| 242 |
raise HTTPException(400, "Please accept how we use your sentence and recording.")
|
|
|
|
|
|
|
|
|
|
|
|
|
| 243 |
if lang not in TEACH_LANGS:
|
| 244 |
raise HTTPException(400, "Unknown language")
|
| 245 |
en, text = en.strip()[:500], text.strip()[:500]
|
|
|
|
| 102 |
lipsync: str = Form("0"),
|
| 103 |
agree: str = Form(""),
|
| 104 |
voice_consent: str = Form(""),
|
| 105 |
+
age: str = Form(""),
|
| 106 |
+
clean: str = Form("0"),
|
| 107 |
file: UploadFile | None = File(None),
|
| 108 |
):
|
| 109 |
+
if age not in ("teen", "adult"):
|
| 110 |
+
raise HTTPException(400, "Please tell us your age group. SwitchLingo is for ages 13 and up.")
|
| 111 |
if agree != "1":
|
| 112 |
raise HTTPException(400, "Please confirm you have the right to use this video and accept the Terms.")
|
| 113 |
+
if age == "teen": # Teen mode (13-17): clean words, standard AI voice, no cloning/lip-sync/premium
|
| 114 |
+
clone, lipsync, clean, voice_engine = "0", "0", "1", "edge"
|
| 115 |
if clone == "1" and voice_consent != "1":
|
| 116 |
clone = "0" # never clone a voice without the user's permission statement
|
| 117 |
if target not in languages.LANGS:
|
|
|
|
| 147 |
job = {"id": job_id, "status": "queued", "step": "Waiting in line", "progress": 0.0,
|
| 148 |
"created": time.time(), "input": file.filename if file and file.filename else url.strip(),
|
| 149 |
"target": target, "ip": ip,
|
| 150 |
+
"consent": {"terms": TERMS_VERSION, "rights": True, "voice": clone == "1", "age": age,
|
| 151 |
+
"time": time.time()}}
|
| 152 |
JOBS[job_id] = job
|
| 153 |
_save(job)
|
| 154 |
kwargs = dict(source_path=src_path, url=url.strip() or None, target=target,
|
| 155 |
source_lang=source or None, engine=engine,
|
| 156 |
outputs=tuple(o for o in outputs.split(",") if o), quality=quality,
|
| 157 |
gender=gender, voice_engine=voice_engine, max_minutes=MAX_MINUTES,
|
| 158 |
+
clone=clone == "1", lipsync=lipsync == "1" and engines.lipsync_available(),
|
| 159 |
+
clean=clean == "1")
|
| 160 |
pool.submit(_work, job_id, kwargs)
|
| 161 |
return {"id": job_id}
|
| 162 |
|
|
|
|
| 245 |
|
| 246 |
@app.post("/api/teach")
|
| 247 |
async def teach(request: Request, lang: str = Form(...), en: str = Form(...), text: str = Form(...),
|
| 248 |
+
token: str = Form(""), agree: str = Form(""), age: str = Form(""),
|
| 249 |
+
audio: UploadFile | None = File(None)):
|
| 250 |
if agree != "1":
|
| 251 |
raise HTTPException(400, "Please accept how we use your sentence and recording.")
|
| 252 |
+
if age not in ("teen", "adult"):
|
| 253 |
+
raise HTTPException(400, "Please tell us your age group (13+).")
|
| 254 |
+
if age == "teen" and audio and audio.filename:
|
| 255 |
+
raise HTTPException(400, "Voice recordings are for ages 18+. You can still add the sentence as text.")
|
| 256 |
if lang not in TEACH_LANGS:
|
| 257 |
raise HTTPException(400, "Unknown language")
|
| 258 |
en, text = en.strip()[:500], text.strip()[:500]
|
app/static/index.html
CHANGED
|
@@ -70,6 +70,9 @@ td.t{white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums;wid
|
|
| 70 |
.prompt{font:600 18px Fraunces,Georgia,serif;margin:6px 0 10px}
|
| 71 |
#install{display:none}
|
| 72 |
.sw.hidden{display:none}
|
|
|
|
|
|
|
|
|
|
| 73 |
.agree{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin-top:12px;line-height:1.45}.agree input{margin-top:3px;flex:none;width:18px;height:18px}
|
| 74 |
footer a{color:var(--muted)}
|
| 75 |
@media (max-width:640px){
|
|
@@ -93,6 +96,10 @@ footer a{color:var(--muted)}
|
|
| 93 |
</section>
|
| 94 |
|
| 95 |
<section class="card">
|
|
|
|
|
|
|
|
|
|
|
|
|
| 96 |
<h2>1. Add your video or audio</h2>
|
| 97 |
<div class="tabs"><button id="tLink" class="on">🔗 Link</button><button id="tFile">📁 Upload</button><button id="tRec">🎤 Record</button></div>
|
| 98 |
<div id="pLink"><input id="url" type="url" inputmode="url" placeholder="Facebook, Instagram, TikTok, YouTube, X, or any website with a video"></div>
|
|
@@ -116,9 +123,12 @@ footer a{color:var(--muted)}
|
|
| 116 |
<label class="chk"><input type="checkbox" class="out" value="subs" checked> Subtitles on video</label>
|
| 117 |
<label class="chk"><input type="checkbox" class="out" value="dub" checked> Voice-over</label>
|
| 118 |
</div>
|
|
|
|
|
|
|
| 119 |
<label class="sw"><span><b>🎙️ Keep the speaker's voice</b><small>Voice-over sounds like the person in the video</small></span><input type="checkbox" id="clone" checked></label>
|
| 120 |
<label class="agree" id="vcWrap"><input type="checkbox" id="voiceConsent"> It's my own voice, or I have the speaker's permission to recreate their voice. I won't use it to impersonate or deceive anyone.</label>
|
| 121 |
<label class="sw hidden" id="lipWrap"><span><b>👄 Lip-sync <span class="badge">PRO</span></b><small>Mouths move with the new language (takes ~2 min longer)</small></span><input type="checkbox" id="lipsync"></label>
|
|
|
|
| 122 |
|
| 123 |
<details>
|
| 124 |
<summary>Options</summary>
|
|
@@ -130,7 +140,7 @@ footer a{color:var(--muted)}
|
|
| 130 |
<div><label class="lb" for="gender">Voice gender</label><select id="gender"><option>Female</option><option>Male</option></select></div>
|
| 131 |
</div>
|
| 132 |
</details>
|
| 133 |
-
<label class="agree"><input type="checkbox" id="agree"> I
|
| 134 |
<button id="go" class="btn">Translate</button>
|
| 135 |
<p class="muted" style="font-size:13px;margin:10px 0 0"><span id="limits"></span> Only use videos you have the right to share. Every video gets an "AI translated" label. AI voices, even cloned ones, are never the real person speaking. Translations can be wrong, so don't rely on them for medical, legal or immigration decisions.</p>
|
| 136 |
<div id="formErr" class="err"></div>
|
|
@@ -169,7 +179,7 @@ footer a{color:var(--muted)}
|
|
| 169 |
<div style="display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px">
|
| 170 |
<button type="button" class="btn ghost rec" id="recBtn">🎤 Record yourself saying it</button><audio id="recPlay" controls class="hidden" style="max-width:260px;margin:0"></audio>
|
| 171 |
</div>
|
| 172 |
-
<label class="agree"><input type="checkbox" name="agree" value="1" required>
|
| 173 |
<button class="btn" type="submit">Add my sentence</button> <span id="teachMsg" class="muted"></span>
|
| 174 |
</form>
|
| 175 |
<p class="muted" style="font-size:13px" id="teachStats"></p>
|
|
@@ -240,6 +250,8 @@ async function init(){
|
|
| 240 |
if(r.translators.includes("claude")) $("#engine").value="claude";
|
| 241 |
if(r.lipsync) $("#lipWrap").classList.remove("hidden");
|
| 242 |
const vc=()=>$("#vcWrap").style.display=$("#clone").checked?"flex":"none"; $("#clone").onchange=vc; vc();
|
|
|
|
|
|
|
| 243 |
const qs=new URLSearchParams(location.search), shared=qs.get("url")||qs.get("text")||"";
|
| 244 |
const m=shared.match(/https?:\/\/\S+/); if(m){ setMode("link"); $("#url").value=m[0]; $("#go").scrollIntoView({behavior:"smooth",block:"center"}); }
|
| 245 |
initTeach();
|
|
@@ -258,7 +270,11 @@ $("#go").onclick=async()=>{
|
|
| 258 |
quality:$("#quality").value,gender:$("#gender").value,voice_engine:$("#voice").value,
|
| 259 |
clone:$("#clone").checked?"1":"0",lipsync:$("#lipsync").checked?"1":"0"}).forEach(([k,v])=>fd.append(k,v));
|
| 260 |
if(!$("#agree").checked) return $("#formErr").textContent="Please check the box to confirm you have the right to use this video.";
|
| 261 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 262 |
fd.append("agree","1"); fd.append("voice_consent",$("#voiceConsent").checked?"1":"0");
|
| 263 |
$("#go").disabled=true; $("#go").textContent="Uploading…";
|
| 264 |
try{
|
|
@@ -322,6 +338,17 @@ async function loadJobs(){
|
|
| 322 |
$("#reqForm").onsubmit=async e=>{ e.preventDefault();
|
| 323 |
const r=await fetch("/api/language-requests",{method:"POST",body:new FormData(e.target)});
|
| 324 |
$("#reqMsg").textContent=r.ok?"Thanks, request saved.":"Couldn't save, try again."; if(r.ok) e.target.reset(); };
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 325 |
let recBlob=null, recorder=null, PROMPTS=[];
|
| 326 |
async function initTeach(){
|
| 327 |
const r=await (await fetch("/api/teach/languages")).json(); PROMPTS=r.prompts;
|
|
@@ -346,7 +373,8 @@ $("#recBtn").onclick=async()=>{
|
|
| 346 |
}catch(e){ $("#teachMsg").textContent="Microphone not allowed. You can still type it."; }
|
| 347 |
};
|
| 348 |
$("#teachForm").onsubmit=async e=>{ e.preventDefault();
|
| 349 |
-
const
|
|
|
|
| 350 |
if(recBlob) fd.append("audio",recBlob,"rec."+((recBlob.type.split("/")[1]||"webm").split(";")[0]));
|
| 351 |
const r=await fetch("/api/teach",{method:"POST",body:fd});
|
| 352 |
$("#teachMsg").textContent=r.ok?"Thank you! 🙏 Added.":"Couldn't save, try again.";
|
|
|
|
| 70 |
.prompt{font:600 18px Fraunces,Georgia,serif;margin:6px 0 10px}
|
| 71 |
#install{display:none}
|
| 72 |
.sw.hidden{display:none}
|
| 73 |
+
.agebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}.agebar select{width:auto;min-width:150px}
|
| 74 |
+
.teen .adultOnly{display:none}.teen #recBtn{display:none}
|
| 75 |
+
.teenbadge{display:inline-block;background:var(--soft);color:var(--ok);border-radius:99px;padding:2px 10px;font-size:13px;font-weight:600}
|
| 76 |
.agree{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin-top:12px;line-height:1.45}.agree input{margin-top:3px;flex:none;width:18px;height:18px}
|
| 77 |
footer a{color:var(--muted)}
|
| 78 |
@media (max-width:640px){
|
|
|
|
| 96 |
</section>
|
| 97 |
|
| 98 |
<section class="card">
|
| 99 |
+
<div class="agebar"><label class="lb" for="age" style="margin:0">Your age</label>
|
| 100 |
+
<select id="age"><option value="">Choose…</option><option value="teen">13–17</option><option value="adult">18 or older</option><option value="kid">Under 13</option></select>
|
| 101 |
+
<span id="ageNote" class="muted"></span></div>
|
| 102 |
+
<div id="kidMsg" class="err hidden">Sorry, SwitchLingo is for ages 13 and up. Ask a parent or teacher to help you.</div>
|
| 103 |
<h2>1. Add your video or audio</h2>
|
| 104 |
<div class="tabs"><button id="tLink" class="on">🔗 Link</button><button id="tFile">📁 Upload</button><button id="tRec">🎤 Record</button></div>
|
| 105 |
<div id="pLink"><input id="url" type="url" inputmode="url" placeholder="Facebook, Instagram, TikTok, YouTube, X, or any website with a video"></div>
|
|
|
|
| 123 |
<label class="chk"><input type="checkbox" class="out" value="subs" checked> Subtitles on video</label>
|
| 124 |
<label class="chk"><input type="checkbox" class="out" value="dub" checked> Voice-over</label>
|
| 125 |
</div>
|
| 126 |
+
<label class="sw" id="cleanWrap"><span><b>🧼 Clean mode</b><small>Hides swear words in subtitles and skips them in the voice-over</small></span><input type="checkbox" id="clean"></label>
|
| 127 |
+
<div class="adultOnly">
|
| 128 |
<label class="sw"><span><b>🎙️ Keep the speaker's voice</b><small>Voice-over sounds like the person in the video</small></span><input type="checkbox" id="clone" checked></label>
|
| 129 |
<label class="agree" id="vcWrap"><input type="checkbox" id="voiceConsent"> It's my own voice, or I have the speaker's permission to recreate their voice. I won't use it to impersonate or deceive anyone.</label>
|
| 130 |
<label class="sw hidden" id="lipWrap"><span><b>👄 Lip-sync <span class="badge">PRO</span></b><small>Mouths move with the new language (takes ~2 min longer)</small></span><input type="checkbox" id="lipsync"></label>
|
| 131 |
+
</div>
|
| 132 |
|
| 133 |
<details>
|
| 134 |
<summary>Options</summary>
|
|
|
|
| 140 |
<div><label class="lb" for="gender">Voice gender</label><select id="gender"><option>Female</option><option>Male</option></select></div>
|
| 141 |
</div>
|
| 142 |
</details>
|
| 143 |
+
<label class="agree"><input type="checkbox" id="agree"> I made this video, own it or have permission to use it, and I agree to the <a href="terms.html" target="_blank">Terms</a> and <a href="privacy.html" target="_blank">Privacy Policy</a>.</label>
|
| 144 |
<button id="go" class="btn">Translate</button>
|
| 145 |
<p class="muted" style="font-size:13px;margin:10px 0 0"><span id="limits"></span> Only use videos you have the right to share. Every video gets an "AI translated" label. AI voices, even cloned ones, are never the real person speaking. Translations can be wrong, so don't rely on them for medical, legal or immigration decisions.</p>
|
| 146 |
<div id="formErr" class="err"></div>
|
|
|
|
| 179 |
<div style="display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px">
|
| 180 |
<button type="button" class="btn ghost rec" id="recBtn">🎤 Record yourself saying it</button><audio id="recPlay" controls class="hidden" style="max-width:260px;margin:0"></audio>
|
| 181 |
</div>
|
| 182 |
+
<label class="agree"><input type="checkbox" name="agree" value="1" required> SwitchLingo may store my sentence (and recording, if I'm 18+ and made one) to improve translations. My recording won't be used to identify me, and I can ask to delete it anytime.</label>
|
| 183 |
<button class="btn" type="submit">Add my sentence</button> <span id="teachMsg" class="muted"></span>
|
| 184 |
</form>
|
| 185 |
<p class="muted" style="font-size:13px" id="teachStats"></p>
|
|
|
|
| 250 |
if(r.translators.includes("claude")) $("#engine").value="claude";
|
| 251 |
if(r.lipsync) $("#lipWrap").classList.remove("hidden");
|
| 252 |
const vc=()=>$("#vcWrap").style.display=$("#clone").checked?"flex":"none"; $("#clone").onchange=vc; vc();
|
| 253 |
+
try{ const a=localStorage.getItem("oxt_age"); if(a) $("#age").value=a; }catch(e){}
|
| 254 |
+
applyAge();
|
| 255 |
const qs=new URLSearchParams(location.search), shared=qs.get("url")||qs.get("text")||"";
|
| 256 |
const m=shared.match(/https?:\/\/\S+/); if(m){ setMode("link"); $("#url").value=m[0]; $("#go").scrollIntoView({behavior:"smooth",block:"center"}); }
|
| 257 |
initTeach();
|
|
|
|
| 270 |
quality:$("#quality").value,gender:$("#gender").value,voice_engine:$("#voice").value,
|
| 271 |
clone:$("#clone").checked?"1":"0",lipsync:$("#lipsync").checked?"1":"0"}).forEach(([k,v])=>fd.append(k,v));
|
| 272 |
if(!$("#agree").checked) return $("#formErr").textContent="Please check the box to confirm you have the right to use this video.";
|
| 273 |
+
const age=$("#age").value;
|
| 274 |
+
if(age==="kid") return $("#formErr").textContent="Sorry, SwitchLingo is for ages 13 and up.";
|
| 275 |
+
if(!age) return $("#formErr").textContent="Please choose your age group first.";
|
| 276 |
+
fd.append("age",age); fd.append("clean",(age==="teen"||$("#clean").checked)?"1":"0");
|
| 277 |
+
if(age==="adult" && $("#clone").checked && outs.includes("dub") && !$("#voiceConsent").checked) return $("#formErr").textContent="To keep the speaker's voice, confirm you have their permission (or turn that switch off).";
|
| 278 |
fd.append("agree","1"); fd.append("voice_consent",$("#voiceConsent").checked?"1":"0");
|
| 279 |
$("#go").disabled=true; $("#go").textContent="Uploading…";
|
| 280 |
try{
|
|
|
|
| 338 |
$("#reqForm").onsubmit=async e=>{ e.preventDefault();
|
| 339 |
const r=await fetch("/api/language-requests",{method:"POST",body:new FormData(e.target)});
|
| 340 |
$("#reqMsg").textContent=r.ok?"Thanks, request saved.":"Couldn't save, try again."; if(r.ok) e.target.reset(); };
|
| 341 |
+
function applyAge(){
|
| 342 |
+
const a=$("#age").value, teen=a==="teen";
|
| 343 |
+
document.body.classList.toggle("teen",teen);
|
| 344 |
+
$("#kidMsg").classList.toggle("hidden",a!=="kid");
|
| 345 |
+
$("#go").disabled=(a==="kid");
|
| 346 |
+
$("#clean").checked=teen?true:$("#clean").checked; $("#clean").disabled=teen;
|
| 347 |
+
$("#ageNote").innerHTML=teen?'<span class="teenbadge">Teen mode</span> Clean words · standard AI voice':(a==="adult"?"":"");
|
| 348 |
+
if(teen) $("#voice").value="edge";
|
| 349 |
+
try{ if(a==="teen"||a==="adult") localStorage.setItem("oxt_age",a); }catch(e){}
|
| 350 |
+
}
|
| 351 |
+
$("#age").onchange=applyAge;
|
| 352 |
let recBlob=null, recorder=null, PROMPTS=[];
|
| 353 |
async function initTeach(){
|
| 354 |
const r=await (await fetch("/api/teach/languages")).json(); PROMPTS=r.prompts;
|
|
|
|
| 373 |
}catch(e){ $("#teachMsg").textContent="Microphone not allowed. You can still type it."; }
|
| 374 |
};
|
| 375 |
$("#teachForm").onsubmit=async e=>{ e.preventDefault();
|
| 376 |
+
const age=$("#age").value; if(age!=="teen"&&age!=="adult"){ $("#teachMsg").textContent="Choose your age group at the top first (13+)."; return; }
|
| 377 |
+
const fd=new FormData(e.target); fd.append("token",ADMIN); fd.append("age",age);
|
| 378 |
if(recBlob) fd.append("audio",recBlob,"rec."+((recBlob.type.split("/")[1]||"webm").split(";")[0]));
|
| 379 |
const r=await fetch("/api/teach",{method:"POST",body:fd});
|
| 380 |
$("#teachMsg").textContent=r.ok?"Thank you! 🙏 Added.":"Couldn't save, try again.";
|
app/static/privacy.html
CHANGED
|
@@ -21,7 +21,10 @@
|
|
| 21 |
<p>Hugging Face (hosting and the private dataset). Depending on the options you pick, text or audio may be sent to Microsoft (AI voices), Google (translation), Anthropic (Claude translation), ElevenLabs (premium voices; any cloned voice is deleted right after your job) or Replicate (lip-sync). They process data for us under their own terms.</p>
|
| 22 |
|
| 23 |
<h2>What we never do</h2>
|
| 24 |
-
<ul><li>Sell or share your personal information for advertising.</li><li>Use tracking or advertising cookies.</li><li>Knowingly collect data from
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
<h2>AI labels</h2>
|
| 27 |
<p>Videos we create carry a visible "AI translated · SwitchLingo" label, plus hidden metadata saying the file is AI-generated, by which system and when.</p>
|
|
|
|
| 21 |
<p>Hugging Face (hosting and the private dataset). Depending on the options you pick, text or audio may be sent to Microsoft (AI voices), Google (translation), Anthropic (Claude translation), ElevenLabs (premium voices; any cloned voice is deleted right after your job) or Replicate (lip-sync). They process data for us under their own terms.</p>
|
| 22 |
|
| 23 |
<h2>What we never do</h2>
|
| 24 |
+
<ul><li>Sell or share your personal information for advertising.</li><li>Use tracking or advertising cookies.</li><li>Knowingly collect data from children under 13.</li></ul>
|
| 25 |
+
|
| 26 |
+
<h2>Teens (13–17)</h2>
|
| 27 |
+
<p>Teen mode never clones voices, never accepts voice recordings, never uses premium third-party voices, and always hides swear words. The age group you pick is saved only in your own browser and attached to your translation job (deleted after 24 hours), so we can apply the right protections.</p>
|
| 28 |
|
| 29 |
<h2>AI labels</h2>
|
| 30 |
<p>Videos we create carry a visible "AI translated · SwitchLingo" label, plus hidden metadata saying the file is AI-generated, by which system and when.</p>
|
app/static/terms.html
CHANGED
|
@@ -5,7 +5,11 @@
|
|
| 5 |
<p>SwitchLingo ("we") translates the speech in videos and audio with AI. By using it you agree to these terms, our <a href="privacy.html">Privacy Policy</a> and the Acceptable Use rules below.</p>
|
| 6 |
|
| 7 |
<h2>1. Who can use SwitchLingo</h2>
|
| 8 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
|
| 10 |
<h2>2. Your videos and your rights</h2>
|
| 11 |
<ul>
|
|
@@ -47,7 +51,7 @@
|
|
| 47 |
<p>When you rate or fix a translation, or teach a sentence or recording, you let us store it and use it to improve SwitchLingo's translations and models. Don't include anyone's private information. You can ask us to delete your contributions with the <a href="report.html">report form</a> (choose "Privacy request").</p>
|
| 48 |
|
| 49 |
<h2>8. Paid plans</h2>
|
| 50 |
-
<p>When paid plans are offered, checkout will clearly show the price, how often you're billed, that the plan renews automatically until you cancel, and how to cancel. You'll be able to <b>cancel online at any time</b>, and we'll send the renewal and trial reminders required by law.</p>
|
| 51 |
|
| 52 |
<h2>9. No warranty and limited liability</h2>
|
| 53 |
<p>SwitchLingo is provided "as is" without warranties. To the fullest extent the law allows, we aren't liable for indirect or consequential damages, or for how you use translations or AI voices. Our total liability is limited to the amount you paid us in the last 12 months (or $50 if you paid nothing). You agree to cover claims that come from your content or your misuse of SwitchLingo.</p>
|
|
|
|
| 5 |
<p>SwitchLingo ("we") translates the speech in videos and audio with AI. By using it you agree to these terms, our <a href="privacy.html">Privacy Policy</a> and the Acceptable Use rules below.</p>
|
| 6 |
|
| 7 |
<h2>1. Who can use SwitchLingo</h2>
|
| 8 |
+
<ul>
|
| 9 |
+
<li><b>Ages 13–17 use Teen mode:</b> translation, subtitles and the standard AI voice, with Clean mode always on. Voice cloning, lip-sync, premium voices, voice recordings and payments aren't available in Teen mode. Teens should use SwitchLingo with a parent or guardian's knowledge.</li>
|
| 10 |
+
<li><b>18 and older</b> can use every feature.</li>
|
| 11 |
+
<li><b>Under 13:</b> SwitchLingo isn't for children under 13, and we don't knowingly collect information from them. If you believe a child under 13 used SwitchLingo, tell us through the <a href="report.html">report form</a> and we'll delete it.</li>
|
| 12 |
+
</ul>
|
| 13 |
|
| 14 |
<h2>2. Your videos and your rights</h2>
|
| 15 |
<ul>
|
|
|
|
| 51 |
<p>When you rate or fix a translation, or teach a sentence or recording, you let us store it and use it to improve SwitchLingo's translations and models. Don't include anyone's private information. You can ask us to delete your contributions with the <a href="report.html">report form</a> (choose "Privacy request").</p>
|
| 52 |
|
| 53 |
<h2>8. Paid plans</h2>
|
| 54 |
+
<p>Paid plans are for adults (18+). When paid plans are offered, checkout will clearly show the price, how often you're billed, that the plan renews automatically until you cancel, and how to cancel. You'll be able to <b>cancel online at any time</b>, and we'll send the renewal and trial reminders required by law.</p>
|
| 55 |
|
| 56 |
<h2>9. No warranty and limited liability</h2>
|
| 57 |
<p>SwitchLingo is provided "as is" without warranties. To the fullest extent the law allows, we aren't liable for indirect or consequential damages, or for how you use translations or AI voices. Our total liability is limited to the amount you paid us in the last 12 months (or $50 if you paid nothing). You agree to cover claims that come from your content or your misuse of SwitchLingo.</p>
|
docs/LEGAL-COMPLIANCE.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
| 8 |
| **DMCA §512(c)** (copyright safe harbor) | Users upload or link other people's videos. Safe harbor needs fast takedowns, a repeat-infringer policy, and a **designated agent registered with the Copyright Office** | Report form with all DMCA notice elements and a sworn statement; instant removal; blocklist of identical files; repeat-infringer policy in the Terms. ⏳ **Thai: register the agent** |
|
| 9 |
| **TAKE IT DOWN Act** (FTC enforcement since May 2026; ~$53k per violation) | Sites that host user content must remove non-consensual intimate imagery (including AI fakes) within **48 hours** and remove identical copies | Public report form (no login); auto-removal on submission; SHA-256 blocklist for identical copies; good-faith removal |
|
| 10 |
| **FTC Act §5** (deception) | Don't mislead people about AI voices or results | Visible "AI translated" label and metadata on every video; "never the real person" notices; accuracy disclaimer |
|
| 11 |
-
| **COPPA** | Collecting data from under-13s needs parental consent |
|
| 12 |
| **ROSCA** (online subscriptions) | Clear terms, express consent, easy cancellation | Built into the paid-plans section of the Terms; enforced when checkout is built |
|
| 13 |
|
| 14 |
## State
|
|
|
|
| 8 |
| **DMCA §512(c)** (copyright safe harbor) | Users upload or link other people's videos. Safe harbor needs fast takedowns, a repeat-infringer policy, and a **designated agent registered with the Copyright Office** | Report form with all DMCA notice elements and a sworn statement; instant removal; blocklist of identical files; repeat-infringer policy in the Terms. ⏳ **Thai: register the agent** |
|
| 9 |
| **TAKE IT DOWN Act** (FTC enforcement since May 2026; ~$53k per violation) | Sites that host user content must remove non-consensual intimate imagery (including AI fakes) within **48 hours** and remove identical copies | Public report form (no login); auto-removal on submission; SHA-256 blocklist for identical copies; good-faith removal |
|
| 10 |
| **FTC Act §5** (deception) | Don't mislead people about AI voices or results | Visible "AI translated" label and metadata on every video; "never the real person" notices; accuracy disclaimer |
|
| 11 |
+
| **COPPA** | Collecting data from under-13s needs parental consent | Neutral age screen; under 13 blocked; 13–17 in Teen mode (no cloning, recordings, premium voices or payments; Clean mode forced, enforced on the server); 18+ full features |
|
| 12 |
| **ROSCA** (online subscriptions) | Clear terms, express consent, easy cancellation | Built into the paid-plans section of the Terms; enforced when checkout is built |
|
| 13 |
|
| 14 |
## State
|