diff --git a/Jarvis.py b/Jarvis.py
index 64b447dd706294ce51e023593d9660607024b044..b09469bf5b4bcb4138976bd4d92e88014c326cb0 100755
--- a/Jarvis.py
+++ b/Jarvis.py
@@ -15,8 +15,6 @@ import pygame
 import os
 import sys
 import unicodedata
-from subprocess import Popen, PIPE
-from html.parser import HTMLParser
 import random
 import wikipedia
 from email.mime.text import MIMEText
@@ -25,8 +23,8 @@ import smtplib
 import warnings
 import requests
 import useless  # package de fonctions inutiles mais marrantes
+import pyttsx3
 # import usefull  # package de fonctions utiles
-import json
 from googletrans import Translator
 translator = Translator()
 warnings.simplefilter('ignore', UserWarning)
@@ -41,19 +39,37 @@ else:
     voix = False
     print("[!] reconnaissance vocale désactivée.")
 
+reconnaissance = str(input("[!] activer la synthèse vocale ? (y,N)>"))
+if reconnaissance == 'y':
+    tts_bool = True  # défini si jarvis parle
+    print("[!] synthèse vocale activée.")
+else:
+    tts_bool = False
+    print("[!] synthèse vocale désactivée.")
 
+reconnaissance = str(input("[!] google ou espeak ? (0,1)>"))
+if reconnaissance == '0':
+    google_bool = True  # défini si jarvis parle
+    print("[!] synthèse vocale activée.")
+else:
+    google_bool = False
+    print("[!] synthèse vocale désactivée.")
 r = sr.Recognizer()
 mic = sr.Microphone()
 
+engine = pyttsx3.init()
+voice = engine.getProperty('voices')[26]  # the french voice
+engine.setProperty('voice', voice.id)
+
 pygame.init()
 r = sr.Recognizer()
 mic = sr.Microphone()
 jarvis = True  # défini si jarvis commence vérouillé ou pas
-tts = False  # défini si jarvis parle
 mdp = "oracle02"  # défini le mdp de déverouillage de jarvis
 bot_name = "jarvis"  # défini le nom auquel répondra l'ia
 compris = 0
 comprispreced = 0
+verbosity = 3
 entrepreced = ""
 _from = ""
 password = ""
@@ -73,7 +89,8 @@ fonctionnalités = [
     'parler du grand Chuck Norris !',
     'raconter une intox',
     'faire de la philosophie',
-    'jouer du pipo'
+    'jouer du pipo',
+    'traduire un texte ou un mot dans une autre langue'
 ]
 
 
@@ -99,27 +116,34 @@ def get_speech(message="entrée"):
 
 
 def parle(texte, save=True, lang='fr-CA'):
-    global compris, tts
+    global compris, tts_bool, engine, google_bool
     compris = 1
     print("[+] {} : {}".format(bot_name.upper(), texte))
 
-    if not tts:
+    if not tts_bool:
         return None  # si pas de tts on s'arrete là dans la fonction
 
-    with open("database.txt") as f:
-        lines = f.readlines()
-    test_list = [i.replace('\n', '') for i in '\n'.join(lines).split("\n|")]
-    try:
-        line_no = test_list.index(texte.replace('\n', ''))
-    except ValueError:
-        line_no = len(lines)
-        tts = gTTS(text=texte, lang=lang)
-        tts.save("saved_voice/{}.mp3".format(line_no))
-        if save:
-            with open("database.txt", 'a') as f:
-                f.writelines(['{}\n|'.format(texte)])
-    pygame.mixer.music.load('saved_voice/{}.mp3'.format(line_no))
-    pygame.mixer.music.play()
+    if not google_bool:
+        engine.say(texte)
+        engine.runAndWait()
+    else:
+        with open("database.txt") as f:
+            lines = f.readlines()
+        test_list = [i.replace('\n', '') for i in '\n'.join(lines).split("\n|")]
+        print(test_list)
+        try:
+            line_no = test_list.index(texte.replace('\n', ''))
+        except ValueError:
+            line_no = len(lines) - 1 if len(lines) != 0 else 0
+            tts = gTTS(text=texte, lang=lang)
+            tts.save("saved_voice/{}.mp3".format(line_no))
+            if save:
+                with open("database.txt", 'a') as f:
+                    f.writelines(['{}\n|'.format(texte)])
+        print(line_no)
+        pygame.mixer.music.load('saved_voice/{}.mp3'.format(line_no))
+        pygame.mixer.music.play()
+        pygame.mixer.music.set_endevent()
 
 
 def var_name(var):
@@ -139,7 +163,7 @@ def printv(var):
     return str(var_name(var).replace("_", " ") + ' : ' + var)
 
 
-def meteo_de(villes="saint pierre", pay="reunion"):
+def meteo_de(villes="petite-ile", pay="RE"):
     global compris, ville, pays, lattitude, longitude, température,\
         température_minimum, température_max, humidité, pression,\
         vitesse_du_vent, direction_du_vent, pourcentage_de_nuages, \
@@ -150,19 +174,23 @@ def meteo_de(villes="saint pierre", pay="reunion"):
     adresseid = "http://api.openweathermap.org/data/2.5/weather?q="
     requette = requests.get("{}{},{}&appid={}".format(adresseid, "%20".join(villes.split(" ")), pay, api)).json()
 
-    vitesse_du_vent = str(requette["wind"]["speed"]) + " mètres par secondes"
-    température = str(int(requette["main"]["temp"]) - 273) + " °Celsius"
-    température_max = "%d °Celsius" % (int(requette["main"]["temp_max"]) - 273)
-    humidité = str(requette["main"]["humidity"]) + " %"
-    température_minimum = "%d °Celsius" % (int(requette["main"]["temp_min"] - 273))
-    direction_du_vent = str(requette["wind"]["deg"]) + " degrés"
-    longitude = str(requette["coord"]["lon"])
-    lattitude = str(requette["coord"]["lat"])
-    pression = str(requette["main"]["pressure"]) + "hPa"
-    pays = str(requette["sys"]["country"])
-    ville = str(requette["name"])
-    pourcentage_de_nuages = str(requette["clouds"]["all"]) + "%"
-    description = str(requette["weather"][0]["description"])
+    try:
+        vitesse_du_vent = str(requette["wind"]["speed"]) + " mètres par secondes"
+        température = str(int(requette["main"]["temp"]) - 273) + "°"
+        température_max = "%d °Celsius" % (int(requette["main"]["temp_max"]) - 273)
+        humidité = str(requette["main"]["humidity"]) + "%"
+        température_minimum = "%d °Celsius" % (int(requette["main"]["temp_min"] - 273))
+        direction_du_vent = str(requette["wind"]["deg"]) + "°"
+        longitude = str(requette["coord"]["lon"])
+        lattitude = str(requette["coord"]["lat"])
+        pression = str(requette["main"]["pressure"]) + "hPa"
+        pays = str(requette["sys"]["country"])
+        ville = str(requette["name"])
+        pourcentage_de_nuages = str(requette["clouds"]["all"]) + "%"
+        description = str(requette["weather"][0]["description"])
+    except:
+        parle(random.choice(truc_cassé))
+        return None
 
     try:
         volume_pluie_des_3_dernière_heures = str(requette["rain"]["3h"])
@@ -174,14 +202,19 @@ def meteo_de(villes="saint pierre", pay="reunion"):
         a2 = True
     except:
         a2 = False
-    liste = [pays, ville, lattitude, longitude, température, température_minimum,
-             température_max, humidité, pression, vitesse_du_vent, direction_du_vent, pourcentage_de_nuages, description]
-    for i in liste:
-        parle(printv(i))
+    liste = [pays,
+             ville,
+             # lattitude, longitude,
+             température,
+             # température_minimum, température_max,
+             humidité, pression, vitesse_du_vent,
+             # direction_du_vent,
+             pourcentage_de_nuages, description]
+    parle(" ".join([printv(i) for i in liste]), False)
     if a1:
-        parle(printv(volume_pluie_des_3_dernière_heures))
+        parle(printv(volume_pluie_des_3_dernière_heures), False)
     if a2:
-        parle(printv(volume_neige_des_3_dernière_heures))
+        parle(printv(volume_neige_des_3_dernière_heures), False)
 
 
 def deverouillage(entre):
@@ -307,7 +340,7 @@ def location(entre):
 
     parle("Je vais vous montrer où se trouve " + location)
     location = ("+").join(location.split(" "))
-    os.system("start chrome.exe https://www.google.nl/maps/place/" + location + "/&")
+    os.system("firefox https://www.google.nl/maps/place/" + location + "/& >/dev/null")
 
 
 def meteo(entre):
@@ -321,17 +354,22 @@ def meteo(entre):
         entre1 = entre1.split(" ")
         villes = entre1[0]
         villes = villes + entre1[1] if len(entre1) == 3 else villes
-        pay = entre[1] if len(entre1) == 2 else entre1[2]
-        meteo_de(villes, pay)
+        pay = entre1[1] if len(entre1) == 2 else entre1[2]
+        meteo_de(villes, pay.upper()[:2])
     elif "meteo" in entre:
         meteo_de()
 
 
+def dire_un_truc_en_mode_random(verbosity):
+    if random.randint(0, 100) < verbosity * 10:
+        parle(random.choice([useless.chuck(), useless.genererSujet(), useless.useless()]), False)
+
+
 def tests(entre):
     '''
     Fonction principale de tests
     '''
-    global entrepreced, comprispreced, jarvis, compris, voix, reconnaissance, topics, _from, password, boitemail
+    global entrepreced, comprispreced, jarvis, compris, voix, reconnaissance, topics, _from, password, boitemail, verbosity
     compris = 0
     merci = 0
 
@@ -391,7 +429,10 @@ def tests(entre):
     if "ouvre" in entre and ("application" in entre or "programme" in entre):
         texte = entre.replace("ouvre le programme ", "").replace("ouvre l'application ", "")
         parle("Je vais executer " + texte)
-        os.system("start " + texte + ".exe")
+        os.system(texte)
+    if entre.split(" ")[0] == "lance":
+        parle("Je vais executer " + entre.split(" ")[-1])
+        os.system(entre.split(" ")[-1] + ">/dev/null")
 
     # donne la date
     if (("date" in entre or "jour" in entre) and ("on est" in entre or "aujourd'hui" in entre)):
@@ -453,6 +494,27 @@ def tests(entre):
     if any(ext in entre for ext in ['sais faire', 'peux faire']) or ('autre ' in entre and any(ext in entrepreced for ext in ['sais faire', 'peux faire'])):
         parle(random.choice(['Je sais par exemple ', 'Je peux entre autre ']) + random.choice(fonctionnalités) + '.')
 
+    if 'moins bavard' in entre:
+        verbosity -= 1
+        parle('D\'accord chef je parlerais un peu moins')
+    elif 'plus bavard' in entre:
+        verbosity += 1
+        parle('Pas de prob\'s je dirai plus de trucs random')
+
+    if any(ext in entre for ext in ['pipo', 'pipeau']) and 'joue' in entre:
+        parle(useless.pipo(), False)
+    if 'une intox' in entre and any(ext in entre for ext in ["donne", "dit"]):
+        parle(useless.nordpresse(), False)
+    if 'philo' in entre:
+        parle(useless.genererSujet(), False)
+    if 'dis quelque-chose' in entre:
+        parle('quelque-chose')
+    if any(ext in entre for ext in ['dis', 'raconte']) or any(ext in entre for ext in ['quelque-chose', 'un truc']):
+        parle(useless.useless(), False)
+
+    if 'je t\'aime' in entre:
+        parle(useless.getRateau(), False)
+
     """le reste du code de la fonction doit toujours être à la fin de la fonction !!!"""
 
     # repond lorsque l'on annonce son nom sans rien demander de spécial
@@ -460,7 +522,11 @@ def tests(entre):
         parle("Oui ?")
 
     if compris == 0:
-        parle("je n'ai pas compris.")
+        if not tts_bool:
+            parle("je n'ai pas compris.")
+        else:
+            print("je n'ai pas compris")
+        dire_un_truc_en_mode_random(verbosity)
         compris = 0
     entrepreced = entre
     if merci == 0:
@@ -474,22 +540,35 @@ def tests(entre):
 
 if __name__ == "__main__":
     parle("Bonjour ! " + random.choice(["", "Vous allez bien aujourd'hui ?"]))
-
+    get_busy = pygame.mixer.music.get_busy()
+    currently_playing = get_busy
     """boucle principale"""
     while True:
-        currently_playing = pygame.mixer.music.get_busy()  # booléen qui indique si l'ia est en train de parler
-        entre = get_speech()
-
-        entre = entre.lower()  # met tout en minuscule
-        entre = unicodedata.normalize('NFKD', entre).encode('ascii', 'ignore').decode()  # enlève les accents
-
-        if deverouillage(entre) and not currently_playing:
-            tests(entre)
-        elif currently_playing and 'stop' in entre:
-            pygame.mixer.music.stop()
-        elif currently_playing and 'pause' in entre or 'arrete' in entre:
-            pygame.mixer.music.pause()
-        elif currently_playing and 'recommence' in entre:
-            pygame.mixer.music.rewind()
-        elif currently_playing and 'reprend' in entre or 'continue' in entre:
-            pygame.mixer.music.unpause()
+        get_busy = pygame.mixer.music.get_busy()
+        # booléen qui indique si l'ia est en train de parler
+        # end_event = pygame.mixer.music.get_endevent()  # booléen indique si l'ia a fini de parler
+        currently_playing = get_busy
+        # sys.stdout.write('[DEBUG] is_talking={}'.format(currently_playing))
+        # sys.stdout.flush()
+        # sys.stdout.write(chr(13))
+        # sys.stdout.write('[DEBUG] is_talking={}'.format(currently_playing))
+        # sys.stdout.write(chr(13))
+
+        if not currently_playing:
+            entre = get_speech()
+
+            entre = entre.lower()  # met tout en minuscule
+            entre = unicodedata.normalize('NFKD', entre).encode('ascii', 'ignore').decode()  # enlève les accents
+
+            if currently_playing:
+                print(pygame.mixer.music.get_pos())
+            if deverouillage(entre) and not currently_playing:
+                tests(entre)
+            elif currently_playing and 'stop' in entre:
+                pygame.mixer.music.stop()
+            elif currently_playing and 'pause' in entre or 'arrete' in entre:
+                pygame.mixer.music.pause()
+            elif currently_playing and 'recommence' in entre:
+                pygame.mixer.music.rewind()
+            elif currently_playing and 'reprend' in entre or 'continue' in entre:
+                pygame.mixer.music.unpause()
diff --git a/README.md b/README.md
index cdbd08ec464f7c73a50e1f1697bf54e90e2e5e0a..32a5822cd12186c6a07bd351a4be53328847be0f 100644
--- a/README.md
+++ b/README.md
@@ -22,6 +22,11 @@ Mon Jarvis pour windows et linux (peut-être un truc sur android aussi :°°)
 - raconter une intox
 - faire de la philosophie
 - jouer du pipo
+- dit des trucs inutiles automatiquement de temps en temps selon un certain niveau de verbosité
+- quizz
+- envoie balader les gens qui lui font des compliment d'amour
+- quand la voix est activée, ne répondre je n'ai pas compris que si la ou la requete précédente comprends le nom de l'ia
+- migrer les fonctionalités usefull dans un package 'usefull'
 
 # CHANGELOG:
 - donne l'heure 
diff --git a/database.txt b/database.txt
index 95e2d3540473c9f7677fc886d3af41bdd189874c..d5f36289bb0415d77d39ada8d211e0a824e05db1 100644
--- a/database.txt
+++ b/database.txt
@@ -1,5 +1,2 @@
-
-Bonjour ! 
-|je n'ai pas compris.
-|il est 15 heure 46.
+Bonjour ! Vous allez bien aujourd'hui ?
 |
\ No newline at end of file
diff --git a/saved_voice/0.mp3 b/saved_voice/0.mp3
index 0e90a5515da82c44ea84c996803af753e3bc830b..005222efe042fb7b58264a492c3cff9051e800bb 100644
Binary files a/saved_voice/0.mp3 and b/saved_voice/0.mp3 differ
diff --git a/saved_voice/1.mp3 b/saved_voice/1.mp3
index 0e90a5515da82c44ea84c996803af753e3bc830b..f9bd2dfbe8dc0e27820bf09244eab15008dbd36a 100644
Binary files a/saved_voice/1.mp3 and b/saved_voice/1.mp3 differ
diff --git a/saved_voice/2.mp3 b/saved_voice/2.mp3
index 005222efe042fb7b58264a492c3cff9051e800bb..025fe3b8cd7cad42ee51906deadf1b0742e4627e 100644
Binary files a/saved_voice/2.mp3 and b/saved_voice/2.mp3 differ
diff --git a/saved_voice/3.mp3 b/saved_voice/3.mp3
deleted file mode 100644
index 1b9b4a1f031ae5afad83d80b6e81da46f2ff08e7..0000000000000000000000000000000000000000
Binary files a/saved_voice/3.mp3 and /dev/null differ
diff --git a/saved_voice/4.mp3 b/saved_voice/4.mp3
deleted file mode 100644
index 1e7b126401ac3b4034c18c409c9964dd64322c60..0000000000000000000000000000000000000000
Binary files a/saved_voice/4.mp3 and /dev/null differ
diff --git a/saved_voice/5.mp3 b/saved_voice/5.mp3
deleted file mode 100644
index 1b9b4a1f031ae5afad83d80b6e81da46f2ff08e7..0000000000000000000000000000000000000000
Binary files a/saved_voice/5.mp3 and /dev/null differ
diff --git a/saved_voice/6.mp3 b/saved_voice/6.mp3
deleted file mode 100644
index 005222efe042fb7b58264a492c3cff9051e800bb..0000000000000000000000000000000000000000
Binary files a/saved_voice/6.mp3 and /dev/null differ
diff --git a/saved_voice/7.mp3 b/saved_voice/7.mp3
deleted file mode 100644
index 1b9b4a1f031ae5afad83d80b6e81da46f2ff08e7..0000000000000000000000000000000000000000
Binary files a/saved_voice/7.mp3 and /dev/null differ
diff --git a/useless/__init__.py b/useless/__init__.py
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..da54f6aac813c3b48f1ac316af2be239f0caa1c6 100644
--- a/useless/__init__.py
+++ b/useless/__init__.py
@@ -0,0 +1,10 @@
+# __init__.py
+
+from .rateau import getRateau
+from .chuck import chuck
+from .useless import useless
+from .nordpresse import nordpresse
+from .philotron import genererSujet
+from .pipotron import pipo
+from .haddock import haddock
+from .quizz import quizz
diff --git a/useless/__pycache__/__init__.cpython-37.pyc b/useless/__pycache__/__init__.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..cf412b6c085ef2c5780461e4d76434a47e1bd2be
Binary files /dev/null and b/useless/__pycache__/__init__.cpython-37.pyc differ
diff --git a/useless/__pycache__/akinator.cpython-37.pyc b/useless/__pycache__/akinator.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..0972d8edcb1c61fa70f0d03201aaac919ca58c1c
Binary files /dev/null and b/useless/__pycache__/akinator.cpython-37.pyc differ
diff --git a/useless/__pycache__/chuck.cpython-37.pyc b/useless/__pycache__/chuck.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..46c212a0f1d915544fc769c3ebc5e87d3b17d219
Binary files /dev/null and b/useless/__pycache__/chuck.cpython-37.pyc differ
diff --git a/useless/__pycache__/haddock.cpython-37.pyc b/useless/__pycache__/haddock.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..52a059dad3d953fafa9bbdf6e857dee7502eec79
Binary files /dev/null and b/useless/__pycache__/haddock.cpython-37.pyc differ
diff --git a/useless/__pycache__/nordpresse.cpython-37.pyc b/useless/__pycache__/nordpresse.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..1a3b83f68f812837bde4de32d3146b6646f0f4a6
Binary files /dev/null and b/useless/__pycache__/nordpresse.cpython-37.pyc differ
diff --git a/useless/__pycache__/philotron.cpython-37.pyc b/useless/__pycache__/philotron.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..b9bee385255e11d32884df8d1fb9bfdf620df497
Binary files /dev/null and b/useless/__pycache__/philotron.cpython-37.pyc differ
diff --git a/useless/__pycache__/pipotron.cpython-37.pyc b/useless/__pycache__/pipotron.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..9c0dc62f437eb71610013ee4d2ad569827673c1d
Binary files /dev/null and b/useless/__pycache__/pipotron.cpython-37.pyc differ
diff --git a/useless/__pycache__/quizz.cpython-37.pyc b/useless/__pycache__/quizz.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..6be4cc40a3225f6e3b69648fda439ec0f3b0ac70
Binary files /dev/null and b/useless/__pycache__/quizz.cpython-37.pyc differ
diff --git a/useless/__pycache__/rateau.cpython-37.pyc b/useless/__pycache__/rateau.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..9c21e82af81a396ed606abeb11499e53c49d981b
Binary files /dev/null and b/useless/__pycache__/rateau.cpython-37.pyc differ
diff --git a/useless/__pycache__/useless.cpython-37.pyc b/useless/__pycache__/useless.cpython-37.pyc
new file mode 100644
index 0000000000000000000000000000000000000000..491705d56e0fb86d2223ccc403cefdca977b942b
Binary files /dev/null and b/useless/__pycache__/useless.cpython-37.pyc differ
diff --git a/useless/guess.py b/useless/guess.py
new file mode 100755
index 0000000000000000000000000000000000000000..d8c002edb7c374b2edb6f3be7440c07b6cf68043
--- /dev/null
+++ b/useless/guess.py
@@ -0,0 +1,28 @@
+#!/usr/bin/python3
+# coding: utf-8
+# https://fr.akinator.com/game
+import akinator
+
+aki = akinator.Akinator()
+def main():
+    
+    q = aki.start_game()
+    while aki.progression <= 85:
+        a = input(q + "\n\t")
+        if a == "b":
+            try:
+                q = aki.back()
+            except akinator.CantGoBackAnyFurther:
+                pass
+        else:
+            q = aki.answer(a)
+    aki.win()
+    correct = input(f"It's {aki.name} ({aki.description})! Was I correct?\n{aki.picture}\n\t")
+    if correct.lower() == "yes" or correct.lower() == "y":
+        print("Yay\n")
+    else:
+        print("Oof\n")
+
+
+if __name__ == '__main__':
+    main()
diff --git a/useless/kohlanta.py b/useless/kohlanta.py
new file mode 100755
index 0000000000000000000000000000000000000000..c0ebeac7df9e51942575596fa8510df19714a755
--- /dev/null
+++ b/useless/kohlanta.py
@@ -0,0 +1,17 @@
+#!/usr/bin/python3
+# -*- coding: utf-8 -*-
+
+import random
+
+sentences = [
+    "$NAME, les aventuriers de la tribu $CHANN ont decidés de vous eliminer, et leur sentence est irrevocable",
+    "AH ! Ca veut dire que $NAME ne sait pas construire une cabane ?",
+    "$NAME, le conseil a decidé de vous eliminer, et leur sentence est irrevocable"]
+
+
+def kohlanta(name, channel):
+    return random.choice(sentences).replace("$NAME", name).replace("$CHANN", channel)
+
+
+if __name__ == '__main__':
+    print(kohlanta(input('entre un nom >'), input('entre une tribu >')))
diff --git a/useless/manger.py b/useless/manger.py
new file mode 100755
index 0000000000000000000000000000000000000000..2296bc4c1370bc8a71e47046a356d35a9ee406d1
--- /dev/null
+++ b/useless/manger.py
@@ -0,0 +1,33 @@
+#!/usr/bin/python3
+
+from datetime import datetime
+
+
+def is_l_heure_de_manger():
+    date = datetime.now().time()
+    hour = date.hour
+    minutes = date.minute
+    return hour >= 11 and minutes >= 30 or hour >= 13
+
+
+mots = ["manger", "faim", "nourriture", "miam", "bouffe", "mange"]
+
+
+def should_ban(message):
+    global mots
+    msg = message.lower().split(" ")
+    for f in msg:
+        if f in mots:
+            return True
+    return False
+
+
+def watcher(message):
+    if not is_l_heure_de_manger() and should_ban(message):
+        return 'NON C\'EST PAS L\'HEURE PUTIN !'
+    else:
+        return ''
+
+
+if __name__ == '__main__':
+    print(watcher(input('entre un texte pour voir >')))