public static List<ChatUser> getUsers(String response) {
		List<ChatUser> users = new ArrayList<ChatUser>();
		String[] modifiedResponse;
		int maxUserIndex; // Index of the last Hostname (Hostname-n) within the
		// Stringarray "modifiedResponse".
		// Since the last Hostname is followed by the
		// corresponding chatname, maxUserIndex will
		// modifiedResponse.length -1.

		modifiedResponse = response.split(ONE_OR_MORE_SPACES); // split Response
																// into the
		// single Parts
		maxUserIndex = modifiedResponse.length - 1; // ->see declaration
		// The Response Array Looks like this:
		// |List|NumberOfUsers|Hostname1|UserName1|...|HostnameN|UserNameN| for
		// n = NumberOfUsers and m = size of the Array
		// Index: 0 1 2 3 ... m-3 m-2 m-1 m
		// Content: LIST Number Host1 User1 ... Hostn-1 Usern-1 Hostn User
		// A new User will be found every second Index with an Offset of 2 at
		// the beginning.
		for (int i = 2; i <= maxUserIndex; i += 2) {
			try {
				InetAddress hostName = InetAddress
						.getByName(modifiedResponse[i]);
				String chatName = modifiedResponse[i + 1];
				ChatUser user = new ChatUser(chatName, hostName);
				users.add(user);
			} catch (UnknownHostException e) {
				System.err.println("Could not find Host " + modifiedResponse[i]
						+ "\nUser " + modifiedResponse[i + 1]
						+ " will be skipped\n" + e.getMessage());
			}
		}
		return users;
	}