public void leave(String message) {
	if (left)
	    return;
	left = true;
	if(properties.containsKey("translation") && !ping) {
	    Translation t = (Translation)properties.get("translation");
	    System.out.println(t.translate("client.left", message));
	}
	if(message == null)
	    throw new NullPointerException();
	try {
	    socket.close();
	} catch (IOException e) {
	}
	Client.instance.remotes.remove(this);
    }