public ArrayList<User> blockUntilHaveUsersHands() throws IOException,
			InterruptedException {
		
		// 30 second timeout
		for (int timeout = 0; timeout < 300; timeout++) {
			if (usersHands.size() == currentGameMembers.size()) {
				// return
				waitHandsSub.remove();
				return usersHands;
			}
			Thread.sleep(100);
		}
		waitHandsSub.remove();
		return null;
	}