@Override public boolean equals( Object oth ) {
		if( !(oth instanceof TraceNode) ) return false;
		
		TraceNode tn = (TraceNode)oth;
		return
			division == tn.division &&
			equalsOrBothNull(material, tn.material) &&
			splitPoint == tn.splitPoint &&
			equalsOrBothNull(subNodeA, tn.subNodeA) &&
			equalsOrBothNull(subNodeB, tn.subNodeB);
	}