@Override public IExpr copy() { return clone(); }
public IAST map(final Function<IExpr, IExpr> function) { final IAST f = clone(); return map(f, function); }
public IAST apply(final IExpr head) { final IAST ast = clone(); ast.setHeader(head); return ast; }
public IAST map(final IExpr head, final Function<IExpr, IExpr> function) { final IAST f = clone(); f.set(0, head); return map(f, function); }