@Override
	public void run() {
		URL url;
		int statusCode;
		HttpURLConnection http;
		try {
			for (int i = begin; (i < begin + qty) && !bingo; i++, count()) {
				statusCode = -1;
				url = new URL(prefix + codeEngine.encode(digits, i) + suffix);
				do {
					http = (HttpURLConnection) url.openConnection();
					http.setRequestMethod("HEAD");
					try {
						statusCode = http.getResponseCode();
						if (statusCode == HttpURLConnection.HTTP_OK) {
							System.out.println("\n" + url.toString() + " "
									+ statusCode);
							bingo = true;
						} else if (statusCode != HttpURLConnection.HTTP_NOT_FOUND)
							System.out.println("\n" + url.toString() + " "
									+ statusCode);
					} catch (SocketException | SocketTimeoutException e) {

						synchronized (damping) {
							try {
								System.out.print("R");
								Thread.sleep(66);
							} catch (InterruptedException e1) {
								// TODO Auto-generated catch block
								e1.printStackTrace();
							}
						}
					}
					http.disconnect();
				} while (statusCode != HttpURLConnection.HTTP_NOT_FOUND
						&& !bingo);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}