diff --git a/discord_bot.py b/discord_bot.py
index c2b2b07424cdd42c6c54adc9499ac666d379f48b..4ee74e2b178efe4eacc385b8066bcc9d55c11f51 100644
--- a/discord_bot.py
+++ b/discord_bot.py
@@ -1,6 +1,8 @@
 import discord
 import dataset
-from email.utils import parseaddr
+from validate_email import validate_email
+
+from discord import user
 # pip3 install discord dataset
 
 db = dataset.connect("sqlite:///discord.db")
@@ -15,25 +17,33 @@ class MyClient(discord.Client):
         if message.author == self.user:
             return
 
-        if not message.guild:
-            userOnList = usertable.find_one(user_id=str(message.author.id))
-
-            print(userOnList)
+        # Don't respond in servers
+        if message.guild:
+            return
+        
+        # Try to grab the user from the list
+        userOnList = usertable.find_one(user_id=str(message.author.id))
 
-            if userOnList:
-                if len(message.content.strip().split(" ")) == 1 and "@" in message.content and \
-                    len(message.content.split("@")) == 2 and "." in message.content.split("@")[1]:
+        # Check if the user is on the list, if not we return
+        if not userOnList:
+            await message.channel.send("You are not on the list of Discord community members as taken on 9PM UTC November 4th. Unfortunately, we cannot register you for this sale. If you think this is in error, please contact `sale@xx-coin.io`.")
+            return
 
-                    usertable.upsert(dict(user_id=message.author.id, email=message.content), ["user_id"])
+        # Check if we got an email and record it if so
+        if len(message.content.strip().split(" ")) == 1 and "@" in message.content and \
+            len(message.content.split("@")) == 2 and "." in message.content.split("@")[1]:
+            
+            usertable.upsert(dict(user_id=message.author.id, email=message.content), ["user_id"])
 
-                    if userOnList["email"] == "":
-                        await message.channel.send("You have been registered. Registration and login details will be sent to your email by November 19th. You will not be able to login until then.")
-                    else:
-                        await message.channel.send("Your email address has been updated. Registration and login details will be sent to your email by November 19th. You will not be able to login until then.")
-                else:
-                    await message.channel.send("You are on our list! Please reply with a valid email address to register for the token sale.")
+            if userOnList["email"] == "":
+                await message.channel.send("You have been registered. Registration and login details will be sent to your email by November 19th. You will not be able to login until then.")
             else:
-                await message.channel.send("You are not on the list of Discord community members as taken on 9PM UTC November 4th. Unfortunately, we cannot register you for this sale. If you think this is in error, please contact `sale@xx-coin.io`.")
+                await message.channel.send("Your email address has been updated. Registration and login details will be sent to your email by November 19th. You will not be able to login until then.")
+            return
+
+        # All else has failed, tell the user they are on the list
+        await message.channel.send("You are on our list! Please reply with a valid email address to register for the token sale.")
+            
 
 client = MyClient()
 with open("discord.txt", "r") as f: