docs: private void increaseOrDecrease(final byte memAddr,
  			final boolean increase, final int steps) throws IOException {
  
  		// 0 steps means 'do nothing'
  		if (steps == 0) {
  			return;
  		}
  
  		// negative steps means to decrease on 'increase' or the increase on 'decrease'
  		final int actualSteps;
  		final boolean actualIncrease;
  		if (steps < 0) {
  			actualIncrease = !increase;
  			actualSteps = Math.abs(steps);
  		} else {
  			actualIncrease = increase;
  			actualSteps = steps;
  		}
  
  		// ask device for increasing or decrease - see FIGURE 7-7
  		byte cmd = (byte) ((memAddr << 4) | (actualIncrease ? CMD_INC : CMD_DEC));
  
  		// build sequence of commands (one for each step)
  		byte[] sequence = new byte[actualSteps];
  		Arrays.fill(sequence, cmd);
  
  		// write sequence to the device
  		i2cDevice.write(sequence, 0, sequence.length);
  
  	}