public Trace(TraceNode node) { if(!(node instanceof FilterTraceNode)) Utils.fail("FilterTraceNode expected: "+node); head = new InputTraceNode();
public Trace(InputTraceNode head) { this.head = head;
    public Trace(TraceNode node) {	if(!(node instanceof FilterTraceNode))	    Utils.fail("FilterTraceNode expected: "+node);	head = new InputTraceNode();	head.setParent(this);	head.setNext(node);	node.setPrevious(head);	depends = new Trace[0];	edges = new Trace[0];	len=-1;	dependsTemp=new ArrayList();	edgesTemp=new ArrayList();    }