out.append("\\n" + node.toString() + "{" + getWorkEstimate(((FilterTraceNode) node).getFilter()) + "}");
if (node.isFilterTrace()) { out.append("\\n" + node.toString() + "{" + getWorkEstimate(((FilterTraceNode) node).getFilter()) + "}"); } else { out.append("\\n" + node.toString()); }
    private String traceName(Trace trace) {        TraceNode node = trace.getHead().getNext();        StringBuffer out = null;        if (((FilterTraceNode) node).getFilter().getArray() != null)            out = new StringBuffer(                                   "color=cornflowerblue, style=filled, label=\""                                   + node.toString());        else            out = new StringBuffer("label=\"" + node.toString());        out.append("{" + getWorkEstimate(((FilterTraceNode) node).getFilter())                   + "}");        node = node.getNext();        int i = 0;        while (node != null && node instanceof FilterTraceNode) {            // too many filters, just break            if (i++ > 15)                break;            out.append("\\n" + node.toString() + "{"                       + getWorkEstimate(((FilterTraceNode) node).getFilter())                       + "}");            node = node.getNext();        }        return out.toString();    }