static void replaceIteratorNext(PsiElement element, String contentVariableName,
                                  PsiVariable iterator, PsiType contentType, PsiElement childToSkip,
                                  CommentTracker commentTracker, StringBuilder out) {
    if (isIteratorNext(element, iterator, contentType)) {
      if (!(element.getParent() instanceof PsiExpressionStatement)) {
        out.append(contentVariableName);
      }
    }
    else {
      final PsiElement[] children = element.getChildren();
      if (children.length == 0) {
        if (PsiUtil.isJavaToken(element, JavaTokenType.INSTANCEOF_KEYWORD) && out.charAt(out.length() - 1) != ' ') {
          out.append(' ');
        }
        out.append(commentTracker.text(element));
      }
      else {
        boolean skippingWhiteSpace = false;
        for (final PsiElement child : children) {
          if (shouldSkip(iterator, contentType, child) || child.equals(childToSkip)) {
            skippingWhiteSpace = true;
          }
          else if (!(child instanceof PsiWhiteSpace) || !skippingWhiteSpace) {
            skippingWhiteSpace = false;
            replaceIteratorNext(child, contentVariableName, iterator, contentType, childToSkip, commentTracker, out);
          }
        }
      }
    }
  }
static void replaceIteratorNext(PsiElement element, String contentVariableName,
                                  PsiVariable iterator, PsiType contentType, PsiElement childToSkip,
                                  CommentTracker commentTracker, StringBuilder out)