private TreeRow getLastChild(TreeRow row) {
		if (row instanceof TreeContainerRow) {
			TreeContainerRow container = (TreeContainerRow) row;
			if (row instanceof TreeRoot || isOpen(container)) {
				List<TreeRow> children = container.getChildren();
				int count = children.size();
				if (count > 0) {
					return getLastChild(children.get(count - 1));
				}
				return row instanceof TreeRoot ? null : row;
			}
		}
		return row;
	}