import socket

server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.bind(("0.0.0.0", 10000))
server.listen(1)
print("TCP сервер запущен")

while True:
    conn, addr = server.accept()
    print(f"Подключение от {addr}")

    data = conn.recv(1024)
    if not data:
        break

    # Проверяем на специальное сообщение для завершения работы
    if data.upper() == b'EXIT':
        print("Получено сообщение для завершения работы сервера.")
        conn.sendall(b'Server is shutting down.')
        conn.close()
        break  # Выходим из цикла и завершаем работу сервера

    conn.sendall(data.upper())
    conn.close()

# Закрываем сервер после выхода из цикла
server.close()
print("Сервер завершил работу.")