private static byte[] erase(int range, byte[] bytes) {

		byte pre = -1;
		short counter = 0;
		ByteBuffer bb = ByteBuffer.allocate(bytes.length);
		if (range == -1) {
			// all same will be erased
			for (byte b : bytes) {
				if (b == pre) {
					counter++;
					continue;
				} else {

					if (counter == 1) {
						bb.put(pre);
					}
					pre = b;
					counter = 1;
				}
			}
			if (counter == 1) {
				bb.put(pre);
			}
		} else {

		}
		if (bb.position() == 0) {
			return new byte[0];
		}
		if (bb.position() == bytes.length) {
			return bytes;
		} else {
			bytes = new byte[bb.position()];
			bb.flip();
			bb.get(bytes);
			return erase(range, bytes);
		}
	}