public int getNodeMaxDepth() {
		int maxnodedepth = 0;
		ArrayList<TreeNode> tips = this.getTips();
		for (int i = 0; i < tips.size(); i++) {
			TreeNode curnode = tips.get(i);
			int tnodedepth = 0;
			while (curnode != this) {
				tnodedepth += 1;
				curnode = curnode.getParent();
			}
			if (tnodedepth > maxnodedepth) {
				maxnodedepth = tnodedepth;
			}
		}
		return maxnodedepth;
	}