docs: private static void processRecords(List<String> result, List<CSVRecord> records, Function<String, String> valueProcessor) {
      for (CSVRecord csvRecord : records) {
        Iterator<String> it = csvRecord.iterator();
        if (!result.isEmpty()) {
          String next = it.next();
          if (!next.isEmpty()) {
            int lastItemIdx = result.size() - 1;
            String previous = result.get(lastItemIdx);
            if (previous.isEmpty()) {
              result.set(lastItemIdx, valueProcessor.apply(next));
            } else {
              result.set(lastItemIdx, valueProcessor.apply(previous + "\n" + next));
            }
          }
        }
        it.forEachRemaining(s -> {
          String apply = valueProcessor.apply(s);
          result.add(apply);
        });
      }
    }