public TreeElement addInternal(TreeElement first, ASTNode last, @Nullable ASTNode anchor, @Nullable Boolean before) {
    ASTNode anchorBefore;
    if (anchor == null) {
      anchorBefore = before == null || before.booleanValue() ? null : getFirstChildNode();
    }
    else {
      anchorBefore = before.booleanValue() ? anchor : anchor.getTreeNext();
    }
    return (TreeElement)CodeEditUtil.addChildren(this, first, last, anchorBefore);
  }
public TreeElement addInternal(TreeElement first, ASTNode last, @Nullable ASTNode anchor, @Nullable Boolean before)