code: private void addNextToken(String token,
                                Queue<String> nextWords,
                                Queue<String> nextRealWords) {
          String replacement = pseudoWordMap.get(token);
          if (replacement == null) {
              nextWords.offer(token);
              nextRealWords.offer(EMPTY);
          } else {
              nextWords.offer(replacement);
              nextRealWords.offer(token);
          }
      }
docs: If {@code token} is part of a pseudo word, the replacement psedo word
  will be stored in {@code nextWords} and {@code token} is stored in {@code
  nextRealWords}.  Otherwise, {@code token} is stored in {@code nextWords}
  and and empty string is stored in {@code nextRealWords}.