diff --git a/Server_127.0.0.1_Startet_Election.py b/Server_127.0.0.1_Startet_Election.py
new file mode 100644
index 0000000000000000000000000000000000000000..e1fe8d02acdf27f360a8e68873633d2c148744e2
--- /dev/null
+++ b/Server_127.0.0.1_Startet_Election.py
@@ -0,0 +1,117 @@
+
+#Test Communication UDP between 2 
+import socket
+from uuid import uuid4
+import uuid
+
+ELECTION = 0
+NEW_LEAD = 1
+my_ip = '127.0.0.1'
+election_socket = 12345
+myuuid = uuid.uuid4() #UUid auch als String vergleichbar?
+participating = False
+is_leader = False
+Leader = False
+print(myuuid)
+
+#Nachbar des Servers im Ring wird ermittelt - an diesen wird später die Election Message gesendet Achtung wieso ist beim letzenm der partner nicht der erste??
+def get_neighbour(members, current_member_ip, direction='left'):
+    current_member_index = members.index(current_member_ip) if current_member_ip in members else -1
+    if current_member_index != -1:
+        if direction == 'left':
+            if current_member_index + 1 == len(members):
+                return members[0]
+            else:
+                return members[current_member_index + 1]
+        else:
+            if current_member_index - 1 < 0:
+                return members[len(members) - 1]
+            else:
+                return members[current_member_index - 1]
+    else:
+        return None
+
+members = ['127.0.0.1', '127.0.0.2', '127.0.0.5']
+neighbour = get_neighbour(members, my_ip , 'right')
+print(neighbour)
+
+#Funktion muss aufgerufen werden!
+def start_election():
+    print("{} is starting an election.".format(myuuid))
+    #Server nimmt an Election Teil
+    participating = True
+    #Nachricht wird an den Server neben an gesendet
+    msg = f"{ELECTION}: {myuuid}".encode('utf-8')
+    #Msg encoden? Variable setzen?
+    send_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
+    send_socket.sendto(msg,(neighbour,election_socket))
+    #data,addr=send_socket.recvfrom(4096)
+    #Was passiert wenn diese Nachricht nicht ankommt?
+    send_socket.close()
+
+
+
+def accept(group,erhaltene_uuid):
+    if group == ELECTION:
+        #Abgleich der erhaltenen Uuid mit der eigenen uuid
+        if erhaltene_uuid > myuuid:
+            print("{} is forwarding without updates.".format(myuuid))
+            participating = True
+            msg = f"{ELECTION}: {erhaltene_uuid}".encode()
+            #Weitergabe der höheren uuid
+            send_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
+            send_socket.sendto(msg,(neighbour,election_socket))
+            #Was passiert wenn diese Nachricht nicht ankommt?
+            send_socket.close()
+        if erhaltene_uuid < myuuid:
+            print("{} is updating and forwarding.".format(myuuid))
+            participating = True
+            msg = f"{ELECTION}: {myuuid}".encode()
+            #Weitergabe der höheren uuid
+            send_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
+            send_socket.sendto(msg,(neighbour,election_socket))
+            #Was passiert wenn diese Nachricht nicht ankommt?
+            send_socket.close()
+        if erhaltene_uuid == myuuid:
+            print("{} starts acting as a leader!".format(myuuid))
+            participating = False
+            is_leader = True
+            leader = myuuid
+            msg = f"{NEW_LEAD}: {myuuid}".encode()
+            #Weitergabe der höheren uuid
+            send_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
+            send_socket.sendto(msg,(neighbour,election_socket))
+            #Was passiert wenn diese Nachricht nicht ankommt?
+            send_socket.close()
+    if group == NEW_LEAD:
+        if erhaltene_uuid == myuuid:
+            return
+        if erhaltene_uuid != myuuid:
+            print("{} acknowledged new leader.".format(myuuid))
+            leader = myuuid
+            msg = f"{NEW_LEAD}: {erhaltene_uuid}".encode()
+            #Weitergabe der höheren uuid
+            send_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
+            send_socket.sendto(msg,(neighbour,election_socket))
+            #Was passiert wenn diese Nachricht nicht ankommt?
+            send_socket.close()
+
+
+#zuhören
+start_election()
+sock = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
+sock.bind((my_ip,election_socket))
+while True:
+    data,addr=sock.recvfrom(4096)
+    übernahme = data.decode('utf-8')
+    #message = ("Hello i am server").encode('utf-8')
+    #Für Piggiback Acn nutzen?
+    #sock.sendto(message,addr)
+    grouprec = int(übernahme.split(": ")[0])
+    #print(übernahme)
+    #print((übernahme.split(": ")[1]))
+    erhaltene_uuid2 = uuid.UUID((übernahme.split(": ")[1]))
+    accept(grouprec,erhaltene_uuid2)
+
+
+