default T root() {
		T anc = self();
		T prev;

		do {
			prev = anc;
			anc = anc.parent().orElse(null);
		} while (anc != null);

		return prev;
	}
Returns the root of the tree that contains this node. The root is the
ancestor with no parent.

@return the root of the tree that contains this node
jenetics.ext/src/main/java/io/jenetics/ext/util/Tree.java