diff --git a/src/_includes/sidenav-level-2.html b/src/_includes/sidenav-level-2.html
new file mode 100644
index 00000000000..f22ebe9bdca
--- /dev/null
+++ b/src/_includes/sidenav-level-2.html
@@ -0,0 +1,61 @@
+{% for entry2 in entry1.children -%}
+
+{% assign class2 = 'nav-link' -%}
+{% assign isActive2 = false -%}
+{% if isActive1 and forloop.index == active_entries[1] -%}
+ {% assign isActive2 = true -%}
+ {% assign class2 = class2 | append: ' active' -%}
+{% endif -%}
+
+{% if entry2 == 'divider' -%}
+
+
+
+{%- elsif entry2.children == nil -%}
+
+
+ {{entry2.title}}
+ {%- if entry2.permalink == nil -%}
+ (TBC)
+ {%- elsif entry2.permalink contains '://' -%}
+
+ {%- endif -%}
+
+
+
+{%- else -%}
+
+ {% assign class2 = class2 | append: ' collapsable' -%}
+
+ {% if isActive2 or entry2.expanded -%}
+ {% assign expanded = 'true' -%}
+ {% assign show = 'show' -%}
+ {% else -%}
+ {% assign class2 = class2 | append: ' collapsed' -%}
+ {% assign expanded = 'false' -%}
+ {% assign show = '' -%}
+ {% endif -%}
+
+ {% assign id2 = id1 | append: '-' | append: forloop.index -%}
+ {% assign href = entry2.permalink -%}
+ {% unless href -%}
+ {% assign href = '#' | append: id2 -%}
+ {% endunless -%}
+
+
+ {{entry2.title}}
+
+
+ {% include sidenav-level-3.html -%}
+
+
+{% endif -%}
+{% endfor %}
diff --git a/src/_includes/sidenav-level-3.html b/src/_includes/sidenav-level-3.html
new file mode 100644
index 00000000000..057df679061
--- /dev/null
+++ b/src/_includes/sidenav-level-3.html
@@ -0,0 +1,61 @@
+{% for entry3 in entry2.children -%}
+
+{% assign class3 = 'nav-link' -%}
+{% assign isActive3 = false -%}
+{% if isActive2 and forloop.index == active_entries[2] -%}
+ {% assign isActive3 = true -%}
+ {% assign class3 = class3 | append: ' active' -%}
+{% endif -%}
+
+{% if entry3 == 'divider' -%}
+
+
+
+{%- elsif entry3.children == nil -%}
+
+
+ {{entry3.title}}
+ {%- if entry3.permalink == nil -%}
+ (TBC)
+ {%- elsif entry3.permalink contains '://' -%}
+
+ {%- endif -%}
+
+
+
+{%- else -%}
+
+ {% assign class3 = class3 | append: ' collapsable' -%}
+
+ {% if isActive3 or entry3.expanded -%}
+ {% assign expanded = 'true' -%}
+ {% assign show = 'show' -%}
+ {% else -%}
+ {% assign class3 = class3 | append: ' collapsed' -%}
+ {% assign expanded = 'false' -%}
+ {% assign show = '' -%}
+ {% endif -%}
+
+ {% assign id3 = id2 | append: '-' | append: forloop.index -%}
+ {% assign href = entry3.permalink -%}
+ {% unless href -%}
+ {% assign href = '#' | append: id3 -%}
+ {% endunless -%}
+
+
+ {{entry3.title}}
+
+
+ {% include sidenav-level-4.html -%}
+
+
+{% endif -%}
+{% endfor -%}
diff --git a/src/_includes/sidenav-level-4.html b/src/_includes/sidenav-level-4.html
new file mode 100644
index 00000000000..afd9bd7bd6a
--- /dev/null
+++ b/src/_includes/sidenav-level-4.html
@@ -0,0 +1,23 @@
+{% for entry4 in entry3.children -%}
+
+ {% assign class4 = 'nav-link' -%}
+ {% assign isActive4 = false -%}
+ {% if isActive3 and forloop.index == active_entries[3] -%}
+ {% assign isActive4 = true -%}
+ {% assign class4 = class4 | append: ' active' -%}
+ {% endif -%}
+
+
+ {{entry4.title}}
+ {%- if entry4.permalink == nil -%}
+ (TBC)
+ {%- elsif entry4.permalink contains '://' -%}
+
+ {%- endif -%}
+
+
+{% endfor -%}
diff --git a/src/_includes/sidenav.html b/src/_includes/sidenav.html
index e0801fb8d80..d7f4bc5ff9d 100644
--- a/src/_includes/sidenav.html
+++ b/src/_includes/sidenav.html
@@ -29,88 +29,7 @@
>{{entry1.title}}
- {% for entry2 in entry1.children -%}
-
- {% assign class2 = 'nav-link' -%}
- {% assign isActive2 = false -%}
- {% if isActive1 and forloop.index == active_entries[1] -%}
- {% assign isActive2 = true -%}
- {% assign class2 = class2 | append: ' active' -%}
- {% endif -%}
-
- {% if entry2 == 'divider' -%}
-
-
-
- {%- elsif entry2.children == nil -%}
-
- -
- {{entry2.title}}
- {% if entry2.permalink == nil -%}
- (TBC)
- {%- elsif entry2.permalink contains '://' -%}
-
- {% endif -%}
-
-
-
- {%- else -%}
-
- {% assign class2 = class2 | append: ' collapsable' -%}
-
- {% if isActive2 or entry2.expanded -%}
- {% assign expanded = 'true' -%}
- {% assign show = 'show' -%}
- {% else -%}
- {% assign class2 = class2 | append: ' collapsed' -%}
- {% assign expanded = 'false' -%}
- {% assign show = '' -%}
- {% endif -%}
-
- {% assign id2 = id1 | append: '-' | append: forloop.index -%}
- {% assign href = entry2.permalink -%}
- {% unless href -%}
- {% assign href = '#' | append: id2 -%}
- {% endunless -%}
-
- -
- {{entry2.title}}
-
-
- {%- endif -%}
- {%- endfor %}
+ {% include sidenav-level-2.html -%}
{%- endfor -%}