code: public static Iterator<String> tokenizeOrderedWithReplacement(
              BufferedReader reader) {
          Iterator<String> baseIterator = tokenizeOrdered(reader);
          return (replacementMap == null)
              ? baseIterator
              : new WordReplacementIterator(baseIterator, replacementMap);
      }
docs: Wraps an iterator returned by {@link #tokenizeOrdered(String)
  tokenizeOrdered} to also include term replacement of tokens.  Terms will
  be replaced based on a mapping provided through the system configuration.
  
  @param reader A reader whose contents are to be tokenized.
  
  @return An iterator over all the tokens in the reader where any tokens
  removed due to filtering have been replaced with the {@code
  IteratorFactory.EMPTY_TOKEN} value, and tokens may be replaced
  based on system configuration.