else return this.hlist.match(that.hlist);
else {  for (Iterator it = template.hlist.iterator(); it.hasNext();) { SIPHeader sipHdr = (SIPHeader) it.next();  boolean found = false; for (Iterator it1 = this.hlist.iterator(); it1.hasNext() && !found;) { SIPHeader sipHdr1 = (SIPHeader) it1.next(); found = sipHdr1.match(sipHdr); } if (!found) return false; } return true; }
	public boolean match(Object template) {		if (template == null)			return true;		if (!this.getClass().equals(template.getClass()))			return false;		SIPHeaderList that = (SIPHeaderList) template;		if (this.hlist == that.hlist)			return true;		else if (this.hlist == null)			return false;		else			return this.hlist.match(that.hlist);	}