private boolean seekEOL() {
		// Set maximum and current bit index into the compressed data.
		int bitIndexMax = data.length * 8 - 1;
		int bitIndex = bytePointer * 8 + bitPointer;

		// Loop while at least 12 bits are available.
		while (bitIndex <= bitIndexMax - 12) {
			// Get the next 12 bits.
			int next12Bits = nextNBits(12);
			bitIndex += 12;

			// Loop while the 12 bits are not unity, i.e., while the EOL
			// has not been reached, and there is at least one bit left.
			while (next12Bits != 1 && bitIndex < bitIndexMax) {
				next12Bits = ((next12Bits & 0x000007ff) << 1)
						| (nextLesserThan8Bits(1) & 0x00000001);
				bitIndex++;
			}

			// If EOL reached, rewind the pointers and return 'true'.
			if (next12Bits == 1) {
				updatePointer(12);
				return true;
			}
		}

		// EOL not found: return 'false'.
		return false;
	}