public boolean transferAccountUDP (String transferData, int transferPort) {
		
		boolean transferSuccess = false;
		int statusCode = 0;
		String statusCodeFromReplay;
		DatagramSocket aSocket = null;
		int indexCode = 0;
		try {
			aSocket = new DatagramSocket();
			byte [] m = transferData.getBytes();
			InetAddress aHost = InetAddress.getByName("localhost");
			int serverPort = transferPort;
			DatagramPacket request = new DatagramPacket(m,transferData.length(), aHost, serverPort);
			aSocket.send(request);
			
			byte [] buffer = new byte [1000];
			DatagramPacket replay = new DatagramPacket(buffer, buffer.length);
			aSocket.receive(replay);
			
			//add the new account to the server
			statusCodeFromReplay = new String( replay.getData());
			indexCode = statusCodeFromReplay.indexOf(".");
			statusCode = Integer.parseInt(statusCodeFromReplay.substring(0, indexCode));
			
			if ( statusCode == 1) {
				System.out.println("Transfer done!");
				log ("Transfer done!");
				transferSuccess = true;
			}
			else {
				System.out.println("The username is already taken. Transfer aborted!");
				log ("The username is already taken. Transfer aborted!");
				transferSuccess = false;
			}

		}
		catch (SocketException e){
			System.out.println("Socket Exception: " + e.getMessage());
		}
		catch (IOException e) {
			System.out.println("IO Exception: " + e.getMessage());
		}

		finally {
			if (aSocket != null) {
				aSocket.close();
			}

	}
		return transferSuccess;
	}