diff --git a/layouts/partials/bodys/tree.html b/layouts/partials/bodys/tree.html
new file mode 100644
index 0000000..f060cdd
--- /dev/null
+++ b/layouts/partials/bodys/tree.html
@@ -0,0 +1,33 @@
+{{- .Store.Set "relearnIsNested" true }}
+{{- partial "inline/article-walker" . .Path | safeHTML }}
+
+{{- define "partials/inline/article-walker" }}
+ {{- $html := "" }}
+ {{- $pages := partialCached "_relearn/pages.gotmpl" (dict "page" .) .Path }}
+ {{- range $pages }}
+ {{- if not (partialCached "_relearn/pageIsHidden.gotmpl" . .Path) }}
+ {{- $html = printf "%s%s" $html (partial "inline/article-walker" . .Path) }}
+ {{- $child := . }}
+ {{- range .Site.Params.relearn.dependencies }}
+ {{- $has := printf "has%s" .name }}
+ {{- $hasnested := printf "relearnHasNested%s" .name }}
+ {{- $.Store.Set $hasnested (or ($.Store.Get $hasnested) ($child.Store.Get $hasnested) ($child.Store.Get $has)) }}
+ {{- end }}
+ {{- end }}
+ {{- end }}
+
+ {{- $article := "" }}
+ {{- if .Title }}
+ {{- $article = .Render "article" }}
+ {{- end }}
+ {{- if len $html }}
+ {{- $title := partial "title.gotmpl" (dict "page" . "linkTitle" true) }}
+ {{- $html = printf `%s
+ %s
%s
+