public final void run() {
		anInt4472++;
		for (;;) {
			int i;
			synchronized (this) {
				for (;;) {
					if (anIOException4474 != null) {
						return;
					}
					if (anInt4470 < anInt4469) {
						i = anInt4470 + -anInt4469 + anInt4475;
					} else {
						i = -anInt4469 + anInt4470;
					}
					if ((i ^ 0xffffffff) < -1) {
						break;
					}
					try {
						anOutputStream4478.flush();
					} catch (IOException ioexception) {
						anIOException4474 = ioexception;
						return;
					}
					try {
						this.wait();
					} catch (InterruptedException interruptedexception) {
						/* empty */
					}
				}
			}
			try {
				if ((anInt4475 ^ 0xffffffff) > (anInt4469 + i ^ 0xffffffff)) {
					int i_0_ = -anInt4469 + anInt4475;
					anOutputStream4478.write(aByteArray4477, anInt4469, i_0_);
					anOutputStream4478.write(aByteArray4477, 0, i + -i_0_);
				} else {
					anOutputStream4478.write(aByteArray4477, anInt4469, i);
				}
			} catch (IOException ioexception) {
				synchronized (this) {
					anIOException4474 = ioexception;
					break;
				}
			}
			synchronized (this) {
				anInt4469 = (anInt4469 + i) % anInt4475;
			}
		}
	}