public Entry<RawOption, List<String>> convert(final Entry<RawOption, List<String>> from) {
      final List<String> fromValues = from.getValue();
      List<String> convertedValues;
      if (!specification.hasUnparsedSpecification()) {
         convertedValues = fromValues;
      } else {
         final int maximumArgumentConsumption = min(fromValues.size(), specification.getSpecification(from.getKey().stringValue()).maximumArgumentConsumption());
         validatedUnparsedArguments.addAll(0, fromValues.subList(maximumArgumentConsumption, fromValues.size()));
         convertedValues = FluentDollar._(fromValues.subList(0, maximumArgumentConsumption));
      }

      return FluentDollar.$.mapEntry(from.getKey(), convertedValues);
   }