private void readWrappedStream() throws IOException {
		lastBytes[0] = lastBytes[1];
		// casting is safe, this function is not called if an - unexpected - EOF
		// was read
		lastBytes[1] = (byte) nextBytes[0];
		nextBytes[0] = nextBytes[1];
		nextBytes[1] = nextBytes[2];
		nextBytes[2] = super.read();
	}
Shifts bytes in the buffers, reads a byte from the wrapped stream, and places
it at the end of the nextBytes buffer.
src/main/java/de/gessnerfl/fakesmtp/smtp/io/DotTerminatedInputStream.java