code: public List<Double> setFixedValue(List<Double> value) throws IOException, SaneException {
      List<SaneWord> wordValues =
          Lists.transform(
              value,
              new Function<Double, SaneWord>() {
                @Override
                public SaneWord apply(Double input) {
                  Preconditions.checkArgument(
                      input >= -32768 && input <= 32767.9999, "value " + input + " is out of range");
                  return SaneWord.forFixedPrecision(input);
                }
              });
  
      ControlOptionResult result = writeWordListOption(wordValues);
  
      List<Double> newValues =
          Lists.newArrayListWithCapacity(result.getValueSize() / SaneWord.SIZE_IN_BYTES);
      for (int i = 0; i < result.getValueSize(); i += SaneWord.SIZE_IN_BYTES) {
        newValues.add(SaneWord.fromBytes(result.getValue(), i).fixedPrecisionValue());
      }
  
      return newValues;
    }
docs: Sets the value of the current option to the supplied list of fixed-precision values. Option
  value must be of fixed-precision type and {@link #getValueCount} must be more than 1.