texinfo-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[no subject]


From: Patrice Dumas
Date: Thu, 9 May 2024 15:52:47 -0400 (EDT)

branch: master
commit e17fd07e65c57572f9fd9fcca057107cd98136b0
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Thu May 9 14:22:28 2024 +0200

    * tp/Texinfo/ParserNonXS.pm (_split_delimiters)
    (_next_bracketed_or_word_agg, _parse_def),
    tp/Texinfo/XS/parsetexi/def.c (next_bracketed_or_word_agg)
    (split_delimiters, parse_def): put lone commands definition line
    arguments in a def_aggregate type container.  When parsing remaining
    arguments of a definition line, put everything that is not a lone
    bracketed_arg in a def_aggregate.
---
 ChangeLog                                          |   10 +
 tp/TODO                                            |    5 +
 tp/Texinfo/ParserNonXS.pm                          |   28 +-
 tp/Texinfo/XS/parsetexi/def.c                      |   25 +-
 tp/t/results/conditionals/defcondx_Dbar.pl         |   14 +-
 tp/t/results/conditionals/defcondx_Ubar.pl         |    7 +-
 tp/t/results/converters_tests/complex_nestings.pl  |   82 +-
 .../conversion_with_undef_customization.pl         |   21 +-
 .../converters_tests/definition_commands.pl        | 6965 +++++++++++++-------
 .../converters_tests/frenchspacing_and_code.pl     |  168 +-
 .../converters_tests/test_deftypefnnewline.pl      |  568 +-
 tp/t/results/coverage/def.pl                       |  203 +-
 tp/t/results/def/adjacent_defline.pl               |   28 +-
 tp/t/results/def/all_commands.pl                   |  843 ++-
 tp/t/results/def/all_commands_delimiters.pl        | 4179 ++++++++----
 .../def/all_commands_delimiters_printindex.pl      | 4179 ++++++++----
 tp/t/results/def/all_commands_printindex.pl        |  843 ++-
 tp/t/results/def/ampchar.pl                        |   69 +-
 tp/t/results/def/code_in_def.pl                    |   48 +-
 tp/t/results/def/comment_index_before_defline.pl   |   14 +-
 tp/t/results/def/def_defx_mismatch.pl              |   47 +-
 tp/t/results/def/def_groupings_args.pl             |   28 +-
 tp/t/results/def/defline_no_params.pl              |   14 +-
 tp/t/results/def/deftypeline.pl                    |   56 +-
 tp/t/results/def/defx_after_comment.pl             |   35 +-
 tp/t/results/def/defx_after_comment_in_example.pl  |   35 +-
 tp/t/results/def/defx_after_empty_line.pl          |   35 +-
 .../def/defx_after_empty_line_in_example.pl        |   35 +-
 tp/t/results/def/defx_after_paragraph_end.pl       |   35 +-
 .../def/defx_after_preformatted_with_text.pl       |   35 +-
 tp/t/results/def/defx_after_text.pl                |   35 +-
 tp/t/results/def/defx_in_example.pl                |   35 +-
 tp/t/results/def/double_command.pl                 |  446 +-
 tp/t/results/def/empty_def_arguments.pl            |   82 +-
 tp/t/results/def/empty_def_command.pl              |   42 +-
 tp/t/results/def/empty_deftype.pl                  |  134 +-
 tp/t/results/def/empty_main_def_arguments.pl       |    7 +-
 tp/t/results/def/end_of_line_end_file.pl           |   14 +-
 tp/t/results/def/end_of_line_protect_at_end.pl     |   14 +-
 tp/t/results/def/end_of_lines_protected.pl         |   42 +-
 .../def/end_of_lines_protected_in_footnote.pl      |   42 +-
 .../def/end_of_lines_protected_non_ascii.pl        |   42 +-
 tp/t/results/def/inter_item_commands_in_def.pl     |   89 +-
 .../def/inter_item_commands_in_def_in_example.pl   |   89 +-
 tp/t/results/def/leading_space_in_def_arg.pl       |    7 +-
 tp/t/results/def/multiple_defline.pl               |   28 +-
 tp/t/results/def/no_category_or_no_name.pl         |   21 +-
 tp/t/results/def/not_closed.pl                     |   44 +-
 tp/t/results/def/omit_def_space.pl                 |   32 +-
 tp/t/results/def/protected_brace.pl                |   16 +-
 tp/t/results/def/ref_in_def.pl                     |  312 +-
 tp/t/results/def/text_block_before_defline.pl      |   14 +-
 tp/t/results/def/wrong_braces_simple.pl            |  126 +-
 tp/t/results/def/wrong_braces_with_end_of_lines.pl |   28 +-
 .../deftypefnnewline_for_copying_after.pl          |   46 +-
 .../deftypefnnewline_for_copying_before.pl         |   46 +-
 tp/t/results/indices/empty_string_index_entry.pl   |   22 +-
 .../indices/printindex_index_entry_in_copying.pl   |   36 +-
 ...ndex_index_entry_in_copying_no_insertcopying.pl |   36 +-
 .../indices/same_index_entry_merged_indices.pl     |   53 +-
 tp/t/results/info_tests/def_in_copying.pl          |   56 +-
 tp/t/results/info_tests/test_index.pl              |   42 +-
 .../translation_in_parser_in_translation.pl        |   56 +-
 .../results/invalid_nestings/block_not_matching.pl |    7 +-
 .../invalid_nestings/def_in_style_command.pl       |   16 +-
 .../def_not_closed_in_menu_description.pl          |   14 +-
 tp/t/results/invalid_nestings/on_def_line.pl       |  166 +-
 .../invalid_nestings/section_on_def_line.pl        |   14 +-
 .../invalid_nestings/section_on_defx_line.pl       |   28 +-
 tp/t/results/languages/documentlanguage.pl         |   68 +-
 tp/t/results/languages/documentlanguage_option.pl  |   68 +-
 tp/t/results/languages/documentlanguage_unknown.pl |   68 +-
 .../results/languages/multiple_documentlanguage.pl |  189 +-
 tp/t/results/languages/multiple_in_preamble.pl     |  189 +-
 .../languages/multiple_in_preamble_before_node.pl  |  126 +-
 tp/t/results/languages/multiple_lang_chapters.pl   |  183 +-
 .../languages/multiple_lang_chapters_latex.pl      |  183 +-
 .../languages/multiple_lang_chapters_texi2html.pl  |  183 +-
 tp/t/results/languages/simple_documentlanguage.pl  |   61 +-
 tp/t/results/languages/unknown_region.pl           |   61 +-
 tp/t/results/latex_tests/brace_in_index.pl         |    9 +-
 tp/t/results/linemacro/api_doc_with_linemacro.pl   |  361 +-
 .../linemacro/block_begin_end_in_linemacro_call.pl |    7 +-
 tp/t/results/linemacro/empty_last_argument.pl      |   42 +-
 .../results/linemacro/last_argument_with_braces.pl |   84 +-
 tp/t/results/linemacro/nested_linemacro_calls.pl   |    7 +-
 .../linemacro/newline_and_continuation_in_brace.pl |    7 +-
 tp/t/results/linemacro/protected_spaces_on_line.pl |   53 +-
 .../linemacro/simple_nested_linemacro_calls.pl     |    7 +-
 .../linemacro/spaces_after_command_in_call.pl      |   73 +-
 ...paces_after_macro_linemacro_commands_in_call.pl |   14 +-
 .../spaces_after_unknown_command_in_call.pl        |   47 +-
 tp/t/results/linemacro/spaces_in_args.pl           |   14 +-
 tp/t/results/linemacro/spaces_in_call.pl           |    7 +-
 tp/t/results/linemacro/verb_in_linemacro_call.pl   |   14 +-
 tp/t/results/macro/macro_in_def_delimiters.pl      |   14 +-
 tp/t/results/menu/menu_in_deffn.pl                 |   14 +-
 tp/t/results/preformatted/def_in_example.pl        |   18 +-
 .../res_parser/formatting_xml/formatting.xml       |  104 +-
 99 files changed, 15986 insertions(+), 7322 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 9d7537a422..963af1d9db 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2024-05-09  Patrice Dumas  <pertusus@free.fr>
+
+       * tp/Texinfo/ParserNonXS.pm (_split_delimiters)
+       (_next_bracketed_or_word_agg, _parse_def),
+       tp/Texinfo/XS/parsetexi/def.c (next_bracketed_or_word_agg)
+       (split_delimiters, parse_def): put lone commands definition line
+       arguments in a def_aggregate type container.  When parsing remaining
+       arguments of a definition line, put everything that is not a lone
+       bracketed_arg in a def_aggregate.
+
 2024-05-07  Patrice Dumas  <pertusus@free.fr>
 
        * tp/Texinfo/ParserNonXS.pm (_parse_def),
diff --git a/tp/TODO b/tp/TODO
index d6f5d635b2..dd6edee3a7 100644
--- a/tp/TODO
+++ b/tp/TODO
@@ -10,6 +10,11 @@ This is the todo list for texi2any
 Before next release
 ===================
 
+Consider text in def_category_inserted and untranslated_def_category_inserted
+never to be true text but always be Texinfo?  Currently it is different for
+untranslated_def_category_inserted (nevever recusrse in the element in
+converters) and def_category_inserted?  Or use args instead of contents
+to mark that it is special?
 
 Bugs
 ====
diff --git a/tp/Texinfo/ParserNonXS.pm b/tp/Texinfo/ParserNonXS.pm
index 0ef1974658..5a117c3102 100644
--- a/tp/Texinfo/ParserNonXS.pm
+++ b/tp/Texinfo/ParserNonXS.pm
@@ -3125,9 +3125,14 @@ sub _split_delimiters
 {
   my ($self, $root, $current, $source_info) = @_;
 
-  if (defined $root->{'type'} # 'spaces' for spaces
-      or !defined $root->{'text'}) {
+  if ($root->{'type'} and ($root->{'type'} eq 'bracketed_arg'
+                           or defined $root->{'text'})) {
     return $root;
+  } elsif (!defined $root->{'text'}) {
+    my $new = {'type' => 'def_aggregate', 'parent' => $current,
+               'contents' => [$root]};
+    $root->{'parent'} = $current;
+    return $new;
   } else {
     my @elements;
     my $type;
@@ -3219,8 +3224,7 @@ sub _split_def_args
   return $root;
 }
 
-# the index is set past the gathered or aggregated
-# element.
+# the index is set past the gathered or aggregated element.
 sub _next_bracketed_or_word_agg($$)
 {
   my $current = shift;
@@ -3248,9 +3252,13 @@ sub _next_bracketed_or_word_agg($$)
 
   return undef if ($num == 0);
 
-  return $current->{'contents'}->[$$index_ref -1]
-    if ($num == 1);
-
+  if ($num == 1) {
+    my $element = $current->{'contents'}->[$$index_ref -1];
+    if ($element->{'type'} and $element->{'type'} eq 'bracketed_arg') {
+      # there is only one bracketed element
+      return $element;
+    }
+  }
   my @gathered_contents
     = splice(@{$current->{'contents'}}, $$index_ref - $num, $num);
   my $new = {'type' => 'def_aggregate', 'parent' => $current,
@@ -3368,7 +3376,11 @@ sub _parse_def($$$$)
     if ($content->{'type'} and $content->{'type'} eq 'spaces') {
     } elsif ($content->{'type'} and $content->{'type'} eq 'delimiter') {
       $type = $set_type_not_arg;
-    } elsif ($content->{'cmdname'} and $content->{'cmdname'} ne 'code') {
+    } elsif ($content->{'type'} and $content->{'type'} eq 'def_aggregate'
+             and $content->{'contents'}
+             and scalar(@{$content->{'contents'}}) == 1
+             and $content->{'contents'}->[0]->{'cmdname'}
+             and $content->{'contents'}->[0]->{'cmdname'} ne 'code') {
       $content->{'extra'} = {} if (!$content->{'extra'});
       $content->{'extra'}->{'def_role'} = 'arg';
       $type = $set_type_not_arg;
diff --git a/tp/Texinfo/XS/parsetexi/def.c b/tp/Texinfo/XS/parsetexi/def.c
index 5dae396385..687c2cc22b 100644
--- a/tp/Texinfo/XS/parsetexi/def.c
+++ b/tp/Texinfo/XS/parsetexi/def.c
@@ -127,7 +127,14 @@ next_bracketed_or_word_agg (ELEMENT *current, int *i)
     return 0;
 
   if (num == 1)
-    return current->contents.list[*i - 1];
+    {
+      /* FIXME e is probably already this element */
+      e = current->contents.list[*i - 1];
+
+      /* there is only one bracketed element */
+      if (e->type == ET_bracketed_arg)
+        return e;
+    }
 
   new = new_element (ET_def_aggregate);
   for (j = 0; j < num; j++)
@@ -199,9 +206,18 @@ split_delimiters (ELEMENT *current, int starting_idx)
       uint8_t *u8_p;
       size_t u8_len;
 
-      if (e->type != ET_NONE
-          || e->text.end == 0)
+      if (e->type != ET_NONE && (e->type == ET_bracketed_arg
+                                 || e->text.end > 0))
         continue;
+      else if (e->text.end == 0)
+        {
+          new = new_element (ET_def_aggregate);
+          new->parent = e->parent;
+          add_to_element_contents (new, e);
+          current->contents.list[i] = new;
+          continue;
+        }
+
       p = e->text.text;
 
       if (e->source_mark_list.number)
@@ -467,7 +483,8 @@ parse_def (enum command_id command, ELEMENT *current)
           type = set_type_not_arg;
           continue;
         }
-      if (e->cmd && e->cmd != CM_code)
+      if (e->type == ET_def_aggregate && e->contents.number == 1
+          && e->contents.list[0]->cmd && e->contents.list[0]->cmd != CM_code)
         {
           add_extra_string_dup (e, "def_role", "arg");
           type = set_type_not_arg;
diff --git a/tp/t/results/conditionals/defcondx_Dbar.pl 
b/tp/t/results/conditionals/defcondx_Dbar.pl
index 99cc56f38b..8883fbe4d4 100644
--- a/tp/t/results/conditionals/defcondx_Dbar.pl
+++ b/tp/t/results/conditionals/defcondx_Dbar.pl
@@ -104,10 +104,15 @@ $result_trees{'defcondx_Dbar'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -180,10 +185,15 @@ $result_trees{'defcondx_Dbar'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'bar'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/conditionals/defcondx_Ubar.pl 
b/tp/t/results/conditionals/defcondx_Ubar.pl
index 54af83e2bd..f32d786e8d 100644
--- a/tp/t/results/conditionals/defcondx_Ubar.pl
+++ b/tp/t/results/conditionals/defcondx_Ubar.pl
@@ -104,10 +104,15 @@ $result_trees{'defcondx_Ubar'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/converters_tests/complex_nestings.pl 
b/tp/t/results/converters_tests/complex_nestings.pl
index 70b0c601e7..89fd976703 100644
--- a/tp/t/results/converters_tests/complex_nestings.pl
+++ b/tp/t/results/converters_tests/complex_nestings.pl
@@ -164,13 +164,18 @@ $result_trees{'complex_nestings'} = {
                         {
                           'contents' => [
                             {
-                              'text' => 'Function'
+                              'contents' => [
+                                {
+                                  'text' => 'Function'
+                                }
+                              ],
+                              'type' => 'def_category_inserted'
                             }
                           ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'type' => 'def_category_inserted'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -214,23 +219,28 @@ $result_trees{'complex_nestings'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'arg'
+                                  'contents' => [
+                                    {
+                                      'text' => 'arg'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 9
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'arg'
                           },
-                          'source_info' => {
-                            'line_nr' => 9
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -240,18 +250,23 @@ $result_trees{'complex_nestings'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'type' => 'brace_command_arg'
+                              'args' => [
+                                {
+                                  'type' => 'brace_command_arg'
+                                }
+                              ],
+                              'cmdname' => 'dots',
+                              'source_info' => {
+                                'line_nr' => 9
+                              }
                             }
                           ],
-                          'cmdname' => 'dots',
                           'extra' => {
                             'def_role' => 'arg'
                           },
-                          'source_info' => {
-                            'line_nr' => 9
-                          }
+                          'type' => 'def_aggregate'
                         }
                       ],
                       'info' => {
@@ -285,13 +300,18 @@ $result_trees{'complex_nestings'} = {
                         {
                           'contents' => [
                             {
-                              'text' => 'Function'
+                              'contents' => [
+                                {
+                                  'text' => 'Function'
+                                }
+                              ],
+                              'type' => 'def_category_inserted'
                             }
                           ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'type' => 'def_category_inserted'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -504,13 +524,18 @@ $result_trees{'complex_nestings'} = {
                                         {
                                           'contents' => [
                                             {
-                                              'text' => 'Variable'
+                                              'contents' => [
+                                                {
+                                                  'text' => 'Variable'
+                                                }
+                                              ],
+                                              'type' => 'def_category_inserted'
                                             }
                                           ],
                                           'extra' => {
                                             'def_role' => 'category'
                                           },
-                                          'type' => 'def_category_inserted'
+                                          'type' => 'def_aggregate'
                                         },
                                         {
                                           'extra' => {
@@ -593,13 +618,18 @@ $result_trees{'complex_nestings'} = {
                                         {
                                           'contents' => [
                                             {
-                                              'text' => 'Variable'
+                                              'contents' => [
+                                                {
+                                                  'text' => 'Variable'
+                                                }
+                                              ],
+                                              'type' => 'def_category_inserted'
                                             }
                                           ],
                                           'extra' => {
                                             'def_role' => 'category'
                                           },
-                                          'type' => 'def_category_inserted'
+                                          'type' => 'def_aggregate'
                                         },
                                         {
                                           'extra' => {
@@ -1324,12 +1354,12 @@ $result_converted{'xml'}->{'complex_nestings'} = '<node 
name="Top" spaces=" "><n
 
 <example endspaces=" ">
 <pre xml:space="preserve">deffs
-</pre><defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="1">my def</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction bracketed="on">my 
def</deffunction> <defparam>args</defparam> <defparam><var>arg</var></defparam> 
<defparam>&dots;</defparam></definitionterm>
-<defunx spaces=" "><definitionterm><indexterm index="fn" number="2">other 
def</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction bracketed="on">other 
def</deffunction> <defparam>no</defparam> 
<defparam>args</defparam></definitionterm></defunx>
+</pre><defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="1">my def</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction bracketed="on">my def</deffunction> <defparam>args</defparam> 
<defparam><var>arg</var></defparam> <defparam>&dots;</defparam></definitionterm>
+<defunx spaces=" "><definitionterm><indexterm index="fn" number="2">other 
def</indexterm><defcategory automatic="on">Function</defcategory> <deffunction 
bracketed="on">other def</deffunction> <defparam>no</defparam> 
<defparam>args</defparam></definitionterm></defunx>
 <definitionitem><deffn spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="3">name</indexterm><defcategory 
bracketed="on">type</defcategory> <deffunction 
bracketed="on">name</deffunction> <defparam>and</defparam> 
<defparam>now</defparam> <defparam>the</defparam> 
<defparam>args</defparam></definitionterm>
-<definitionitem><defvar spaces=" " endspaces=" "><definitionterm><indexterm 
index="vr" number="1">variables</indexterm><defcategory automatic="on" 
bracketed="on">Variable</defcategory> <defvariable 
bracketed="on">variables</defvariable> 
<defparam>variable-name</defparam></definitionterm>
+<definitionitem><defvar spaces=" " endspaces=" "><definitionterm><indexterm 
index="vr" number="1">variables</indexterm><defcategory 
automatic="on">Variable</defcategory> <defvariable 
bracketed="on">variables</defvariable> 
<defparam>variable-name</defparam></definitionterm>
 <pre xml:space="preserve">
-</pre><defvarx spaces=" "><definitionterm><indexterm index="vr" 
number="2">variables too</indexterm><defcategory automatic="on" 
bracketed="on">Variable</defcategory> <defvariable bracketed="on">variables 
too</defvariable> <defparam>other-variable</defparam></definitionterm></defvarx>
+</pre><defvarx spaces=" "><definitionterm><indexterm index="vr" 
number="2">variables too</indexterm><defcategory 
automatic="on">Variable</defcategory> <defvariable bracketed="on">variables 
too</defvariable> <defparam>other-variable</defparam></definitionterm></defvarx>
 <definitionitem><pre xml:space="preserve">THis is the defvar
 
 A table within the def
diff --git 
a/tp/t/results/converters_tests/conversion_with_undef_customization.pl 
b/tp/t/results/converters_tests/conversion_with_undef_customization.pl
index e2634f02b3..8aa48925ce 100644
--- a/tp/t/results/converters_tests/conversion_with_undef_customization.pl
+++ b/tp/t/results/converters_tests/conversion_with_undef_customization.pl
@@ -411,10 +411,15 @@ $result_trees{'conversion_with_undef_customization'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -424,10 +429,15 @@ $result_trees{'conversion_with_undef_customization'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -437,10 +447,15 @@ $result_trees{'conversion_with_undef_customization'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/converters_tests/definition_commands.pl 
b/tp/t/results/converters_tests/definition_commands.pl
index 090e5dd82a..2c98128b14 100644
--- a/tp/t/results/converters_tests/definition_commands.pl
+++ b/tp/t/results/converters_tests/definition_commands.pl
@@ -144,10 +144,15 @@ $result_trees{'definition_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Func'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Func'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -157,10 +162,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fname'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'fname'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -318,10 +328,15 @@ $result_trees{'definition_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Func'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Func'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -331,10 +346,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fname'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'fname'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -344,23 +364,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'a---rg1'
+                              'contents' => [
+                                {
+                                  'text' => 'a---rg1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 11
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 11
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -370,23 +395,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'a--rg2'
+                              'contents' => [
+                                {
+                                  'text' => 'a--rg2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 11
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 11
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -518,10 +548,15 @@ $result_trees{'definition_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Func'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Func'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -531,10 +566,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fname'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'fname'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -544,36 +584,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'a---rg1'
+                                      'contents' => [
+                                        {
+                                          'text' => 'a---rg1'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 15
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 15
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -583,36 +628,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'a--rg2'
+                                      'contents' => [
+                                        {
+                                          'text' => 'a--rg2'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 15
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 15
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -746,13 +796,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -762,10 +817,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -906,13 +966,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -922,10 +987,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -955,23 +1025,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 20
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 20
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1000,23 +1075,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 20
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 20
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1025,23 +1105,28 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']]'
+                              'contents' => [
+                                {
+                                  'text' => ']]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 20
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 20
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1101,13 +1186,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1117,10 +1207,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1150,23 +1245,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 21
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 21
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1195,23 +1295,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 21
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 21
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1220,23 +1325,28 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']]'
+                              'contents' => [
+                                {
+                                  'text' => ']]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 21
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 21
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1296,13 +1406,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1312,10 +1427,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1345,23 +1465,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 22
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 22
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1390,23 +1515,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 22
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 22
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1415,23 +1545,28 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']]'
+                              'contents' => [
+                                {
+                                  'text' => ']]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 22
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 22
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1491,13 +1626,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1507,10 +1647,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1540,23 +1685,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 23
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 23
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1585,23 +1735,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 23
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 23
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1610,23 +1765,28 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']]'
+                              'contents' => [
+                                {
+                                  'text' => ']]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 23
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 23
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1686,13 +1846,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1702,10 +1867,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1735,23 +1905,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 24
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 24
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1780,23 +1955,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 24
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 24
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1805,23 +1985,28 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']]'
+                              'contents' => [
+                                {
+                                  'text' => ']]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 24
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 24
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1881,13 +2066,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1897,10 +2087,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1930,36 +2125,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 25
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 25
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 25
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 25
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1988,36 +2188,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 25
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 25
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 25
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 25
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2026,36 +2231,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 25
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 25
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 25
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 25
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2115,13 +2325,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2131,10 +2346,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2164,36 +2384,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 26
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 26
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 26
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 26
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2222,36 +2447,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 26
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 26
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 26
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 26
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2260,36 +2490,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 26
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 26
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 26
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 26
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2349,13 +2584,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2365,10 +2605,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2398,36 +2643,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 27
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 27
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 27
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 27
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2456,36 +2706,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 27
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 27
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 27
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 27
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2494,36 +2749,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 27
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 27
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 27
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 27
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2583,13 +2843,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2599,10 +2864,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2632,36 +2902,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 28
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 28
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 28
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 28
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2690,36 +2965,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 28
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 28
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 28
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 28
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2728,36 +3008,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 28
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 28
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 28
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 28
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2817,13 +3102,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2833,10 +3123,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2866,36 +3161,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 29
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 29
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 29
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 29
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2924,36 +3224,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 29
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 29
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 29
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 29
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2962,36 +3267,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 29
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 29
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 29
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 29
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3051,13 +3361,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3067,10 +3382,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3100,36 +3420,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 30
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 30
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 30
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 30
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3158,36 +3483,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 30
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 30
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 30
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 30
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3196,36 +3526,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 30
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 30
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 30
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 30
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3285,13 +3620,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3301,10 +3641,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3334,36 +3679,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 31
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 31
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 31
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 31
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3392,36 +3742,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 31
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 31
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 31
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 31
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3430,36 +3785,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 31
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 31
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 31
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 31
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3519,13 +3879,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3535,10 +3900,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3568,36 +3938,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 32
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 32
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 32
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 32
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3626,36 +4001,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 32
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 32
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 32
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 32
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3664,36 +4044,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 32
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 32
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 32
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 32
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3753,13 +4138,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3769,10 +4159,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3802,36 +4197,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 33
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 33
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 33
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 33
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3860,36 +4260,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 33
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 33
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 33
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 33
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3898,36 +4303,41 @@ $result_trees{'definition_commands'} = {
                       'text' => 'inc'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']]'
+                                      'contents' => [
+                                        {
+                                          'text' => ']]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 33
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 33
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 33
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 33
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4049,13 +4459,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4065,10 +4480,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4128,13 +4548,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4144,10 +4569,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4157,23 +4587,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'va---riable'
+                              'contents' => [
+                                {
+                                  'text' => 'va---riable'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 38
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 38
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4226,13 +4661,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4242,10 +4682,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4255,23 +4700,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'va---riable'
+                              'contents' => [
+                                {
+                                  'text' => 'va---riable'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 39
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 39
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4324,13 +4774,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4340,10 +4795,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4353,23 +4813,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'va---riable'
+                              'contents' => [
+                                {
+                                  'text' => 'va---riable'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 40
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 40
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4422,13 +4887,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4438,10 +4908,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4451,23 +4926,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'va---riable'
+                              'contents' => [
+                                {
+                                  'text' => 'va---riable'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 41
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 41
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4520,13 +5000,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4536,10 +5021,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4549,23 +5039,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'va---riable'
+                              'contents' => [
+                                {
+                                  'text' => 'va---riable'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 42
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 42
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4618,13 +5113,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4634,10 +5134,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4647,36 +5152,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 43
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 43
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 43
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 43
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4729,13 +5239,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4745,10 +5260,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4758,36 +5278,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 44
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 44
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 44
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 44
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4840,13 +5365,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4856,10 +5386,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4869,36 +5404,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 45
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 45
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 45
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 45
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4951,13 +5491,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4967,10 +5512,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4980,36 +5530,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 46
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 46
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
-                        }
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 46
+                          }
+                        }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 46
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5062,13 +5617,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5078,10 +5638,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5091,36 +5656,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 47
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 47
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 47
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 47
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5173,13 +5743,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5189,10 +5764,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5202,36 +5782,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 48
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 48
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 48
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 48
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5284,13 +5869,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5300,10 +5890,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5313,36 +5908,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 49
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 49
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 49
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 49
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5395,13 +5995,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5411,10 +6016,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5424,36 +6034,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 50
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 50
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 50
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 50
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5506,13 +6121,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5522,10 +6142,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5535,36 +6160,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'va---riable'
+                                      'contents' => [
+                                        {
+                                          'text' => 'va---riable'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 51
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 51
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 51
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 51
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5677,10 +6307,15 @@ $result_trees{'definition_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Request'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Request'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5690,23 +6325,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '.ft'
+                              'contents' => [
+                                {
+                                  'text' => '.ft'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 55
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 55
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5723,36 +6363,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'font'
+                                      'contents' => [
+                                        {
+                                          'text' => 'font'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 55
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 55
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 55
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 55
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6161,74 +6806,89 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '\\f['
+                              'contents' => [
+                                {
+                                  'text' => '\\f['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 58
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 58
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'font'
+                                      'contents' => [
+                                        {
+                                          'text' => 'font'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 58
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 58
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 58
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 58
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 58
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 58
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -6266,10 +6926,15 @@ $result_trees{'definition_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Register'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Register'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6279,23 +6944,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '\\n[.sty]'
+                              'contents' => [
+                                {
+                                  'text' => '\\n[.sty]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 59
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 59
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -6508,13 +7178,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6524,10 +7199,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6551,23 +7231,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6577,23 +7262,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6603,23 +7293,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6629,23 +7324,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6655,36 +7355,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6694,36 +7399,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6733,49 +7443,54 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'args' => [
+                                      'contents' => [
                                         {
-                                          'contents' => [
+                                          'args' => [
                                             {
-                                              'text' => '['
+                                              'contents' => [
+                                                {
+                                                  'text' => '['
+                                                }
+                                              ],
+                                              'type' => 'brace_command_arg'
                                             }
                                           ],
-                                          'type' => 'brace_command_arg'
+                                          'cmdname' => 'slanted',
+                                          'source_info' => {
+                                            'line_nr' => 65
+                                          }
                                         }
                                       ],
-                                      'cmdname' => 'slanted',
-                                      'source_info' => {
-                                        'line_nr' => 65
-                                      }
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6785,36 +7500,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6838,23 +7558,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ','
+                              'contents' => [
+                                {
+                                  'text' => ','
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6864,23 +7589,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ','
+                              'contents' => [
+                                {
+                                  'text' => ','
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6890,23 +7620,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ','
+                              'contents' => [
+                                {
+                                  'text' => ','
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6916,23 +7651,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ','
+                              'contents' => [
+                                {
+                                  'text' => ','
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6942,36 +7682,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ','
+                                      'contents' => [
+                                        {
+                                          'text' => ','
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6981,36 +7726,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ','
+                                      'contents' => [
+                                        {
+                                          'text' => ','
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7020,49 +7770,54 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'args' => [
+                                      'contents' => [
                                         {
-                                          'contents' => [
+                                          'args' => [
                                             {
-                                              'text' => ','
+                                              'contents' => [
+                                                {
+                                                  'text' => ','
+                                                }
+                                              ],
+                                              'type' => 'brace_command_arg'
                                             }
                                           ],
-                                          'type' => 'brace_command_arg'
+                                          'cmdname' => 'slanted',
+                                          'source_info' => {
+                                            'line_nr' => 65
+                                          }
                                         }
                                       ],
-                                      'cmdname' => 'slanted',
-                                      'source_info' => {
-                                        'line_nr' => 65
-                                      }
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7072,36 +7827,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ','
+                                      'contents' => [
+                                        {
+                                          'text' => ','
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7125,23 +7885,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7151,23 +7916,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7177,23 +7947,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7203,23 +7978,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7229,36 +8009,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7268,36 +8053,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7307,49 +8097,54 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'args' => [
+                                      'contents' => [
                                         {
-                                          'contents' => [
+                                          'args' => [
                                             {
-                                              'text' => ']'
+                                              'contents' => [
+                                                {
+                                                  'text' => ']'
+                                                }
+                                              ],
+                                              'type' => 'brace_command_arg'
                                             }
                                           ],
-                                          'type' => 'brace_command_arg'
+                                          'cmdname' => 'slanted',
+                                          'source_info' => {
+                                            'line_nr' => 65
+                                          }
                                         }
                                       ],
-                                      'cmdname' => 'slanted',
-                                      'source_info' => {
-                                        'line_nr' => 65
-                                      }
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7359,36 +8154,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 65
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 65
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7422,13 +8222,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7438,10 +8243,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7472,23 +8282,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '[]'
+                              'contents' => [
+                                {
+                                  'text' => '[]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7498,23 +8313,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '[]'
+                              'contents' => [
+                                {
+                                  'text' => '[]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7524,23 +8344,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '[]'
+                              'contents' => [
+                                {
+                                  'text' => '[]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7550,23 +8375,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '[]'
+                              'contents' => [
+                                {
+                                  'text' => '[]'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7576,36 +8406,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '[]'
+                                      'contents' => [
+                                        {
+                                          'text' => '[]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 66
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 66
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7615,36 +8450,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '[]'
+                                      'contents' => [
+                                        {
+                                          'text' => '[]'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 66
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 66
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7654,49 +8494,54 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'args' => [
+                                      'contents' => [
                                         {
-                                          'contents' => [
+                                          'args' => [
                                             {
-                                              'text' => '[]'
+                                              'contents' => [
+                                                {
+                                                  'text' => '[]'
+                                                }
+                                              ],
+                                              'type' => 'brace_command_arg'
                                             }
                                           ],
-                                          'type' => 'brace_command_arg'
+                                          'cmdname' => 'slanted',
+                                          'source_info' => {
+                                            'line_nr' => 66
+                                          }
                                         }
                                       ],
-                                      'cmdname' => 'slanted',
-                                      'source_info' => {
-                                        'line_nr' => 66
-                                      }
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 66
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 66
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 66
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 66
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7817,10 +8662,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7830,10 +8680,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7863,23 +8718,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 70
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 70
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7909,23 +8769,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 70
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 70
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8096,10 +8961,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8109,10 +8979,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8142,36 +9017,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'f---oo'
+                                      'contents' => [
+                                        {
+                                          'text' => 'f---oo'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 74
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 74
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 74
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 74
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8201,36 +9081,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'b--ar'
+                                      'contents' => [
+                                        {
+                                          'text' => 'b--ar'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 74
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 74
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 74
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 74
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8423,10 +9308,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8436,10 +9326,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8565,10 +9460,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8578,23 +9478,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 83
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 83
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8604,10 +9509,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8624,38 +9534,58 @@ $result_trees{'definition_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -8784,10 +9714,15 @@ $result_trees{'definition_commands'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'int'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'type'
                           },
-                          'text' => 'int'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -8797,10 +9732,15 @@ $result_trees{'definition_commands'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'foobar'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'foobar'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -8830,23 +9770,28 @@ $result_trees{'definition_commands'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'foo'
+                                  'contents' => [
+                                    {
+                                      'text' => 'foo'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 88
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'arg'
                           },
-                          'source_info' => {
-                            'line_nr' => 88
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -8876,23 +9821,28 @@ $result_trees{'definition_commands'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'bar'
+                                  'contents' => [
+                                    {
+                                      'text' => 'bar'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 88
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'arg'
                           },
-                          'source_info' => {
-                            'line_nr' => 88
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -9079,13 +10029,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9095,10 +10050,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'apply'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'apply'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9287,13 +10247,18 @@ $result_trees{'definition_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9303,10 +10268,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'apply'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'apply'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9329,36 +10299,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '&rest'
+                                      'contents' => [
+                                        {
+                                          'text' => '&rest'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 97
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 97
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 97
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 97
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9503,10 +10478,15 @@ $result_trees{'definition_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9516,10 +10496,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9542,23 +10527,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9568,23 +10558,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'a--b'
+                              'contents' => [
+                                {
+                                  'text' => 'a--b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9594,23 +10589,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'v--ar1'
+                              'contents' => [
+                                {
+                                  'text' => 'v--ar1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9640,23 +10640,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '--'
+                              'contents' => [
+                                {
+                                  'text' => '--'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9673,23 +10678,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'type o--ther'
+                              'contents' => [
+                                {
+                                  'text' => 'type o--ther'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9706,23 +10716,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'v---ar2'
+                              'contents' => [
+                                {
+                                  'text' => 'v---ar2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9746,23 +10761,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'float'
+                              'contents' => [
+                                {
+                                  'text' => 'float'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 102
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 102
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9779,23 +10799,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'var4'
+                              'contents' => [
+                                {
+                                  'text' => 'var4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 102
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 102
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9931,10 +10956,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9944,10 +10974,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9977,23 +11012,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 106
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 106
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10030,23 +11070,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 106
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 106
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10126,10 +11171,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10139,10 +11189,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10172,42 +11227,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10237,42 +11302,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10351,10 +11426,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10364,10 +11444,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10397,42 +11482,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 108
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 108
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 108
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 108
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10462,42 +11557,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 108
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 108
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 108
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 108
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10576,10 +11681,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10589,10 +11699,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10622,42 +11737,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 109
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 109
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 109
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 109
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10687,42 +11812,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 109
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 109
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 109
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 109
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10801,10 +11936,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10814,10 +11954,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10847,42 +11992,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10912,42 +12067,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11026,10 +12191,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11039,10 +12209,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11072,42 +12247,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 111
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 111
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '['
+                              'contents' => [
+                                {
+                                  'text' => '['
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 111
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 111
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11137,42 +12322,52 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 111
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 111
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => ']'
+                              'contents' => [
+                                {
+                                  'text' => ']'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 111
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 111
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11251,10 +12446,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11264,10 +12464,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11297,55 +12502,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 112
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 112
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 112
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 112
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 112
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 112
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11375,55 +12590,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 112
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 112
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 112
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 112
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 112
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 112
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11502,10 +12727,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11515,10 +12745,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11548,55 +12783,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 113
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 113
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11626,55 +12871,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 113
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 113
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11753,10 +13008,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11766,10 +13026,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11799,55 +13064,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 114
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 114
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 114
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 114
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 114
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 114
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11877,55 +13152,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 114
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 114
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 114
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 114
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 114
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 114
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12004,10 +13289,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12017,10 +13307,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12050,55 +13345,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 115
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 115
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 115
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 115
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 115
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 115
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12128,55 +13433,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 115
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 115
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 115
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 115
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 115
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 115
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12255,10 +13570,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12268,10 +13588,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12301,55 +13626,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 116
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 116
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12379,55 +13714,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 116
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 116
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12506,10 +13851,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12519,10 +13869,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12552,55 +13907,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 117
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 117
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 117
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 117
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 117
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 117
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12630,55 +13995,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 117
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 117
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 117
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 117
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 117
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 117
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12757,10 +14132,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12770,10 +14150,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12803,55 +14188,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 118
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 118
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 118
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 118
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 118
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 118
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -12881,55 +14276,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 118
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 118
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 118
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 118
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 118
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 118
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13008,10 +14413,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13021,10 +14431,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13054,55 +14469,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 119
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 119
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13132,55 +14557,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 119
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 119
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13259,10 +14694,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13272,10 +14712,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13305,55 +14750,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 120
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 120
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => '['
+                                      'contents' => [
+                                        {
+                                          'text' => '['
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 120
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 120
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 120
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 120
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13383,55 +14838,65 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 120
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 120
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ']'
+                                      'contents' => [
+                                        {
+                                          'text' => ']'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 120
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 120
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 120
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 120
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13572,10 +15037,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13585,10 +15055,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13618,23 +15093,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 124
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 124
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13671,23 +15151,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 124
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 124
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13767,10 +15252,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13780,10 +15270,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13800,23 +15295,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i--nt'
+                              'contents' => [
+                                {
+                                  'text' => 'i--nt'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13826,23 +15326,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13879,23 +15384,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13981,10 +15491,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -13994,10 +15509,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14014,23 +15534,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i--nt'
+                              'contents' => [
+                                {
+                                  'text' => 'i--nt'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 126
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 126
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14040,23 +15565,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 126
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 126
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14093,23 +15623,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 126
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 126
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14195,10 +15730,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14208,10 +15748,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14228,23 +15773,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i--nt'
+                              'contents' => [
+                                {
+                                  'text' => 'i--nt'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'slanted',
+                          'source_info' => {
+                            'line_nr' => 127
+                          }
                         }
                       ],
-                      'cmdname' => 'slanted',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 127
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14254,23 +15804,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 127
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 127
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14307,23 +15862,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 127
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 127
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14409,10 +15969,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14422,10 +15987,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14442,23 +16012,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i--nt'
+                              'contents' => [
+                                {
+                                  'text' => 'i--nt'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14468,23 +16043,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14521,23 +16101,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14623,10 +16208,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14636,10 +16226,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14656,23 +16251,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i--nt'
+                              'contents' => [
+                                {
+                                  'text' => 'i--nt'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 129
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 129
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14682,23 +16282,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 129
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 129
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14735,23 +16340,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 129
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 129
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14837,10 +16447,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14850,10 +16465,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14870,36 +16490,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'b',
+                                  'source_info' => {
+                                    'line_nr' => 130
+                                  }
                                 }
                               ],
-                              'cmdname' => 'b',
-                              'source_info' => {
-                                'line_nr' => 130
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 130
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 130
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14909,23 +16534,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 130
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 130
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -14962,23 +16592,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 130
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 130
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15064,10 +16699,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15077,10 +16717,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15097,36 +16742,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 131
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 131
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15136,23 +16786,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15189,23 +16844,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15291,10 +16951,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15304,10 +16969,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15324,36 +16994,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 132
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 132
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 132
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
-                      },
-                      'source_info' => {
-                        'line_nr' => 132
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15363,23 +17038,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 132
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 132
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15416,23 +17096,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 132
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 132
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15518,10 +17203,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15531,10 +17221,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15551,36 +17246,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 133
+                                  }
                                 }
                               ],
-                              'cmdname' => 'code',
-                              'source_info' => {
-                                'line_nr' => 133
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 133
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 133
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15590,23 +17290,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 133
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 133
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15643,23 +17348,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 133
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 133
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15745,10 +17455,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15758,10 +17473,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15778,36 +17498,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 't',
+                                  'source_info' => {
+                                    'line_nr' => 134
+                                  }
                                 }
                               ],
-                              'cmdname' => 't',
-                              'source_info' => {
-                                'line_nr' => 134
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'r',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'r',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15817,23 +17542,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15870,23 +17600,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15972,10 +17707,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -15985,10 +17725,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16005,36 +17750,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 135
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 135
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 135
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 135
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16044,23 +17794,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 135
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 135
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16097,23 +17852,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 135
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 135
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16199,10 +17959,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16212,10 +17977,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16232,36 +18002,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 136
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
-                              'source_info' => {
-                                'line_nr' => 136
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 136
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 136
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16271,23 +18046,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 136
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 136
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16324,23 +18104,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 136
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 136
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16426,10 +18211,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16439,10 +18229,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16459,36 +18254,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 137
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 137
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16498,23 +18298,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16551,23 +18356,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16653,10 +18463,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16666,10 +18481,15 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16686,36 +18506,41 @@ $result_trees{'definition_commands'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i--nt'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i--nt'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'slanted',
+                                  'source_info' => {
+                                    'line_nr' => 138
+                                  }
                                 }
                               ],
-                              'cmdname' => 'slanted',
-                              'source_info' => {
-                                'line_nr' => 138
-                              }
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 138
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 138
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16725,23 +18550,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'f---oo'
+                              'contents' => [
+                                {
+                                  'text' => 'f---oo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 138
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 138
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -16778,23 +18608,28 @@ $result_trees{'definition_commands'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'b--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 138
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 138
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -17852,39 +19687,39 @@ $result_converted{'xml'}->{'definition_commands'} = 
'<node name="Top" spaces=" "
 <definitionitem><para>deffn r slanted for <var>a&textmdash;rg1</var> and 
<var>a&textndash;rg2</var>
 </para></definitionitem></deffn>
 
-<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="4">foobar</indexterm><defcategory automatic="on" bracketed="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defdelimiter>[</defdelimiter><defparam>from</defparam> <defparam>to</defparam> 
<defdelimiter>[</defdelimiter><defparam>inc</defparam><defdelimiter>]</defdelimiter><defdelimiter>]</defdelimiter><defdelimiter>)</defdelimiter>
 <defpar [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="5">foobar</indexterm><defcategory automatic="on" bracketed="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r>[</r></defparam><defparam>from</defparam> <defparam>to</defparam> 
<defparam><r>[</r></defparam><defparam>inc</defparam><defparam><r>]]</r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="6">foobar</indexterm><defcategory automatic="on" bracketed="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><var>[</var></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><var>[</var></defparam><defparam>inc</defparam><defparam><var>]]</var></defparam><defdelimiter>)</defdelimiter>
 <defparam>var</defparam></definitionterm [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="7">foobar</indexterm><defcategory automatic="on" bracketed="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><slanted>[</slanted></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><slanted>[</slanted></defparam><defparam>inc</defparam><defparam><slanted>]]</slanted></defparam><defdelimiter>)</defdelimiter>
 <defparam>slante [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="8">foobar</indexterm><defcategory automatic="on" bracketed="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><code>[</code></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><code>[</code></defparam><defparam>inc</defparam><defparam><code>]]</code></defparam><defdelimiter>)</defdelimiter>
 <defparam>code</defparam></definit [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="9">foobar</indexterm><defcategory automatic="on" bracketed="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t>[</t></defparam><defparam>from</defparam> <defparam>to</defparam> 
<defparam><t>[</t></defparam><defparam>inc</defparam><defparam><t>]]</t></defparam><defdelimiter>)</defdelimiter>
 <defparam>t</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="10">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t><b>[</b></t></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><t><b>[</b></t></defparam><defparam>inc</defparam><defparam><t><b>]]</b></t></defparam><defdelimiter>)</defdelimiter>
 <defparam>t:b</defparam></defi [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="11">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><var>[</var></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><var>[</var></r></defparam><defparam>inc</defparam><defparam><r><var>]]</var></r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r:var</d [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="12">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><slanted>[</slanted></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><slanted>[</slanted></r></defparam><defparam>inc</defparam><defparam><r><slanted>]]</slanted></r></defparam><defdelimiter>)</defdelim
 [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="13">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><code>[</code></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><code>[</code></r></defparam><defparam>inc</defparam><defparam><r><code>]]</code></r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r: [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="14">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><t>[</t></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><t>[</t></r></defparam><defparam>inc</defparam><defparam><r><t>]]</t></r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r:t</defparam></defi [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="15">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><code><var>[</var></code></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><code><var>[</var></code></defparam><defparam>inc</defparam><defparam><code><var>]]</var></code></defparam><defdelimiter>)</defdelimiter>
  [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="16">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t><var>[</var></t></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><t><var>[</var></t></defparam><defparam>inc</defparam><defparam><t><var>]]</var></t></defparam><defdelimiter>)</defdelimiter>
 <defparam>t:var</d [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="17">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><code><slanted>[</slanted></code></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><code><slanted>[</slanted></code></defparam><defparam>inc</defparam><defparam><code><slanted>]]</slanted></code></defparam><defdel
 [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="18">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t><slanted>[</slanted></t></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><t><slanted>[</slanted></t></defparam><defparam>inc</defparam><defparam><t><slanted>]]</slanted></t></defparam><defdelimiter>)</defdelim
 [...]
+<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="4">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defdelimiter>[</defdelimiter><defparam>from</defparam> <defparam>to</defparam> 
<defdelimiter>[</defdelimiter><defparam>inc</defparam><defdelimiter>]</defdelimiter><defdelimiter>]</defdelimiter><defdelimiter>)</defdelimiter>
 <defparam>default</def [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="5">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r>[</r></defparam><defparam>from</defparam> <defparam>to</defparam> 
<defparam><r>[</r></defparam><defparam>inc</defparam><defparam><r>]]</r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="6">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><var>[</var></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><var>[</var></defparam><defparam>inc</defparam><defparam><var>]]</var></defparam><defdelimiter>)</defdelimiter>
 <defparam>var</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="7">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><slanted>[</slanted></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><slanted>[</slanted></defparam><defparam>inc</defparam><defparam><slanted>]]</slanted></defparam><defdelimiter>)</defdelimiter>
 <defparam>slanted</defparam></d [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="8">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><code>[</code></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><code>[</code></defparam><defparam>inc</defparam><defparam><code>]]</code></defparam><defdelimiter>)</defdelimiter>
 <defparam>code</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="9">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t>[</t></defparam><defparam>from</defparam> <defparam>to</defparam> 
<defparam><t>[</t></defparam><defparam>inc</defparam><defparam><t>]]</t></defparam><defdelimiter>)</defdelimiter>
 <defparam>t</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="10">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t><b>[</b></t></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><t><b>[</b></t></defparam><defparam>inc</defparam><defparam><t><b>]]</b></t></defparam><defdelimiter>)</defdelimiter>
 <defparam>t:b</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="11">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><var>[</var></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><var>[</var></r></defparam><defparam>inc</defparam><defparam><r><var>]]</var></r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r:var</defparam></defin [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="12">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><slanted>[</slanted></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><slanted>[</slanted></r></defparam><defparam>inc</defparam><defparam><r><slanted>]]</slanted></r></defparam><defdelimiter>)</defdelimiter>
 <defparam [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="13">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><code>[</code></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><code>[</code></r></defparam><defparam>inc</defparam><defparam><r><code>]]</code></r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r:code</defparam> [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="14">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><r><t>[</t></r></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><r><t>[</t></r></defparam><defparam>inc</defparam><defparam><r><t>]]</t></r></defparam><defdelimiter>)</defdelimiter>
 <defparam>r:t</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="15">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><code><var>[</var></code></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><code><var>[</var></code></defparam><defparam>inc</defparam><defparam><code><var>]]</var></code></defparam><defdelimiter>)</defdelimiter>
 <defparam>code: [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="16">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t><var>[</var></t></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><t><var>[</var></t></defparam><defparam>inc</defparam><defparam><t><var>]]</var></t></defparam><defdelimiter>)</defdelimiter>
 <defparam>t:var</defparam></defin [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="17">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><code><slanted>[</slanted></code></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><code><slanted>[</slanted></code></defparam><defparam>inc</defparam><defparam><code><slanted>]]</slanted></code></defparam><defdelimiter>)</defde
 [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="18">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>(</defdelimiter><defparam>var</defparam> 
<defparam><t><slanted>[</slanted></t></defparam><defparam>from</defparam> 
<defparam>to</defparam> 
<defparam><t><slanted>[</slanted></t></defparam><defparam>inc</defparam><defparam><t><slanted>]]</slanted></t></defparam><defdelimiter>)</defdelimiter>
 <defparam [...]
 <definitionitem><para>separators
 </para></definitionitem></defspec>
 
-<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="19">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam>va---riable</defparam> <defparam>default</defparam></definitionterm>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="20">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><var>va---riable</var></defparam> 
<defparam>var</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="21">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r>va&textmdash;riable</r></defparam> 
<defparam>r</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="22">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><slanted>va---riable</slanted></defparam> 
<defparam>slanted</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="23">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><code>va---riable</code></defparam> 
<defparam>code</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="24">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t>va---riable</t></defparam> 
<defparam>t</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="25">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t><b>va---riable</b></t></defparam> 
<defparam>t:b</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="26">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><var>va&textmdash;riable</var></r></defparam> 
<defparam>r:var</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="27">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><slanted>va&textmdash;riable</slanted></r></defparam> 
<defparam>r:slanted</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="28">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><code>va---riable</code></r></defparam> 
<defparam>r:code</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="29">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><t>va---riable</t></r></defparam> 
<defparam>r:t</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="30">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><code><var>va---riable</var></code></defparam> 
<defparam>code:var</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="31">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t><var>va---riable</var></t></defparam> 
<defparam>t:var</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="32">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><code><slanted>va---riable</slanted></code></defparam> 
<defparam>code:slanted</defparam></definitionterm></defspecx>
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="33">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t><slanted>va---riable</slanted></t></defparam> 
<defparam>t:slanted</defparam></definitionterm></defspecx>
+<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="19">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam>va---riable</defparam> <defparam>default</defparam></definitionterm>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="20">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><var>va---riable</var></defparam> 
<defparam>var</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="21">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r>va&textmdash;riable</r></defparam> 
<defparam>r</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="22">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><slanted>va---riable</slanted></defparam> 
<defparam>slanted</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="23">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><code>va---riable</code></defparam> 
<defparam>code</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="24">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t>va---riable</t></defparam> 
<defparam>t</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="25">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t><b>va---riable</b></t></defparam> 
<defparam>t:b</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="26">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><var>va&textmdash;riable</var></r></defparam> 
<defparam>r:var</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="27">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><slanted>va&textmdash;riable</slanted></r></defparam> 
<defparam>r:slanted</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="28">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><code>va---riable</code></r></defparam> 
<defparam>r:code</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="29">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><r><t>va---riable</t></r></defparam> 
<defparam>r:t</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="30">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><code><var>va---riable</var></code></defparam> 
<defparam>code:var</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="31">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t><var>va---riable</var></t></defparam> 
<defparam>t:var</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="32">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><code><slanted>va---riable</slanted></code></defparam> 
<defparam>code:slanted</defparam></definitionterm></defspecx>
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="33">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defparam><t><slanted>va---riable</slanted></t></defparam> 
<defparam>t:slanted</defparam></definitionterm></defspecx>
 <definitionitem><para>name
 </para></definitionitem></defspec>
 
@@ -17898,8 +19733,8 @@ to <var>font</var> (one-character 
name&nbsp;<var>f</var>, two-character name
 <var>fn</var>).
 </para></definitionitem></deffn>
 
-<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="39">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>[</defdelimiter> <defparam><r>[</r></defparam> 
<defparam><slanted>[</slanted></defparam> <defparam><code>[</code></defparam> 
<defparam><t>[</t></defparam> <defparam><r><slanted>[</slanted></r></defparam> 
<defparam><r><code>[</code></r></defparam> <defparam><r><code><slant [...]
-<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="40">foobar</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>[</defdelimiter><defdelimiter>]</defdelimiter> 
<defparam><r>[]</r></defparam> <defparam><slanted>[]</slanted></defparam> 
<defparam><code>[]</code></defparam> <defparam><t>[]</t></defparam> 
<defparam><r><slanted>[]</slanted></r></defparam> 
<defparam><r><code>[]</code></r></defparam> <d [...]
+<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="39">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>[</defdelimiter> <defparam><r>[</r></defparam> 
<defparam><slanted>[</slanted></defparam> <defparam><code>[</code></defparam> 
<defparam><t>[</t></defparam> <defparam><r><slanted>[</slanted></r></defparam> 
<defparam><r><code>[</code></r></defparam> 
<defparam><r><code><slanted>[</slanted>< [...]
+<defspecx spaces=" "><definitionterm><indexterm index="fn" 
number="40">foobar</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>foobar</deffunction> 
<defdelimiter>[</defdelimiter><defdelimiter>]</defdelimiter> 
<defparam><r>[]</r></defparam> <defparam><slanted>[]</slanted></defparam> 
<defparam><code>[]</code></defparam> <defparam><t>[]</t></defparam> 
<defparam><r><slanted>[]</slanted></r></defparam> 
<defparam><r><code>[]</code></r></defparam> <defparam><r><cod [...]
 <definitionitem><para>test formatting of separators
 </para></definitionitem></defspec>
 
@@ -17926,11 +19761,11 @@ to <var>font</var> (one-character 
name&nbsp;<var>f</var>, two-character name
 </para></definitionitem></deftypefn>
 </quotation>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="44">apply</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>apply</deffunction> 
<defparam>function</defparam> <defparam>&amp;rest</defparam> 
<defparam>arguments</defparam></definitionterm>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="44">apply</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>apply</deffunction> <defparam>function</defparam> 
<defparam>&amp;rest</defparam> <defparam>arguments</defparam></definitionterm>
 <definitionitem><para><code>apply</code> calls no var <var>function</var> with 
<var>arguments</var>
 </para></definitionitem></defun>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="45">apply</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>apply</deffunction> 
<defparam>function</defparam> <defparam><r><b>&amp;rest</b></r></defparam> 
<defparam>argument</defparam></definitionterm>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="45">apply</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>apply</deffunction> <defparam>function</defparam> 
<defparam><r><b>&amp;rest</b></r></defparam> 
<defparam>argument</defparam></definitionterm>
 <definitionitem><para>explicit keyword marking, no var <var>function</var> 
with <var>arguments</var>
 </para></definitionitem></defun>
 
diff --git a/tp/t/results/converters_tests/frenchspacing_and_code.pl 
b/tp/t/results/converters_tests/frenchspacing_and_code.pl
index dd3f8c3fe4..68bd84bd2b 100644
--- a/tp/t/results/converters_tests/frenchspacing_and_code.pl
+++ b/tp/t/results/converters_tests/frenchspacing_and_code.pl
@@ -413,23 +413,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'v: g. h'
+                              'contents' => [
+                                {
+                                  'text' => 'v: g. h'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 18
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 18
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -439,23 +444,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'code? is: k'
+                              'contents' => [
+                                {
+                                  'text' => 'code? is: k'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 18
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 18
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -708,23 +718,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'vv: g? b'
+                              'contents' => [
+                                {
+                                  'text' => 'vv: g? b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 22
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 22
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -734,23 +749,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'vcode? is: a'
+                              'contents' => [
+                                {
+                                  'text' => 'vcode? is: a'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 22
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 22
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1231,23 +1251,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'v: g. h'
+                              'contents' => [
+                                {
+                                  'text' => 'v: g. h'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 38
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 38
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1257,23 +1282,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'code? is: k'
+                              'contents' => [
+                                {
+                                  'text' => 'code? is: k'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 38
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 38
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1526,23 +1556,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'vv: g? b'
+                              'contents' => [
+                                {
+                                  'text' => 'vv: g? b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 42
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 42
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1552,23 +1587,28 @@ $result_trees{'frenchspacing_and_code'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'vcode? is: a'
+                              'contents' => [
+                                {
+                                  'text' => 'vcode? is: a'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 42
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 42
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/converters_tests/test_deftypefnnewline.pl 
b/tp/t/results/converters_tests/test_deftypefnnewline.pl
index 64af0a7904..13523f86b6 100644
--- a/tp/t/results/converters_tests/test_deftypefnnewline.pl
+++ b/tp/t/results/converters_tests/test_deftypefnnewline.pl
@@ -215,13 +215,18 @@ $result_trees{'test_deftypefnnewline'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -231,10 +236,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'data-type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'data-type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -244,10 +254,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -354,10 +369,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -367,10 +387,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -380,10 +405,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefn_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -477,10 +507,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -490,10 +525,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -503,10 +543,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -516,10 +561,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -549,38 +599,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -663,10 +733,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -676,10 +751,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -689,10 +769,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -702,10 +787,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -722,38 +812,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -836,10 +946,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -849,10 +964,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -862,10 +982,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -875,10 +1000,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -895,38 +1025,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1009,10 +1159,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1022,10 +1177,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1035,10 +1195,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1048,10 +1213,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1081,38 +1251,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1195,10 +1385,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fun'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fun'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1208,10 +1403,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'arg'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'arg'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1344,13 +1544,18 @@ $result_trees{'test_deftypefnnewline'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1360,10 +1565,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'data-type2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'data-type2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1373,10 +1583,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1483,10 +1698,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1496,10 +1716,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1509,10 +1734,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefn_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefn_name2'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1606,10 +1836,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1619,10 +1854,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1632,10 +1872,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1645,10 +1890,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1678,38 +1928,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1792,10 +2062,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1805,10 +2080,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1818,10 +2098,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1831,10 +2116,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name2'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1851,38 +2141,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1965,10 +2275,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1978,10 +2293,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1991,10 +2311,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2004,10 +2329,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name2'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -2024,38 +2354,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -2138,10 +2488,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2151,10 +2506,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2164,10 +2524,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2177,10 +2542,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2210,38 +2580,58 @@ $result_trees{'test_deftypefnnewline'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass2'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -2324,10 +2714,15 @@ $result_trees{'test_deftypefnnewline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fun2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fun2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2337,10 +2732,15 @@ $result_trees{'test_deftypefnnewline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'arg2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'arg2'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -2861,7 +3261,7 @@ $result_converted{'xml'}->{'test_deftypefnnewline'} = 
'<setfilename file="test_d
 <node name="chapter" spaces=" "><nodename>chapter</nodename><nodeprev 
automatic="on">Top</nodeprev><nodeup automatic="on">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>chap</sectiontitle>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="1">name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>data-type</deftype> 
<deffunction>name</deffunction> 
<defparamtype>arguments...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="1">name</indexterm><defcategory automatic="on">Function</defcategory> 
<deftype>data-type</deftype> <deffunction>name</deffunction> 
<defparamtype>arguments...</defparamtype></definitionterm>
 <definitionitem><para>aaa
 </para></definitionitem></deftypefun>
 
@@ -2891,7 +3291,7 @@ $result_converted{'xml'}->{'test_deftypefnnewline'} = 
'<setfilename file="test_d
 
 <deftypefnnewline spaces=" " value="off" line="off"></deftypefnnewline>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="6">name2</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="6">name2</indexterm><defcategory automatic="on">Function</defcategory> 
<deftype>data-type2</deftype> <deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
 <definitionitem><para>aaa2
 </para></definitionitem></deftypefun>
 
diff --git a/tp/t/results/coverage/def.pl b/tp/t/results/coverage/def.pl
index ab1860d320..d9d0008c1c 100644
--- a/tp/t/results/coverage/def.pl
+++ b/tp/t/results/coverage/def.pl
@@ -43,10 +43,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--effn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--effn_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -152,10 +157,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'cate--gory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'cate--gory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -165,10 +175,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'de--ffn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'de--ffn_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -224,10 +239,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => '*',
+                      'contents' => [
+                        {
+                          'cmdname' => '*'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -359,10 +379,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -372,23 +397,28 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 11
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 11
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -466,10 +496,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -522,10 +557,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -599,10 +639,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -681,10 +726,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -763,10 +813,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'cmde'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'cmde'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -776,23 +831,28 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'id ule'
+                              'contents' => [
+                                {
+                                  'text' => 'id ule'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 16
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 16
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -842,10 +902,15 @@ $result_trees{'def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'cmde2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'cmde2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -855,42 +920,47 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
-                            {
-                              'text' => 'id '
-                            },
+                          'args' => [
                             {
-                              'args' => [
+                              'contents' => [
+                                {
+                                  'text' => 'id '
+                                },
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'samp',
+                                  'source_info' => {
+                                    'line_nr' => 17
+                                  }
+                                },
+                                {
+                                  'text' => ' ule'
                                 }
                               ],
-                              'cmdname' => 'samp',
-                              'source_info' => {
-                                'line_nr' => 17
-                              }
-                            },
-                            {
-                              'text' => ' ule'
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 17
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 17
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -956,10 +1026,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1071,10 +1146,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1127,10 +1207,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'followed'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'followed'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1242,10 +1327,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'after'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'after'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1357,10 +1447,15 @@ $result_trees{'def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffnx'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffnx'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/adjacent_defline.pl 
b/tp/t/results/def/adjacent_defline.pl
index 5840cda536..189050bbd3 100644
--- a/tp/t/results/def/adjacent_defline.pl
+++ b/tp/t/results/def/adjacent_defline.pl
@@ -31,10 +31,15 @@ $result_trees{'adjacent_defline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Funoid'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Funoid'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -44,10 +49,15 @@ $result_trees{'adjacent_defline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -107,10 +117,15 @@ $result_trees{'adjacent_defline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Funnyoid'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Funnyoid'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -120,10 +135,15 @@ $result_trees{'adjacent_defline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/all_commands.pl b/tp/t/results/def/all_commands.pl
index 56bb883b48..ad7c1f53e9 100644
--- a/tp/t/results/def/all_commands.pl
+++ b/tp/t/results/def/all_commands.pl
@@ -17,10 +17,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efvr_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efvr_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -126,10 +136,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -139,10 +154,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'n--ame'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'n--ame'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -248,10 +268,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -261,10 +286,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'n--ame'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'n--ame'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -357,10 +387,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -370,10 +405,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -383,10 +423,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefn_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -492,10 +537,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -505,10 +555,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -518,10 +573,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefn_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -614,10 +674,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -627,10 +692,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -640,10 +710,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -653,10 +728,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -686,38 +766,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -799,10 +899,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -812,10 +917,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -825,10 +935,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -838,10 +953,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -858,38 +978,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -971,10 +1111,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -984,10 +1129,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -997,10 +1147,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypevr_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypevr_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1093,10 +1248,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1106,10 +1266,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1119,10 +1284,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efcv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efcv_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1215,10 +1385,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1228,10 +1403,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1241,10 +1421,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efcv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efcv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1350,10 +1535,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1363,10 +1553,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1376,10 +1571,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1389,10 +1589,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1409,38 +1614,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1522,10 +1747,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1535,10 +1765,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1548,10 +1783,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1561,10 +1801,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1594,38 +1839,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1707,10 +1972,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1720,10 +1990,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1733,10 +2008,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1766,38 +2046,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1879,10 +2179,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1892,10 +2197,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1905,10 +2215,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1925,38 +2240,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -2038,10 +2373,15 @@ $result_trees{'all_commands'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2051,10 +2391,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftp_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftp_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2162,13 +2507,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2178,10 +2528,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efun_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efun_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2289,13 +2644,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Macro'
+                          'contents' => [
+                            {
+                              'text' => 'Macro'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2305,10 +2665,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmac_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmac_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2416,13 +2781,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2432,10 +2802,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efspec_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efspec_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2543,13 +2918,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2559,10 +2939,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efvar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efvar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -2657,13 +3042,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2673,10 +3063,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efvar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efvar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2797,13 +3192,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'User Option'
+                          'contents' => [
+                            {
+                              'text' => 'User Option'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2813,10 +3213,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efopt_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efopt_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -2911,13 +3316,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2927,10 +3337,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2940,10 +3355,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefun_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefun_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3051,13 +3471,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3067,10 +3492,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3080,10 +3510,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypevar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypevar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -3178,13 +3613,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3194,10 +3634,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3207,10 +3652,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efivar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -3227,38 +3677,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3342,13 +3812,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3358,10 +3833,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3371,10 +3851,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3384,10 +3869,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeivar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -3404,38 +3894,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3519,13 +4029,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method'
+                          'contents' => [
+                            {
+                              'text' => 'Method'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3535,10 +4050,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3548,10 +4068,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3581,38 +4106,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3696,13 +4241,18 @@ $result_trees{'all_commands'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method'
+                          'contents' => [
+                            {
+                              'text' => 'Method'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3712,10 +4262,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3725,10 +4280,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3738,10 +4298,15 @@ $result_trees{'all_commands'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypemethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypemethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3771,38 +4336,58 @@ $result_trees{'all_commands'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypemethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypemethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypemethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypemethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/def/all_commands_delimiters.pl 
b/tp/t/results/def/all_commands_delimiters.pl
index 90b9ac895e..4a2ee11841 100644
--- a/tp/t/results/def/all_commands_delimiters.pl
+++ b/tp/t/results/def/all_commands_delimiters.pl
@@ -17,10 +17,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'forward--char'
+                              'contents' => [
+                                {
+                                  'text' => 'forward--char'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -56,23 +66,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'nchars'
+                              'contents' => [
+                                {
+                                  'text' => 'nchars'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -204,23 +219,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -237,23 +257,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -290,23 +315,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -425,10 +455,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Variable'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Variable'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -438,10 +473,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fill-column'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'fill-column'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -573,23 +613,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 6
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 6
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -606,23 +651,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 6
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 6
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -659,23 +709,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 6
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 6
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -815,10 +870,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -828,10 +888,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -861,23 +926,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'foo'
+                              'contents' => [
+                                {
+                                  'text' => 'foo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 9
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 9
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -907,23 +977,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'bar'
+                              'contents' => [
+                                {
+                                  'text' => 'bar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 9
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 9
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1030,10 +1105,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1043,10 +1123,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1076,23 +1161,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'foo'
+                              'contents' => [
+                                {
+                                  'text' => 'foo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 12
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 12
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1122,23 +1212,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'bar'
+                              'contents' => [
+                                {
+                                  'text' => 'bar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 12
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 12
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1236,23 +1331,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 13
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 13
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1269,23 +1369,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 13
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 13
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1322,23 +1427,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 13
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 13
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1381,17 +1491,27 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'ct'
                     },
                     {
-                      'cmdname' => '*',
+                      'contents' => [
+                        {
+                          'cmdname' => '*'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'cmdname' => '*',
+                      'contents' => [
+                        {
+                          'cmdname' => '*'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
-                    },
+                      },
+                      'type' => 'def_aggregate'
+                    },
                     {
                       'extra' => {
                         'def_role' => 'spaces'
@@ -1503,10 +1623,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1516,10 +1641,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobug'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobug'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1619,10 +1749,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'stacks'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'stacks'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1632,10 +1767,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'private'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'private'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1645,10 +1785,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'push'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'push'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1665,23 +1810,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 's'
+                              'contents' => [
+                                {
+                                  'text' => 's'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 19
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 19
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1730,23 +1880,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'n'
+                              'contents' => [
+                                {
+                                  'text' => 'n'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 20
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 20
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1937,10 +2092,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1950,10 +2110,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'enable'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'enable'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2043,23 +2208,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 24
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 24
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2076,23 +2246,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 24
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 24
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2129,23 +2304,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 24
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 24
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2285,10 +2465,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'pair'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'pair'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2404,23 +2589,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 28
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 28
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2437,23 +2627,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 28
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 28
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2490,23 +2685,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 28
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 28
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2646,10 +2846,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2659,10 +2864,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2752,23 +2962,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 32
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 32
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2785,23 +3000,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 32
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 32
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2838,23 +3058,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 32
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 32
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2994,10 +3219,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3007,23 +3237,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 35
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 35
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3033,10 +3268,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3126,23 +3366,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 36
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 36
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3159,23 +3404,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 36
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 36
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3212,23 +3462,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 36
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 36
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3285,38 +3540,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3384,10 +3659,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3397,10 +3677,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'windows'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'windows'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3410,10 +3695,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3503,23 +3793,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 40
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 40
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3536,23 +3831,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 40
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 40
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3589,23 +3889,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 40
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 40
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3662,38 +3967,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'windows'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'windows'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'windows'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'windows'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3761,10 +4086,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3774,10 +4104,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3787,23 +4122,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 43
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 43
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3813,10 +4153,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3906,23 +4251,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 44
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 44
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3939,23 +4289,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 44
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 44
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3992,23 +4347,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 44
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 44
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4065,38 +4425,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -4164,10 +4544,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation5'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation5'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4177,10 +4562,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4190,23 +4580,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 47
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 47
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4216,10 +4611,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4262,38 +4662,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -4361,10 +4781,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation3'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation3'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4395,23 +4820,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 50
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 50
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4594,10 +5024,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation4'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation4'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4628,23 +5063,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 53
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 53
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4827,10 +5267,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation6'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation6'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4840,10 +5285,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4853,23 +5303,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 56
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 56
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4879,10 +5334,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e,xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e,xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4925,38 +5385,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e,xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e,xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e,xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e,xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -5024,10 +5504,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation7'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation7'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5037,10 +5522,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ',Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5050,23 +5540,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 59
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 59
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5076,10 +5571,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ',expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5122,38 +5622,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ',expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ',expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ',Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ',expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ',expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ',Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -5221,10 +5741,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation13'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation13'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5255,23 +5780,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 62
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 62
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5454,10 +5984,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation14'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation14'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5488,23 +6023,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5687,10 +6227,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation16'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation16'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5700,10 +6245,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W)indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W)indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5713,23 +6263,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 68
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 68
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5739,10 +6294,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e)xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e)xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5785,38 +6345,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e)xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e)xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W)indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W)indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e)xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e)xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W)indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W)indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -5884,10 +6464,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation17'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation17'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5897,10 +6482,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ')Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5910,23 +6500,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 71
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 71
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5936,10 +6531,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ')expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5982,38 +6582,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ')expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ')expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ')Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ')expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ')expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ')Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -6081,10 +6701,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation18'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation18'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6115,23 +6740,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 74
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 74
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6314,10 +6944,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation19'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation19'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6348,23 +6983,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 77
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 77
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6547,10 +7187,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation20'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation20'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6560,10 +7205,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W;indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W;indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6573,23 +7223,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 80
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 80
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6599,10 +7254,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e;xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e;xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6645,38 +7305,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e;xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e;xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W;indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W;indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e;xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e;xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W;indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W;indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -6744,10 +7424,15 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation21'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation21'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6757,10 +7442,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ';Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6770,23 +7460,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 83
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 83
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6796,10 +7491,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ';expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6842,38 +7542,58 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ';expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ';expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ';Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ';expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ';expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ';Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -7046,10 +7766,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7066,10 +7791,15 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
@@ -7103,10 +7833,15 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
@@ -7203,13 +7938,18 @@ $result_trees{'all_commands_delimiters'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7219,10 +7959,15 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'apply'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'apply'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7340,23 +8085,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 92
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 92
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7366,23 +8116,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 92
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 92
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7392,23 +8147,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 92
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 92
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7418,23 +8178,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 92
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 92
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7513,23 +8278,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7539,23 +8309,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7565,23 +8340,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7591,23 +8371,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7686,23 +8471,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7712,23 +8502,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7738,23 +8533,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7764,23 +8564,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7859,23 +8664,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7885,23 +8695,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7911,23 +8726,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7937,23 +8757,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8032,23 +8857,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8058,23 +8888,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8084,23 +8919,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8110,23 +8950,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8136,23 +8981,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8231,23 +9081,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8257,23 +9112,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8283,23 +9143,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8309,23 +9174,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8335,23 +9205,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8430,23 +9305,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8456,23 +9336,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8482,23 +9367,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8508,23 +9398,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8534,23 +9429,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8629,23 +9529,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8655,23 +9560,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8681,23 +9591,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8707,23 +9622,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8733,23 +9653,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8828,23 +9753,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8854,23 +9784,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8880,23 +9815,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8906,23 +9846,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9001,23 +9946,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9027,23 +9977,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
-                            }
-                          ],
-                          'type' => 'brace_command_arg'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
+                            }
+                          ],
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9053,23 +10008,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9079,23 +10039,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9174,23 +10139,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9200,23 +10170,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9226,23 +10201,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9252,23 +10232,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9278,23 +10263,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9373,23 +10363,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9399,23 +10394,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9425,23 +10425,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9451,23 +10456,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9477,23 +10487,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9572,23 +10587,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9598,23 +10618,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9624,23 +10649,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9650,23 +10680,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9676,23 +10711,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9702,23 +10742,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9735,78 +10780,98 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -9874,23 +10939,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9900,23 +10970,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9926,23 +11001,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'option',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'option',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9952,23 +11032,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9978,23 +11063,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10004,23 +11094,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10037,78 +11132,98 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -10176,23 +11291,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10202,23 +11322,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10228,23 +11353,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10254,23 +11384,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10280,23 +11415,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10313,78 +11453,98 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -10452,23 +11612,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10478,23 +11643,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10504,23 +11674,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10530,23 +11705,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10556,23 +11736,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10589,78 +11774,98 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -10728,23 +11933,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10754,23 +11964,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10780,23 +11995,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10806,23 +12026,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10832,23 +12057,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10858,23 +12088,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10891,78 +12126,98 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -11030,23 +12285,28 @@ $result_trees{'all_commands_delimiters'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11056,23 +12316,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11082,23 +12347,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11108,23 +12378,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11134,23 +12409,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11160,23 +12440,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -11193,78 +12478,98 @@ $result_trees{'all_commands_delimiters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -11395,23 +12700,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11421,23 +12731,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11447,23 +12762,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11473,23 +12793,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -11631,23 +12956,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11657,23 +12987,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11683,23 +13018,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11709,23 +13049,28 @@ $result_trees{'all_commands_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/all_commands_delimiters_printindex.pl 
b/tp/t/results/def/all_commands_delimiters_printindex.pl
index 0832bf1f20..c13ae9ba74 100644
--- a/tp/t/results/def/all_commands_delimiters_printindex.pl
+++ b/tp/t/results/def/all_commands_delimiters_printindex.pl
@@ -73,10 +73,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -86,23 +91,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'forward--char'
+                              'contents' => [
+                                {
+                                  'text' => 'forward--char'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 4
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 4
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -112,23 +122,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'nchars'
+                              'contents' => [
+                                {
+                                  'text' => 'nchars'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 4
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 4
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -260,23 +275,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -293,23 +313,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -346,23 +371,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -482,10 +512,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Variable'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Variable'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -495,10 +530,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fill-column'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'fill-column'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -630,23 +670,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 9
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 9
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -663,23 +708,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 9
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 9
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -716,23 +766,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 9
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 9
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -873,10 +928,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -886,10 +946,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -919,23 +984,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'foo'
+                              'contents' => [
+                                {
+                                  'text' => 'foo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 12
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 12
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -965,23 +1035,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'bar'
+                              'contents' => [
+                                {
+                                  'text' => 'bar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 12
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 12
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1089,10 +1164,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1102,10 +1182,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobar'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobar'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1135,23 +1220,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'foo'
+                              'contents' => [
+                                {
+                                  'text' => 'foo'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1181,23 +1271,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'bar'
+                              'contents' => [
+                                {
+                                  'text' => 'bar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1295,23 +1390,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 16
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 16
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1328,23 +1428,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 16
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 16
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1381,23 +1486,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 16
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 16
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1440,17 +1550,27 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'ct'
                     },
                     {
-                      'cmdname' => '*',
+                      'contents' => [
+                        {
+                          'cmdname' => '*'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
-                      'cmdname' => '*',
+                      'contents' => [
+                        {
+                          'cmdname' => '*'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
-                    },
+                      },
+                      'type' => 'def_aggregate'
+                    },
                     {
                       'extra' => {
                         'def_role' => 'spaces'
@@ -1563,10 +1683,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1576,10 +1701,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foobug'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foobug'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1680,10 +1810,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'stacks'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'stacks'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1693,10 +1828,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'private'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'private'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1706,10 +1846,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'push'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'push'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1726,23 +1871,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 's'
+                              'contents' => [
+                                {
+                                  'text' => 's'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 22
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 22
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1791,23 +1941,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'n'
+                              'contents' => [
+                                {
+                                  'text' => 'n'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 23
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 23
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1999,10 +2154,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2012,10 +2172,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'enable'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'enable'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2105,23 +2270,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 27
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 27
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2138,23 +2308,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 27
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 27
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2191,23 +2366,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 27
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 27
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2348,10 +2528,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'pair'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'pair'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2467,23 +2652,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 31
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 31
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2500,23 +2690,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 31
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 31
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2553,23 +2748,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 31
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 31
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2710,10 +2910,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2723,10 +2928,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2816,23 +3026,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 35
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 35
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2849,23 +3064,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 35
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 35
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2902,23 +3122,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 35
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 35
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3059,10 +3284,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3072,23 +3302,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 38
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 38
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3098,10 +3333,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3191,23 +3431,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 39
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 39
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3224,23 +3469,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 39
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 39
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3277,23 +3527,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 39
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 39
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3350,38 +3605,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'border-pattern'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'border-pattern'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3450,10 +3725,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3463,10 +3743,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'windows'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'windows'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3476,10 +3761,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3569,23 +3859,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 43
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 43
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3602,23 +3897,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 43
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 43
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3655,23 +3955,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 43
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 43
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3728,38 +4033,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'windows'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'windows'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'windows'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'windows'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3828,10 +4153,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3841,10 +4171,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3854,23 +4189,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 46
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 46
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3880,10 +4220,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3973,23 +4318,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in v--ar'
+                              'contents' => [
+                                {
+                                  'text' => 'in v--ar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 47
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 47
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4006,23 +4356,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in, b'
+                              'contents' => [
+                                {
+                                  'text' => 'in, b'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 47
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 47
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4059,23 +4414,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'text' => 'a'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'pref'
+                              'contents' => [
+                                {
+                                  'text' => 'pref'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 47
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 47
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4132,38 +4492,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -4232,10 +4612,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation5'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation5'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4245,10 +4630,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4258,23 +4648,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 50
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 50
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4284,10 +4679,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4330,38 +4730,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -4430,10 +4850,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation3'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation3'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4464,23 +4889,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 53
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 53
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4664,10 +5094,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation4'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation4'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4698,23 +5133,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 56
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 56
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4898,10 +5338,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation6'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation6'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4911,10 +5356,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4924,23 +5374,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 59
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 59
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4950,10 +5405,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e,xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e,xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -4996,38 +5456,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e,xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e,xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e,xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e,xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W,indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W,indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -5096,10 +5576,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation7'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation7'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5109,10 +5594,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ',Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5122,23 +5612,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 62
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 62
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5148,10 +5643,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ',expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5194,38 +5694,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ',expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ',expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ',Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ',expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ',expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ',Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ',Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -5294,10 +5814,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation13'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation13'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5328,23 +5853,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 65
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 65
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5528,10 +6058,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation14'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation14'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5562,23 +6097,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 68
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 68
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5762,10 +6302,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation16'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation16'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5775,10 +6320,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W)indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W)indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5788,23 +6338,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 71
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 71
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5814,10 +6369,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e)xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e)xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5860,38 +6420,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e)xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e)xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W)indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W)indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e)xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e)xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W)indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W)indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -5960,10 +6540,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation17'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation17'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5973,10 +6558,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ')Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -5986,23 +6576,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 74
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 74
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6012,10 +6607,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ')expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6058,38 +6658,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ')expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ')expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ')Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ')expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ')expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ')Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ')Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -6158,10 +6778,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation18'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation18'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6192,23 +6817,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 77
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 77
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6392,10 +7022,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation19'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation19'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6426,23 +7061,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 80
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 80
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6626,10 +7266,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation20'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation20'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6639,10 +7284,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W;indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W;indow'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6652,23 +7302,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 83
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 83
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6678,10 +7333,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e;xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e;xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6724,38 +7384,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e;xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e;xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W;indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W;indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'e;xpose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'e;xpose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'W;indow'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'W;indow'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -6824,10 +7504,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Operation21'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Operation21'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6837,10 +7522,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ';Window'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6850,23 +7540,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'int'
+                              'contents' => [
+                                {
+                                  'text' => 'int'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 86
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 86
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6876,10 +7571,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ';expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -6922,38 +7622,58 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ';expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ';expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ';Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => ';expose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => ';expose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => ';Window'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => ';Window'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -7127,10 +7847,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7147,10 +7872,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
@@ -7184,10 +7914,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
@@ -7285,13 +8020,18 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7301,10 +8041,15 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'apply'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'apply'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7423,23 +8168,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7449,23 +8199,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7475,23 +8230,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7501,23 +8261,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 95
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 95
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7597,23 +8362,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7623,23 +8393,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7649,23 +8424,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7675,23 +8455,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 98
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 98
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7771,23 +8556,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7797,23 +8587,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7823,23 +8618,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7849,23 +8649,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 101
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 101
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -7945,23 +8750,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7971,23 +8781,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -7997,23 +8812,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8023,23 +8843,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 104
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 104
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8119,23 +8944,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8145,23 +8975,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8171,23 +9006,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8197,23 +9037,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8223,23 +9068,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 107
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 107
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8319,23 +9169,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8345,23 +9200,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8371,23 +9231,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8397,23 +9262,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8423,23 +9293,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 110
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 110
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8519,23 +9394,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8545,23 +9425,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8571,23 +9456,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8597,23 +9487,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8623,23 +9518,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 113
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 113
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8719,23 +9619,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8745,23 +9650,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 't',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 't',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8771,23 +9681,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8797,23 +9712,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8823,23 +9743,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 116
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 116
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -8919,23 +9844,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8945,23 +9875,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8971,23 +9906,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -8997,23 +9937,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 119
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 119
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9093,23 +10038,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9119,23 +10069,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
-                            }
-                          ],
-                          'type' => 'brace_command_arg'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
+                            }
+                          ],
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9145,23 +10100,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9171,23 +10131,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 122
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 122
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9267,23 +10232,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9293,23 +10263,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9319,23 +10294,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9345,23 +10325,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9371,23 +10356,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 125
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 125
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9467,23 +10457,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9493,23 +10488,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9519,23 +10519,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9545,23 +10550,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9571,23 +10581,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 128
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 128
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9667,23 +10682,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9693,23 +10713,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9719,23 +10744,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9745,23 +10775,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9771,23 +10806,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9797,23 +10837,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 131
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 131
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -9830,78 +10875,98 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -9970,23 +11035,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -9996,23 +11066,28 @@ $result_trees{'all_commands_delimiters_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10022,23 +11097,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'option',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'option',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10048,23 +11128,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10074,23 +11159,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10100,23 +11190,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 134
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 134
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10133,78 +11228,98 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -10273,23 +11388,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10299,23 +11419,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10325,23 +11450,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10351,23 +11481,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10377,23 +11512,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 137
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 137
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10410,78 +11550,98 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -10550,23 +11710,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10576,23 +11741,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10602,23 +11772,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10628,23 +11803,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10654,23 +11834,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 140
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 140
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10687,78 +11872,98 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -10827,23 +12032,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10853,23 +12063,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10879,23 +12094,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10905,23 +12125,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10931,23 +12156,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -10957,23 +12187,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 143
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 143
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -10990,78 +12225,98 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var'
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -11130,23 +12385,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11156,23 +12416,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11182,23 +12447,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11208,23 +12478,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11234,23 +12509,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A5'
+                              'contents' => [
+                                {
+                                  'text' => 'A5'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11260,23 +12540,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A6'
+                              'contents' => [
+                                {
+                                  'text' => 'A6'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 146
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 146
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -11293,78 +12578,98 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                 'def_index_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code'
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'class'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -11496,23 +12801,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11522,23 +12832,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11548,23 +12863,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11574,23 +12894,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 149
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 149
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -11733,23 +13058,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A1'
+                              'contents' => [
+                                {
+                                  'text' => 'A1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 152
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 152
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11759,23 +13089,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A2'
+                              'contents' => [
+                                {
+                                  'text' => 'A2'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 152
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 152
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11785,23 +13120,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A3'
+                              'contents' => [
+                                {
+                                  'text' => 'A3'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 152
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 152
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -11811,23 +13151,28 @@ $result_trees{'all_commands_delimiters_printindex'} = 
{
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'A4'
+                              'contents' => [
+                                {
+                                  'text' => 'A4'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 152
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 152
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/all_commands_printindex.pl 
b/tp/t/results/def/all_commands_printindex.pl
index e16aeae0b2..2bdd48c09e 100644
--- a/tp/t/results/def/all_commands_printindex.pl
+++ b/tp/t/results/def/all_commands_printindex.pl
@@ -73,10 +73,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -86,10 +91,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efvr_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efvr_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -183,10 +193,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -196,10 +211,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'n--ame'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'n--ame'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -306,10 +326,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -319,10 +344,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'n--ame'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'n--ame'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -416,10 +446,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -429,10 +464,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -442,10 +482,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefn_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -552,10 +597,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -565,10 +615,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -578,10 +633,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefn_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -675,10 +735,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -688,10 +753,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -701,10 +771,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -714,10 +789,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -747,38 +827,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -861,10 +961,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -874,10 +979,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -887,10 +997,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -900,10 +1015,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -920,38 +1040,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1034,10 +1174,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1047,10 +1192,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1060,10 +1210,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypevr_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypevr_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1157,10 +1312,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1170,10 +1330,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1183,10 +1348,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efcv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efcv_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1280,10 +1450,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1293,10 +1468,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1306,10 +1486,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efcv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efcv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1416,10 +1601,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1429,10 +1619,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1442,10 +1637,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1455,10 +1655,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1475,38 +1680,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1589,10 +1814,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1602,10 +1832,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1615,10 +1850,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1628,10 +1868,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1661,38 +1906,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypecv_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypecv_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1775,10 +2040,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1788,10 +2058,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1801,10 +2076,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1834,38 +2114,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1948,10 +2248,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1961,10 +2266,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1974,10 +2284,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -1994,38 +2309,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efop_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efop_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -2108,10 +2443,15 @@ $result_trees{'all_commands_printindex'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--ategory'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c--ategory'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2121,10 +2461,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftp_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftp_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2233,13 +2578,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2249,10 +2599,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efun_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efun_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2361,13 +2716,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Macro'
+                          'contents' => [
+                            {
+                              'text' => 'Macro'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2377,10 +2737,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmac_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmac_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2489,13 +2854,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Special Form'
+                          'contents' => [
+                            {
+                              'text' => 'Special Form'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2505,10 +2875,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efspec_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efspec_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2617,13 +2992,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2633,10 +3013,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efvar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efvar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -2732,13 +3117,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2748,10 +3138,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efvar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efvar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2873,13 +3268,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'User Option'
+                          'contents' => [
+                            {
+                              'text' => 'User Option'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -2889,10 +3289,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efopt_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efopt_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -2988,13 +3393,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3004,10 +3414,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3017,10 +3432,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypefun_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypefun_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3129,13 +3549,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3145,10 +3570,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3158,10 +3588,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypevar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypevar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -3257,13 +3692,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3273,10 +3713,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3286,10 +3731,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efivar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -3306,38 +3756,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3422,13 +3892,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3438,10 +3913,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3451,10 +3931,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3464,10 +3949,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeivar_name'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -3484,38 +3974,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypeivar_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypeivar_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3600,13 +4110,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method'
+                          'contents' => [
+                            {
+                              'text' => 'Method'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3616,10 +4131,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3629,10 +4149,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3662,38 +4187,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--efmethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--efmethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -3778,13 +4323,18 @@ $result_trees{'all_commands_printindex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method'
+                          'contents' => [
+                            {
+                              'text' => 'Method'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3794,10 +4344,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3807,10 +4362,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 't--ype'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 't--ype'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3820,10 +4380,15 @@ $result_trees{'all_commands_printindex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypemethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypemethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -3853,38 +4418,58 @@ $result_trees{'all_commands_printindex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypemethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypemethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'd--eftypemethod_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'd--eftypemethod_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c--lass'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c--lass'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/def/ampchar.pl b/tp/t/results/def/ampchar.pl
index c8c08ef452..04afb76945 100644
--- a/tp/t/results/def/ampchar.pl
+++ b/tp/t/results/def/ampchar.pl
@@ -38,10 +38,15 @@ $result_trees{'ampchar'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -51,10 +56,15 @@ $result_trees{'ampchar'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -71,26 +81,31 @@ $result_trees{'ampchar'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'const std::vector<int>'
-                            },
-                            {
-                              'cmdname' => '&'
+                              'contents' => [
+                                {
+                                  'text' => 'const std::vector<int>'
+                                },
+                                {
+                                  'cmdname' => '&'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -114,38 +129,58 @@ $result_trees{'ampchar'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/def/code_in_def.pl b/tp/t/results/def/code_in_def.pl
index 51c4608af9..5a97dcc6fe 100644
--- a/tp/t/results/def/code_in_def.pl
+++ b/tp/t/results/def/code_in_def.pl
@@ -17,10 +17,15 @@ $result_trees{'code_in_def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'code_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'int'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'int'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -43,10 +53,15 @@ $result_trees{'code_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -63,26 +78,31 @@ $result_trees{'code_in_def'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
-                            {
-                              'text' => 'const std::vector<int>'
-                            },
+                          'args' => [
                             {
-                              'cmdname' => '&'
+                              'contents' => [
+                                {
+                                  'text' => 'const std::vector<int>'
+                                },
+                                {
+                                  'cmdname' => '&'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'typearg'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/comment_index_before_defline.pl 
b/tp/t/results/def/comment_index_before_defline.pl
index faf969914b..772a98b9be 100644
--- a/tp/t/results/def/comment_index_before_defline.pl
+++ b/tp/t/results/def/comment_index_before_defline.pl
@@ -96,10 +96,15 @@ $result_trees{'comment_index_before_defline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -109,10 +114,15 @@ $result_trees{'comment_index_before_defline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/def_defx_mismatch.pl 
b/tp/t/results/def/def_defx_mismatch.pl
index 406e6b3573..c8ecaa9f0a 100644
--- a/tp/t/results/def/def_defx_mismatch.pl
+++ b/tp/t/results/def/def_defx_mismatch.pl
@@ -19,13 +19,18 @@ $result_trees{'def_defx_mismatch'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -69,23 +74,28 @@ $result_trees{'def_defx_mismatch'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'arg'
+                              'contents' => [
+                                {
+                                  'text' => 'arg'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -95,18 +105,23 @@ $result_trees{'def_defx_mismatch'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'type' => 'brace_command_arg'
+                          'args' => [
+                            {
+                              'type' => 'brace_command_arg'
+                            }
+                          ],
+                          'cmdname' => 'dots',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'dots',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/def_groupings_args.pl 
b/tp/t/results/def/def_groupings_args.pl
index 3b78d6ad4d..4f5d283f73 100644
--- a/tp/t/results/def/def_groupings_args.pl
+++ b/tp/t/results/def/def_groupings_args.pl
@@ -17,10 +17,15 @@ $result_trees{'def_groupings_args'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -311,23 +316,28 @@ $result_trees{'def_groupings_args'} = {
                       'text' => 'c'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'arg'
+                              'contents' => [
+                                {
+                                  'text' => 'arg'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 7
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 7
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/defline_no_params.pl 
b/tp/t/results/def/defline_no_params.pl
index bfb717d345..12bc837f2d 100644
--- a/tp/t/results/def/defline_no_params.pl
+++ b/tp/t/results/def/defline_no_params.pl
@@ -31,10 +31,15 @@ $result_trees{'defline_no_params'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -44,10 +49,15 @@ $result_trees{'defline_no_params'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/deftypeline.pl b/tp/t/results/def/deftypeline.pl
index a474c2555b..ee4ccbc244 100644
--- a/tp/t/results/def/deftypeline.pl
+++ b/tp/t/results/def/deftypeline.pl
@@ -31,10 +31,15 @@ $result_trees{'deftypeline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -65,10 +70,15 @@ $result_trees{'deftypeline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -98,23 +108,28 @@ $result_trees{'deftypeline'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'bar'
+                              'contents' => [
+                                {
+                                  'text' => 'bar'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -144,23 +159,28 @@ $result_trees{'deftypeline'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'baz'
+                              'contents' => [
+                                {
+                                  'text' => 'baz'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/defx_after_comment.pl 
b/tp/t/results/def/defx_after_comment.pl
index c6e666d870..c9280b39d0 100644
--- a/tp/t/results/def/defx_after_comment.pl
+++ b/tp/t/results/def/defx_after_comment.pl
@@ -17,10 +17,15 @@ $result_trees{'defx_after_comment'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'defx_after_comment'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -139,10 +149,15 @@ $result_trees{'defx_after_comment'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bidulr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bidulr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/defx_after_comment_in_example.pl 
b/tp/t/results/def/defx_after_comment_in_example.pl
index 66c80d2efc..ef1485cf23 100644
--- a/tp/t/results/def/defx_after_comment_in_example.pl
+++ b/tp/t/results/def/defx_after_comment_in_example.pl
@@ -31,10 +31,15 @@ $result_trees{'defx_after_comment_in_example'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'fset'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'fset'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -44,23 +49,28 @@ $result_trees{'defx_after_comment_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'i'
+                                  'contents' => [
+                                    {
+                                      'text' => 'i'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 2
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'source_info' => {
-                            'line_nr' => 2
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -158,10 +168,15 @@ $result_trees{'defx_after_comment_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'bidulr'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'bidulr'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
diff --git a/tp/t/results/def/defx_after_empty_line.pl 
b/tp/t/results/def/defx_after_empty_line.pl
index a2b0c7723c..911d1a69f4 100644
--- a/tp/t/results/def/defx_after_empty_line.pl
+++ b/tp/t/results/def/defx_after_empty_line.pl
@@ -17,10 +17,15 @@ $result_trees{'defx_after_empty_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'defx_after_empty_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -134,10 +144,15 @@ $result_trees{'defx_after_empty_line'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bidulr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bidulr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/defx_after_empty_line_in_example.pl 
b/tp/t/results/def/defx_after_empty_line_in_example.pl
index d731d2f204..d4ec825652 100644
--- a/tp/t/results/def/defx_after_empty_line_in_example.pl
+++ b/tp/t/results/def/defx_after_empty_line_in_example.pl
@@ -31,10 +31,15 @@ $result_trees{'defx_after_empty_line_in_example'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'fset'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'fset'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -44,23 +49,28 @@ $result_trees{'defx_after_empty_line_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'i'
+                                  'contents' => [
+                                    {
+                                      'text' => 'i'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 2
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'source_info' => {
-                            'line_nr' => 2
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -178,10 +188,15 @@ $result_trees{'defx_after_empty_line_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'bidulr'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'bidulr'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
diff --git a/tp/t/results/def/defx_after_paragraph_end.pl 
b/tp/t/results/def/defx_after_paragraph_end.pl
index c614965cc8..e7c3cd413b 100644
--- a/tp/t/results/def/defx_after_paragraph_end.pl
+++ b/tp/t/results/def/defx_after_paragraph_end.pl
@@ -17,10 +17,15 @@ $result_trees{'defx_after_paragraph_end'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'defx_after_paragraph_end'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -143,10 +153,15 @@ $result_trees{'defx_after_paragraph_end'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bidulr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bidulr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/defx_after_preformatted_with_text.pl 
b/tp/t/results/def/defx_after_preformatted_with_text.pl
index f1f0357e4c..aa06df9256 100644
--- a/tp/t/results/def/defx_after_preformatted_with_text.pl
+++ b/tp/t/results/def/defx_after_preformatted_with_text.pl
@@ -31,10 +31,15 @@ $result_trees{'defx_after_preformatted_with_text'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'fset'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'fset'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -44,23 +49,28 @@ $result_trees{'defx_after_preformatted_with_text'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'i'
+                                  'contents' => [
+                                    {
+                                      'text' => 'i'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 2
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'source_info' => {
-                            'line_nr' => 2
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -157,10 +167,15 @@ $result_trees{'defx_after_preformatted_with_text'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'bidulr'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'bidulr'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
diff --git a/tp/t/results/def/defx_after_text.pl 
b/tp/t/results/def/defx_after_text.pl
index e625a86e2d..a24b25e946 100644
--- a/tp/t/results/def/defx_after_text.pl
+++ b/tp/t/results/def/defx_after_text.pl
@@ -17,10 +17,15 @@ $result_trees{'defx_after_text'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'defx_after_text'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -138,10 +148,15 @@ $result_trees{'defx_after_text'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bidulr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bidulr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/defx_in_example.pl 
b/tp/t/results/def/defx_in_example.pl
index 818930f1c8..00f4f64e2b 100644
--- a/tp/t/results/def/defx_in_example.pl
+++ b/tp/t/results/def/defx_in_example.pl
@@ -31,10 +31,15 @@ $result_trees{'defx_in_example'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'fset'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'fset'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -44,23 +49,28 @@ $result_trees{'defx_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'i'
+                                  'contents' => [
+                                    {
+                                      'text' => 'i'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 2
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'source_info' => {
-                            'line_nr' => 2
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -138,10 +148,15 @@ $result_trees{'defx_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'bidulr'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'bidulr'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
diff --git a/tp/t/results/def/double_command.pl 
b/tp/t/results/def/double_command.pl
index 77ccc3d0b7..eb430632b4 100644
--- a/tp/t/results/def/double_command.pl
+++ b/tp/t/results/def/double_command.pl
@@ -17,10 +17,15 @@ $result_trees{'double_command'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'func'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'func'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'double_command'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'plot'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'plot'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -130,166 +140,183 @@ $result_trees{'double_command'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
-                            {
-                              'extra' => {
-                                'def_role' => 'category'
-                              },
-                              'text' => 'func'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'spaces'
-                              },
-                              'text' => ' ',
-                              'type' => 'spaces'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'name'
-                              },
-                              'text' => 'plot2'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'spaces'
-                              },
-                              'text' => ' ',
-                              'type' => 'spaces'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'delimiter'
-                              },
-                              'text' => '(',
-                              'type' => 'delimiter'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'arg'
-                              },
-                              'text' => 'a'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'delimiter'
-                              },
-                              'text' => ',',
-                              'type' => 'delimiter'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'spaces'
-                              },
-                              'text' => ' ',
-                              'type' => 'spaces'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'arg'
-                              },
-                              'text' => 'b'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'delimiter'
-                              },
-                              'text' => ',',
-                              'type' => 'delimiter'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'spaces'
-                              },
-                              'text' => ' ',
-                              'type' => 'spaces'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'arg'
-                              },
-                              'text' => 'c'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'delimiter'
-                              },
-                              'text' => ',',
-                              'type' => 'delimiter'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'spaces'
-                              },
-                              'text' => ' ',
-                              'type' => 'spaces'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'arg'
-                              },
-                              'text' => '...'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'delimiter'
-                              },
-                              'text' => ',',
-                              'type' => 'delimiter'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'spaces'
-                              },
-                              'text' => ' ',
-                              'type' => 'spaces'
-                            },
-                            {
-                              'extra' => {
-                                'def_role' => 'arg'
-                              },
-                              'text' => 'd'
-                            },
+                          'args' => [
                             {
-                              'extra' => {
-                                'def_role' => 'delimiter'
+                              'contents' => [
+                                {
+                                  'contents' => [
+                                    {
+                                      'text' => 'func'
+                                    }
+                                  ],
+                                  'extra' => {
+                                    'def_role' => 'category'
+                                  },
+                                  'type' => 'def_aggregate'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'spaces'
+                                  },
+                                  'text' => ' ',
+                                  'type' => 'spaces'
+                                },
+                                {
+                                  'contents' => [
+                                    {
+                                      'text' => 'plot2'
+                                    }
+                                  ],
+                                  'extra' => {
+                                    'def_role' => 'name'
+                                  },
+                                  'type' => 'def_aggregate'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'spaces'
+                                  },
+                                  'text' => ' ',
+                                  'type' => 'spaces'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'delimiter'
+                                  },
+                                  'text' => '(',
+                                  'type' => 'delimiter'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'arg'
+                                  },
+                                  'text' => 'a'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'delimiter'
+                                  },
+                                  'text' => ',',
+                                  'type' => 'delimiter'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'spaces'
+                                  },
+                                  'text' => ' ',
+                                  'type' => 'spaces'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'arg'
+                                  },
+                                  'text' => 'b'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'delimiter'
+                                  },
+                                  'text' => ',',
+                                  'type' => 'delimiter'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'spaces'
+                                  },
+                                  'text' => ' ',
+                                  'type' => 'spaces'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'arg'
+                                  },
+                                  'text' => 'c'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'delimiter'
+                                  },
+                                  'text' => ',',
+                                  'type' => 'delimiter'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'spaces'
+                                  },
+                                  'text' => ' ',
+                                  'type' => 'spaces'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'arg'
+                                  },
+                                  'text' => '...'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'delimiter'
+                                  },
+                                  'text' => ',',
+                                  'type' => 'delimiter'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'spaces'
+                                  },
+                                  'text' => ' ',
+                                  'type' => 'spaces'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'arg'
+                                  },
+                                  'text' => 'd'
+                                },
+                                {
+                                  'extra' => {
+                                    'def_role' => 'delimiter'
+                                  },
+                                  'text' => ')',
+                                  'type' => 'delimiter'
+                                }
+                              ],
+                              'info' => {
+                                'spaces_after_argument' => {
+                                  'text' => '
+'
+                                }
                               },
-                              'text' => ')',
-                              'type' => 'delimiter'
+                              'type' => 'line_arg'
                             }
                           ],
+                          'cmdname' => 'deffnx',
+                          'extra' => {
+                            'def_command' => 'deffn',
+                            'def_index_element' => {},
+                            'index_entry' => [
+                              'fn',
+                              1
+                            ],
+                            'not_after_command' => 1,
+                            'original_def_cmdname' => 'deffnx'
+                          },
                           'info' => {
-                            'spaces_after_argument' => {
-                              'text' => '
-'
+                            'spaces_before_argument' => {
+                              'text' => ' '
                             }
                           },
-                          'type' => 'line_arg'
+                          'source_info' => {
+                            'line_nr' => 1
+                          },
+                          'type' => 'def_line'
                         }
                       ],
-                      'cmdname' => 'deffnx',
                       'extra' => {
-                        'def_command' => 'deffn',
-                        'def_index_element' => {},
-                        'def_role' => 'arg',
-                        'index_entry' => [
-                          'fn',
-                          1
-                        ],
-                        'not_after_command' => 1,
-                        'original_def_cmdname' => 'deffnx'
-                      },
-                      'info' => {
-                        'spaces_before_argument' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 1
+                        'def_role' => 'arg'
                       },
-                      'type' => 'def_line'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'type' => 'block_line_arg'
@@ -376,10 +403,15 @@ $result_trees{'double_command'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'func'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'func'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -389,10 +421,15 @@ $result_trees{'double_command'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'aaaa'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'aaaa'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -415,67 +452,82 @@ $result_trees{'double_command'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => 'defvr',
                       'contents' => [
                         {
-                          'args' => [
+                          'cmdname' => 'defvr',
+                          'contents' => [
                             {
-                              'contents' => [
-                                {
-                                  'extra' => {
-                                    'def_role' => 'category'
-                                  },
-                                  'text' => 'c--ategory'
-                                },
+                              'args' => [
                                 {
-                                  'extra' => {
-                                    'def_role' => 'spaces'
-                                  },
-                                  'text' => ' ',
-                                  'type' => 'spaces'
-                                },
-                                {
-                                  'extra' => {
-                                    'def_role' => 'name'
+                                  'contents' => [
+                                    {
+                                      'contents' => [
+                                        {
+                                          'text' => 'c--ategory'
+                                        }
+                                      ],
+                                      'extra' => {
+                                        'def_role' => 'category'
+                                      },
+                                      'type' => 'def_aggregate'
+                                    },
+                                    {
+                                      'extra' => {
+                                        'def_role' => 'spaces'
+                                      },
+                                      'text' => ' ',
+                                      'type' => 'spaces'
+                                    },
+                                    {
+                                      'contents' => [
+                                        {
+                                          'text' => 'd--efvr_name'
+                                        }
+                                      ],
+                                      'extra' => {
+                                        'def_role' => 'name'
+                                      },
+                                      'type' => 'def_aggregate'
+                                    }
+                                  ],
+                                  'info' => {
+                                    'spaces_after_argument' => {
+                                      'text' => '
+'
+                                    }
                                   },
-                                  'text' => 'd--efvr_name'
+                                  'type' => 'block_line_arg'
                                 }
                               ],
-                              'info' => {
-                                'spaces_after_argument' => {
-                                  'text' => '
-'
-                                }
+                              'extra' => {
+                                'def_command' => 'defvr',
+                                'def_index_element' => {},
+                                'index_entry' => [
+                                  'vr',
+                                  1
+                                ],
+                                'original_def_cmdname' => 'defvr'
                               },
-                              'type' => 'block_line_arg'
+                              'source_info' => {
+                                'line_nr' => 5
+                              },
+                              'type' => 'def_line'
                             }
                           ],
-                          'extra' => {
-                            'def_command' => 'defvr',
-                            'def_index_element' => {},
-                            'index_entry' => [
-                              'vr',
-                              1
-                            ],
-                            'original_def_cmdname' => 'defvr'
+                          'info' => {
+                            'spaces_before_argument' => {
+                              'text' => ' '
+                            }
                           },
                           'source_info' => {
                             'line_nr' => 5
-                          },
-                          'type' => 'def_line'
+                          }
                         }
                       ],
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'info' => {
-                        'spaces_before_argument' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'type' => 'block_line_arg'
@@ -555,9 +607,9 @@ $result_trees{'double_command'} = {
   ],
   'type' => 'document_root'
 };
-$result_trees{'double_command'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[17]{'extra'}{'def_index_element'}
 = 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[17]{'args'}[0]{'contents'}[2];
+$result_trees{'double_command'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[17]{'contents'}[0]{'extra'}{'def_index_element'}
 = 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[17]{'contents'}[0]{'args'}[0]{'contents'}[2];
 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'extra'}{'def_index_element'}
 = 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[2];
-$result_trees{'double_command'}{'contents'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[6]{'contents'}[0]{'extra'}{'def_index_element'}
 = 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[6]{'contents'}[0]{'args'}[0]{'contents'}[2];
+$result_trees{'double_command'}{'contents'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[6]{'contents'}[0]{'contents'}[0]{'extra'}{'def_index_element'}
 = 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[6]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[2];
 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[2]{'contents'}[0]{'extra'}{'def_index_element'}
 = 
$result_trees{'double_command'}{'contents'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[2];
 
 $result_texis{'double_command'} = '@deffn func plot (a, b, c, ...) @deffnx 
func plot2 (a, b, c, ..., d)
diff --git a/tp/t/results/def/empty_def_arguments.pl 
b/tp/t/results/def/empty_def_arguments.pl
index 0d7070f286..0995bed8b3 100644
--- a/tp/t/results/def/empty_def_arguments.pl
+++ b/tp/t/results/def/empty_def_arguments.pl
@@ -17,10 +17,15 @@ $result_trees{'empty_def_arguments'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'empty_def_arguments'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -103,42 +113,47 @@ $result_trees{'empty_def_arguments'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'id '
-                            },
-                            {
-                              'args' => [
+                              'contents' => [
+                                {
+                                  'text' => 'id '
+                                },
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'samp',
+                                  'source_info' => {
+                                    'line_nr' => 2
+                                  }
+                                },
+                                {
+                                  'text' => ' ule'
                                 }
                               ],
-                              'cmdname' => 'samp',
-                              'source_info' => {
-                                'line_nr' => 2
-                              }
-                            },
-                            {
-                              'text' => ' ule'
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -192,10 +207,15 @@ $result_trees{'empty_def_arguments'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'aaa'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'aaa'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/empty_def_command.pl 
b/tp/t/results/def/empty_def_command.pl
index 3ba87f92fe..dbb8a94fb8 100644
--- a/tp/t/results/def/empty_def_command.pl
+++ b/tp/t/results/def/empty_def_command.pl
@@ -17,10 +17,15 @@ $result_trees{'empty_def_command'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'empty'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'empty'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'empty_def_command'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffn'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffn'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -112,10 +122,15 @@ $result_trees{'empty_def_command'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'empty'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'empty'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -125,10 +140,15 @@ $result_trees{'empty_def_command'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffn'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffn'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -185,10 +205,15 @@ $result_trees{'empty_def_command'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'empty'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'empty'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -198,10 +223,15 @@ $result_trees{'empty_def_command'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffnx'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffnx'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/empty_deftype.pl 
b/tp/t/results/def/empty_deftype.pl
index 7d4c72eac3..5307eecfc5 100644
--- a/tp/t/results/def/empty_deftype.pl
+++ b/tp/t/results/def/empty_deftype.pl
@@ -19,13 +19,18 @@ $result_trees{'empty_deftype'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -51,10 +56,15 @@ $result_trees{'empty_deftype'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -202,13 +212,18 @@ $result_trees{'empty_deftype'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -218,10 +233,15 @@ $result_trees{'empty_deftype'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -369,13 +389,18 @@ $result_trees{'empty_deftype'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method'
+                          'contents' => [
+                            {
+                              'text' => 'Method'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -385,10 +410,15 @@ $result_trees{'empty_deftype'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -414,10 +444,15 @@ $result_trees{'empty_deftype'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -487,38 +522,58 @@ $result_trees{'empty_deftype'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -602,13 +657,18 @@ $result_trees{'empty_deftype'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method'
+                          'contents' => [
+                            {
+                              'text' => 'Method'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -618,10 +678,15 @@ $result_trees{'empty_deftype'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -631,10 +696,15 @@ $result_trees{'empty_deftype'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -704,38 +774,58 @@ $result_trees{'empty_deftype'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'f'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'f'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/def/empty_main_def_arguments.pl 
b/tp/t/results/def/empty_main_def_arguments.pl
index f83dc7ba43..d1df6c084c 100644
--- a/tp/t/results/def/empty_main_def_arguments.pl
+++ b/tp/t/results/def/empty_main_def_arguments.pl
@@ -17,10 +17,15 @@ $result_trees{'empty_main_def_arguments'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'NNN'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'NNN'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/end_of_line_end_file.pl 
b/tp/t/results/def/end_of_line_end_file.pl
index 17dd1c2786..0aee99d110 100644
--- a/tp/t/results/def/end_of_line_end_file.pl
+++ b/tp/t/results/def/end_of_line_end_file.pl
@@ -17,10 +17,15 @@ $result_trees{'end_of_line_end_file'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'end_of_line_end_file'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffn_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/end_of_line_protect_at_end.pl 
b/tp/t/results/def/end_of_line_protect_at_end.pl
index 9644846eb9..7e542ce662 100644
--- a/tp/t/results/def/end_of_line_protect_at_end.pl
+++ b/tp/t/results/def/end_of_line_protect_at_end.pl
@@ -22,10 +22,15 @@ $result_trees{'end_of_line_protect_at_end'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -35,10 +40,15 @@ $result_trees{'end_of_line_protect_at_end'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffn_name2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffn_name2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/end_of_lines_protected.pl 
b/tp/t/results/def/end_of_lines_protected.pl
index c797e12ba2..8312852cea 100644
--- a/tp/t/results/def/end_of_lines_protected.pl
+++ b/tp/t/results/def/end_of_lines_protected.pl
@@ -17,10 +17,15 @@ $result_trees{'end_of_lines_protected'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'end_of_lines_protected'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffn_name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'deffn_name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -130,10 +140,15 @@ $result_trees{'end_of_lines_protected'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => '@',
+                      'contents' => [
+                        {
+                          'cmdname' => '@'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -143,16 +158,21 @@ $result_trees{'end_of_lines_protected'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => '@',
+                      'contents' => [
+                        {
+                          'cmdname' => '@',
+                          'source_marks' => [
+                            {
+                              'counter' => 3,
+                              'sourcemark_type' => 'defline_continuation'
+                            }
+                          ]
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_marks' => [
-                        {
-                          'counter' => 3,
-                          'sourcemark_type' => 'defline_continuation'
-                        }
-                      ]
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/end_of_lines_protected_in_footnote.pl 
b/tp/t/results/def/end_of_lines_protected_in_footnote.pl
index 9c4c5c03ec..3c7521eb8c 100644
--- a/tp/t/results/def/end_of_lines_protected_in_footnote.pl
+++ b/tp/t/results/def/end_of_lines_protected_in_footnote.pl
@@ -23,10 +23,15 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
                             {
                               'contents' => [
                                 {
+                                  'contents' => [
+                                    {
+                                      'text' => 'category'
+                                    }
+                                  ],
                                   'extra' => {
                                     'def_role' => 'category'
                                   },
-                                  'text' => 'category'
+                                  'type' => 'def_aggregate'
                                 },
                                 {
                                   'extra' => {
@@ -36,10 +41,15 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
                                   'type' => 'spaces'
                                 },
                                 {
+                                  'contents' => [
+                                    {
+                                      'text' => 'deffn_name'
+                                    }
+                                  ],
                                   'extra' => {
                                     'def_role' => 'name'
                                   },
-                                  'text' => 'deffn_name'
+                                  'type' => 'def_aggregate'
                                 },
                                 {
                                   'extra' => {
@@ -149,10 +159,15 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
                                   'type' => 'spaces'
                                 },
                                 {
-                                  'cmdname' => '@',
+                                  'contents' => [
+                                    {
+                                      'cmdname' => '@'
+                                    }
+                                  ],
                                   'extra' => {
                                     'def_role' => 'arg'
-                                  }
+                                  },
+                                  'type' => 'def_aggregate'
                                 },
                                 {
                                   'extra' => {
@@ -162,16 +177,21 @@ $result_trees{'end_of_lines_protected_in_footnote'} = {
                                   'type' => 'spaces'
                                 },
                                 {
-                                  'cmdname' => '@',
+                                  'contents' => [
+                                    {
+                                      'cmdname' => '@',
+                                      'source_marks' => [
+                                        {
+                                          'counter' => 3,
+                                          'sourcemark_type' => 
'defline_continuation'
+                                        }
+                                      ]
+                                    }
+                                  ],
                                   'extra' => {
                                     'def_role' => 'arg'
                                   },
-                                  'source_marks' => [
-                                    {
-                                      'counter' => 3,
-                                      'sourcemark_type' => 
'defline_continuation'
-                                    }
-                                  ]
+                                  'type' => 'def_aggregate'
                                 },
                                 {
                                   'extra' => {
diff --git a/tp/t/results/def/end_of_lines_protected_non_ascii.pl 
b/tp/t/results/def/end_of_lines_protected_non_ascii.pl
index 96e79eb0d7..40d7f32cad 100644
--- a/tp/t/results/def/end_of_lines_protected_non_ascii.pl
+++ b/tp/t/results/def/end_of_lines_protected_non_ascii.pl
@@ -30,10 +30,15 @@ $result_trees{'end_of_lines_protected_non_ascii'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => "cat\x{e9}gorie"
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => "cat\x{e9}gorie"
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -43,10 +48,15 @@ $result_trees{'end_of_lines_protected_non_ascii'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => "deffn_n\x{f9}me"
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => "deffn_n\x{f9}me"
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -144,10 +154,15 @@ $result_trees{'end_of_lines_protected_non_ascii'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => '@',
+                      'contents' => [
+                        {
+                          'cmdname' => '@'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -157,16 +172,21 @@ $result_trees{'end_of_lines_protected_non_ascii'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => '@',
+                      'contents' => [
+                        {
+                          'cmdname' => '@',
+                          'source_marks' => [
+                            {
+                              'counter' => 3,
+                              'sourcemark_type' => 'defline_continuation'
+                            }
+                          ]
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_marks' => [
-                        {
-                          'counter' => 3,
-                          'sourcemark_type' => 'defline_continuation'
-                        }
-                      ]
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/inter_item_commands_in_def.pl 
b/tp/t/results/def/inter_item_commands_in_def.pl
index 8cecddbf14..997ba3dbf4 100644
--- a/tp/t/results/def/inter_item_commands_in_def.pl
+++ b/tp/t/results/def/inter_item_commands_in_def.pl
@@ -17,10 +17,15 @@ $result_trees{'inter_item_commands_in_def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,23 +35,28 @@ $result_trees{'inter_item_commands_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -123,10 +133,15 @@ $result_trees{'inter_item_commands_in_def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -245,10 +260,15 @@ $result_trees{'inter_item_commands_in_def'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'cmde2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'cmde2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -258,42 +278,47 @@ $result_trees{'inter_item_commands_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'id '
-                            },
-                            {
-                              'args' => [
+                              'contents' => [
+                                {
+                                  'text' => 'id '
+                                },
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'i'
+                                      'contents' => [
+                                        {
+                                          'text' => 'i'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'samp',
+                                  'source_info' => {
+                                    'line_nr' => 6
+                                  }
+                                },
+                                {
+                                  'text' => ' ule'
                                 }
                               ],
-                              'cmdname' => 'samp',
-                              'source_info' => {
-                                'line_nr' => 6
-                              }
-                            },
-                            {
-                              'text' => ' ule'
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'b',
+                          'source_info' => {
+                            'line_nr' => 6
+                          }
                         }
                       ],
-                      'cmdname' => 'b',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 6
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/inter_item_commands_in_def_in_example.pl 
b/tp/t/results/def/inter_item_commands_in_def_in_example.pl
index 908603103f..3be381c5a0 100644
--- a/tp/t/results/def/inter_item_commands_in_def_in_example.pl
+++ b/tp/t/results/def/inter_item_commands_in_def_in_example.pl
@@ -31,10 +31,15 @@ $result_trees{'inter_item_commands_in_def_in_example'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'fset'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'fset'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -44,23 +49,28 @@ $result_trees{'inter_item_commands_in_def_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
+                              'args' => [
                                 {
-                                  'text' => 'i'
+                                  'contents' => [
+                                    {
+                                      'text' => 'i'
+                                    }
+                                  ],
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'var',
+                              'source_info' => {
+                                'line_nr' => 2
+                              }
                             }
                           ],
-                          'cmdname' => 'var',
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'source_info' => {
-                            'line_nr' => 2
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -142,10 +152,15 @@ $result_trees{'inter_item_commands_in_def_in_example'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'Command'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'Command'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -269,10 +284,15 @@ $result_trees{'inter_item_commands_in_def_in_example'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'cmde2'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'cmde2'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -282,42 +302,47 @@ $result_trees{'inter_item_commands_in_def_in_example'} = {
                           'type' => 'spaces'
                         },
                         {
-                          'args' => [
+                          'contents' => [
                             {
-                              'contents' => [
-                                {
-                                  'text' => 'id '
-                                },
+                              'args' => [
                                 {
-                                  'args' => [
+                                  'contents' => [
+                                    {
+                                      'text' => 'id '
+                                    },
                                     {
-                                      'contents' => [
+                                      'args' => [
                                         {
-                                          'text' => 'i'
+                                          'contents' => [
+                                            {
+                                              'text' => 'i'
+                                            }
+                                          ],
+                                          'type' => 'brace_command_arg'
                                         }
                                       ],
-                                      'type' => 'brace_command_arg'
+                                      'cmdname' => 'samp',
+                                      'source_info' => {
+                                        'line_nr' => 7
+                                      }
+                                    },
+                                    {
+                                      'text' => ' ule'
                                     }
                                   ],
-                                  'cmdname' => 'samp',
-                                  'source_info' => {
-                                    'line_nr' => 7
-                                  }
-                                },
-                                {
-                                  'text' => ' ule'
+                                  'type' => 'brace_command_arg'
                                 }
                               ],
-                              'type' => 'brace_command_arg'
+                              'cmdname' => 'b',
+                              'source_info' => {
+                                'line_nr' => 7
+                              }
                             }
                           ],
-                          'cmdname' => 'b',
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'source_info' => {
-                            'line_nr' => 7
-                          }
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
diff --git a/tp/t/results/def/leading_space_in_def_arg.pl 
b/tp/t/results/def/leading_space_in_def_arg.pl
index cf36cf02bd..ce4cdaff7d 100644
--- a/tp/t/results/def/leading_space_in_def_arg.pl
+++ b/tp/t/results/def/leading_space_in_def_arg.pl
@@ -17,10 +17,15 @@ $result_trees{'leading_space_in_def_arg'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/multiple_defline.pl 
b/tp/t/results/def/multiple_defline.pl
index 19121bc82c..0d6d5442a9 100644
--- a/tp/t/results/def/multiple_defline.pl
+++ b/tp/t/results/def/multiple_defline.pl
@@ -31,10 +31,15 @@ $result_trees{'multiple_defline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Funoid'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Funoid'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -44,10 +49,15 @@ $result_trees{'multiple_defline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -125,10 +135,15 @@ $result_trees{'multiple_defline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Funnyoid'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Funnyoid'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -138,10 +153,15 @@ $result_trees{'multiple_defline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo2'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo2'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/no_category_or_no_name.pl 
b/tp/t/results/def/no_category_or_no_name.pl
index fae70c820f..6d995358bd 100644
--- a/tp/t/results/def/no_category_or_no_name.pl
+++ b/tp/t/results/def/no_category_or_no_name.pl
@@ -194,10 +194,15 @@ $result_trees{'no_category_or_no_name'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -207,10 +212,15 @@ $result_trees{'no_category_or_no_name'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -267,10 +277,15 @@ $result_trees{'no_category_or_no_name'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'deffnx_category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'deffnx_category'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/not_closed.pl b/tp/t/results/def/not_closed.pl
index 51ebbe5bd3..7f0688b268 100644
--- a/tp/t/results/def/not_closed.pl
+++ b/tp/t/results/def/not_closed.pl
@@ -17,10 +17,15 @@ $result_trees{'not_closed'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'not_closed'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bidule'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bidule'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -77,10 +87,15 @@ $result_trees{'not_closed'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -90,10 +105,15 @@ $result_trees{'not_closed'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'chose'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'chose'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -150,13 +170,18 @@ $result_trees{'not_closed'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Variable'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Variable'
+                                    }
+                                  ],
+                                  'type' => 'def_category_inserted'
                                 }
                               ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'type' => 'def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -166,10 +191,15 @@ $result_trees{'not_closed'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'type1'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'type1'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
diff --git a/tp/t/results/def/omit_def_space.pl 
b/tp/t/results/def/omit_def_space.pl
index 99147f7ee0..4ff3e221aa 100644
--- a/tp/t/results/def/omit_def_space.pl
+++ b/tp/t/results/def/omit_def_space.pl
@@ -104,13 +104,18 @@ $result_trees{'omit_def_space'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -120,10 +125,15 @@ $result_trees{'omit_def_space'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -205,13 +215,18 @@ $result_trees{'omit_def_space'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -221,10 +236,15 @@ $result_trees{'omit_def_space'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'another'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'another'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/protected_brace.pl 
b/tp/t/results/def/protected_brace.pl
index 9a5173ea5a..1f0c31c955 100644
--- a/tp/t/results/def/protected_brace.pl
+++ b/tp/t/results/def/protected_brace.pl
@@ -17,10 +17,15 @@ $result_trees{'protected_brace'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'protected_brace'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'cmdname' => '{',
+                      'contents' => [
+                        {
+                          'cmdname' => '{'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/def/ref_in_def.pl b/tp/t/results/def/ref_in_def.pl
index dba60e09b0..0d29e69c0d 100644
--- a/tp/t/results/def/ref_in_def.pl
+++ b/tp/t/results/def/ref_in_def.pl
@@ -49,31 +49,36 @@ $result_trees{'ref_in_def'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'ref',
+                          'source_info' => {
+                            'line_nr' => 4
+                          }
                         }
                       ],
-                      'cmdname' => 'ref',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 4
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -83,31 +88,36 @@ $result_trees{'ref_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'ref',
+                          'source_info' => {
+                            'line_nr' => 4
+                          }
                         }
                       ],
-                      'cmdname' => 'ref',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 4
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -159,31 +169,36 @@ $result_trees{'ref_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'pxref',
+                          'source_info' => {
+                            'line_nr' => 4
+                          }
                         }
                       ],
-                      'cmdname' => 'pxref',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 4
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -193,31 +208,36 @@ $result_trees{'ref_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'pxref',
+                          'source_info' => {
+                            'line_nr' => 4
+                          }
                         }
                       ],
-                      'cmdname' => 'pxref',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 4
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -249,31 +269,36 @@ $result_trees{'ref_in_def'} = {
                 {
                   'contents' => [
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'ref',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'ref',
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -283,31 +308,36 @@ $result_trees{'ref_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'ref',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'ref',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -359,31 +389,36 @@ $result_trees{'ref_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'pxref',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'pxref',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -393,31 +428,36 @@ $result_trees{'ref_in_def'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'myanchor'
+                              'contents' => [
+                                {
+                                  'text' => 'myanchor'
+                                }
+                              ],
+                              'extra' => {
+                                'node_content' => {
+                                  'contents' => [
+                                    {}
+                                  ]
+                                },
+                                'normalized' => 'myanchor'
+                              },
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'extra' => {
-                            'node_content' => {
-                              'contents' => [
-                                {}
-                              ]
-                            },
-                            'normalized' => 'myanchor'
-                          },
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'pxref',
+                          'source_info' => {
+                            'line_nr' => 5
+                          }
                         }
                       ],
-                      'cmdname' => 'pxref',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 5
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -551,18 +591,18 @@ $result_trees{'ref_in_def'} = {
   ],
   'type' => 'document_root'
 };
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[2]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[2]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[0];
 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[4]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[4]{'contents'}[0]{'args'}[0]{'contents'}[0];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[8]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[8]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[6]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[6]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[8]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[8]{'contents'}[0]{'args'}[0]{'contents'}[0];
 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'extra'}{'def_index_element'}
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'args'}[0]{'contents'}[2];
 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[0]{'extra'}{'element_node'}
 = $result_trees{'ref_in_def'}{'contents'}[1];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[2]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[2]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[0]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[2]{'contents'}[0]{'args'}[0]{'contents'}[0];
 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[4]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[4]{'contents'}[0]{'args'}[0]{'contents'}[0];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[6]{'args'}[0]{'contents'}[0];
-$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[8]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[8]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[6]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[6]{'contents'}[0]{'args'}[0]{'contents'}[0];
+$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[8]{'contents'}[0]{'args'}[0]{'extra'}{'node_content'}{'contents'}[0]
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[8]{'contents'}[0]{'args'}[0]{'contents'}[0];
 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'extra'}{'def_index_element'}
 = 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'args'}[0]{'contents'}[2];
 
$result_trees{'ref_in_def'}{'contents'}[1]{'contents'}[1]{'contents'}[1]{'extra'}{'element_node'}
 = $result_trees{'ref_in_def'}{'contents'}[1];
 
diff --git a/tp/t/results/def/text_block_before_defline.pl 
b/tp/t/results/def/text_block_before_defline.pl
index ec3e9a80f6..7a1f2520a5 100644
--- a/tp/t/results/def/text_block_before_defline.pl
+++ b/tp/t/results/def/text_block_before_defline.pl
@@ -367,10 +367,15 @@ $result_trees{'text_block_before_defline'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -380,10 +385,15 @@ $result_trees{'text_block_before_defline'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/wrong_braces_simple.pl 
b/tp/t/results/def/wrong_braces_simple.pl
index f08a441a7e..4d8cc69342 100644
--- a/tp/t/results/def/wrong_braces_simple.pl
+++ b/tp/t/results/def/wrong_braces_simple.pl
@@ -17,10 +17,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -151,10 +161,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -164,10 +179,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -298,10 +318,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -311,10 +336,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -448,10 +478,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -461,10 +496,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -606,10 +646,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -619,10 +664,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -692,10 +742,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -705,10 +760,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -784,10 +844,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -797,10 +862,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -889,10 +959,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -902,10 +977,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -997,10 +1077,15 @@ $result_trees{'wrong_braces_simple'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1010,10 +1095,15 @@ $result_trees{'wrong_braces_simple'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/def/wrong_braces_with_end_of_lines.pl 
b/tp/t/results/def/wrong_braces_with_end_of_lines.pl
index 90f590c9cf..d021d20494 100644
--- a/tp/t/results/def/wrong_braces_with_end_of_lines.pl
+++ b/tp/t/results/def/wrong_braces_with_end_of_lines.pl
@@ -17,10 +17,15 @@ $result_trees{'wrong_braces_with_end_of_lines'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'wrong_braces_with_end_of_lines'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -176,10 +186,15 @@ $result_trees{'wrong_braces_with_end_of_lines'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -189,10 +204,15 @@ $result_trees{'wrong_braces_with_end_of_lines'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/html_tests/deftypefnnewline_for_copying_after.pl 
b/tp/t/results/html_tests/deftypefnnewline_for_copying_after.pl
index 9255b38bbc..8e01d727e5 100644
--- a/tp/t/results/html_tests/deftypefnnewline_for_copying_after.pl
+++ b/tp/t/results/html_tests/deftypefnnewline_for_copying_after.pl
@@ -33,13 +33,18 @@ $result_trees{'deftypefnnewline_for_copying_after'} = {
                         {
                           'contents' => [
                             {
-                              'text' => 'Function'
+                              'contents' => [
+                                {
+                                  'text' => 'Function'
+                                }
+                              ],
+                              'type' => 'def_category_inserted'
                             }
                           ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'type' => 'def_category_inserted'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -49,10 +54,15 @@ $result_trees{'deftypefnnewline_for_copying_after'} = {
                           'type' => 'spaces_inserted'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'TYPE'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'type'
                           },
-                          'text' => 'TYPE'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -62,10 +72,15 @@ $result_trees{'deftypefnnewline_for_copying_after'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'NAME'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'NAME'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -408,13 +423,18 @@ $result_trees{'deftypefnnewline_for_copying_after'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -424,10 +444,15 @@ $result_trees{'deftypefnnewline_for_copying_after'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'void'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'void'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -437,10 +462,15 @@ $result_trees{'deftypefnnewline_for_copying_after'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'something'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'something'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/html_tests/deftypefnnewline_for_copying_before.pl 
b/tp/t/results/html_tests/deftypefnnewline_for_copying_before.pl
index ecf6cae6bd..3123e3bf92 100644
--- a/tp/t/results/html_tests/deftypefnnewline_for_copying_before.pl
+++ b/tp/t/results/html_tests/deftypefnnewline_for_copying_before.pl
@@ -75,13 +75,18 @@ $result_trees{'deftypefnnewline_for_copying_before'} = {
                         {
                           'contents' => [
                             {
-                              'text' => 'Function'
+                              'contents' => [
+                                {
+                                  'text' => 'Function'
+                                }
+                              ],
+                              'type' => 'def_category_inserted'
                             }
                           ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'type' => 'def_category_inserted'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -91,10 +96,15 @@ $result_trees{'deftypefnnewline_for_copying_before'} = {
                           'type' => 'spaces_inserted'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'TYPE'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'type'
                           },
-                          'text' => 'TYPE'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -104,10 +114,15 @@ $result_trees{'deftypefnnewline_for_copying_before'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'NAME'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'NAME'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -375,13 +390,18 @@ $result_trees{'deftypefnnewline_for_copying_before'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -391,10 +411,15 @@ $result_trees{'deftypefnnewline_for_copying_before'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'void'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'void'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -404,10 +429,15 @@ $result_trees{'deftypefnnewline_for_copying_before'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'something'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'something'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/indices/empty_string_index_entry.pl 
b/tp/t/results/indices/empty_string_index_entry.pl
index e96f77c97e..89a4a49d90 100644
--- a/tp/t/results/indices/empty_string_index_entry.pl
+++ b/tp/t/results/indices/empty_string_index_entry.pl
@@ -252,13 +252,18 @@ $result_trees{'empty_string_index_entry'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -353,13 +358,18 @@ $result_trees{'empty_string_index_entry'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -728,8 +738,8 @@ $result_converted{'xml'}->{'empty_string_index_entry'} = 
'<node name="Top" space
 <tableentry><tableterm><item spaces=" "><itemformat command="code"><indexterm 
index="fn" number="2"><w></w></indexterm><w></w></itemformat></item>
 </tableterm></tableentry></ftable>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="3"><w></w></indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction 
bracketed="on"><w></w></deffunction> <defparam bracketed="on"></defparam> 
<defparam bracketed="on"></defparam></definitionterm>
-<defunx spaces=" "><definitionterm><indexterm index="fn" 
number="4"><w></w></indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction 
bracketed="on"><w></w></deffunction> <defparam bracketed="on"></defparam> 
<defparam bracketed="on"></defparam></definitionterm></defunx>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="3"><w></w></indexterm><defcategory 
automatic="on">Function</defcategory> <deffunction 
bracketed="on"><w></w></deffunction> <defparam bracketed="on"></defparam> 
<defparam bracketed="on"></defparam></definitionterm>
+<defunx spaces=" "><definitionterm><indexterm index="fn" 
number="4"><w></w></indexterm><defcategory 
automatic="on">Function</defcategory> <deffunction 
bracketed="on"><w></w></deffunction> <defparam bracketed="on"></defparam> 
<defparam bracketed="on"></defparam></definitionterm></defunx>
 </defun>
 
 <printindex spaces=" " value="fn" line="fn"></printindex>
diff --git a/tp/t/results/indices/printindex_index_entry_in_copying.pl 
b/tp/t/results/indices/printindex_index_entry_in_copying.pl
index 879d589ae4..11c0f24448 100644
--- a/tp/t/results/indices/printindex_index_entry_in_copying.pl
+++ b/tp/t/results/indices/printindex_index_entry_in_copying.pl
@@ -81,13 +81,18 @@ $result_trees{'printindex_index_entry_in_copying'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Function'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Function'
+                                    }
+                                  ],
+                                  'type' => 'def_category_inserted'
                                 }
                               ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'type' => 'def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -97,10 +102,15 @@ $result_trees{'printindex_index_entry_in_copying'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'fun'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'fun'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -147,13 +157,18 @@ $result_trees{'printindex_index_entry_in_copying'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Function'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Function'
+                                    }
+                                  ],
+                                  'type' => 'def_category_inserted'
                                 }
                               ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'type' => 'def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -163,10 +178,15 @@ $result_trees{'printindex_index_entry_in_copying'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'xf'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'xf'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -1293,8 +1313,8 @@ 
$result_converted{'xml'}->{'printindex_index_entry_in_copying'} = '<copying ends
 
 <findex index="fn" spaces=" "><indexterm index="fn" number="1">Copying this 
document</indexterm></findex>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="2">fun</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>fun</deffunction> 
<defparam>arg</defparam></definitionterm>
-<defunx spaces=" "><definitionterm><indexterm index="fn" 
number="3">xf</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>xf</deffunction> 
<defparam>arg</defparam></definitionterm></defunx>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="2">fun</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>fun</deffunction> <defparam>arg</defparam></definitionterm>
+<defunx spaces=" "><definitionterm><indexterm index="fn" 
number="3">xf</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>xf</deffunction> <defparam>arg</defparam></definitionterm></defunx>
 <definitionitem><para>Defun
 </para></definitionitem></defun>
 
diff --git 
a/tp/t/results/indices/printindex_index_entry_in_copying_no_insertcopying.pl 
b/tp/t/results/indices/printindex_index_entry_in_copying_no_insertcopying.pl
index f0e335b482..78816138fe 100644
--- a/tp/t/results/indices/printindex_index_entry_in_copying_no_insertcopying.pl
+++ b/tp/t/results/indices/printindex_index_entry_in_copying_no_insertcopying.pl
@@ -81,13 +81,18 @@ 
$result_trees{'printindex_index_entry_in_copying_no_insertcopying'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Function'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Function'
+                                    }
+                                  ],
+                                  'type' => 'def_category_inserted'
                                 }
                               ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'type' => 'def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -97,10 +102,15 @@ 
$result_trees{'printindex_index_entry_in_copying_no_insertcopying'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'fun'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'fun'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -147,13 +157,18 @@ 
$result_trees{'printindex_index_entry_in_copying_no_insertcopying'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Function'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Function'
+                                    }
+                                  ],
+                                  'type' => 'def_category_inserted'
                                 }
                               ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'type' => 'def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -163,10 +178,15 @@ 
$result_trees{'printindex_index_entry_in_copying_no_insertcopying'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'xf'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'xf'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -1084,8 +1104,8 @@ 
$result_converted{'xml'}->{'printindex_index_entry_in_copying_no_insertcopying'}
 
 <findex index="fn" spaces=" "><indexterm index="fn" number="1">Copying this 
document</indexterm></findex>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="2">fun</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>fun</deffunction> 
<defparam>arg</defparam></definitionterm>
-<defunx spaces=" "><definitionterm><indexterm index="fn" 
number="3">xf</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>xf</deffunction> 
<defparam>arg</defparam></definitionterm></defunx>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="2">fun</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>fun</deffunction> <defparam>arg</defparam></definitionterm>
+<defunx spaces=" "><definitionterm><indexterm index="fn" 
number="3">xf</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>xf</deffunction> <defparam>arg</defparam></definitionterm></defunx>
 <definitionitem><para>Defun
 </para></definitionitem></defun>
 
diff --git a/tp/t/results/indices/same_index_entry_merged_indices.pl 
b/tp/t/results/indices/same_index_entry_merged_indices.pl
index ae67989e51..ae2aae8910 100644
--- a/tp/t/results/indices/same_index_entry_merged_indices.pl
+++ b/tp/t/results/indices/same_index_entry_merged_indices.pl
@@ -189,10 +189,15 @@ $result_trees{'same_index_entry_merged_indices'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -202,10 +207,15 @@ $result_trees{'same_index_entry_merged_indices'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'mmm-mode'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'mmm-mode'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -215,23 +225,28 @@ $result_trees{'same_index_entry_merged_indices'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'arg'
+                              'contents' => [
+                                {
+                                  'text' => 'arg'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 11
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 11
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -327,13 +342,18 @@ $result_trees{'same_index_entry_merged_indices'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Variable'
+                          'contents' => [
+                            {
+                              'text' => 'Variable'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -343,10 +363,15 @@ $result_trees{'same_index_entry_merged_indices'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'mmm-mode'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'mmm-mode'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -788,7 +813,7 @@ 
$result_converted{'xml'}->{'same_index_entry_merged_indices'} = '<syncodeindex s
 <definitionitem><para>Toggle the state of MMM Mode.
 </para></definitionitem></deffn>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1" mergedindex="fn">mmm-mode</indexterm><defcategory automatic="on" 
bracketed="on">Variable</defcategory> 
<defvariable>mmm-mode</defvariable></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1" mergedindex="fn">mmm-mode</indexterm><defcategory 
automatic="on">Variable</defcategory> 
<defvariable>mmm-mode</defvariable></definitionterm>
 <definitionitem><para>This variable represents MMM Mode.
 </para></definitionitem></defvar>
 
diff --git a/tp/t/results/info_tests/def_in_copying.pl 
b/tp/t/results/info_tests/def_in_copying.pl
index 5af1cf277c..b797b0f922 100644
--- a/tp/t/results/info_tests/def_in_copying.pl
+++ b/tp/t/results/info_tests/def_in_copying.pl
@@ -191,10 +191,15 @@ $result_trees{'def_in_copying'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'aa'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'aa'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -204,10 +209,15 @@ $result_trees{'def_in_copying'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'bb'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'bb'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -253,10 +263,15 @@ $result_trees{'def_in_copying'} = {
                     {
                       'contents' => [
                         {
+                          'contents' => [
+                            {
+                              'text' => 'aax'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'text' => 'aax'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -266,10 +281,15 @@ $result_trees{'def_in_copying'} = {
                           'type' => 'spaces'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'bbx'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'bbx'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -456,10 +476,15 @@ $result_trees{'def_in_copying'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'aa'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'aa'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -469,10 +494,15 @@ $result_trees{'def_in_copying'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bb'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bb'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -518,10 +548,15 @@ $result_trees{'def_in_copying'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'aax'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'aax'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -531,10 +566,15 @@ $result_trees{'def_in_copying'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'bbx'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'bbx'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/info_tests/test_index.pl 
b/tp/t/results/info_tests/test_index.pl
index e75dc41082..f584071949 100644
--- a/tp/t/results/info_tests/test_index.pl
+++ b/tp/t/results/info_tests/test_index.pl
@@ -277,10 +277,15 @@ $result_trees{'test_index'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fset'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'fset'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -290,23 +295,28 @@ $result_trees{'test_index'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'i'
+                              'contents' => [
+                                {
+                                  'text' => 'i'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'var',
+                          'source_info' => {
+                            'line_nr' => 12
+                          }
                         }
                       ],
-                      'cmdname' => 'var',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 12
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -364,10 +374,15 @@ $result_trees{'test_index'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'truc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'truc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -377,10 +392,15 @@ $result_trees{'test_index'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'machin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'machin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git 
a/tp/t/results/init_files_tests/translation_in_parser_in_translation.pl 
b/tp/t/results/init_files_tests/translation_in_parser_in_translation.pl
index cb440fbce5..e4aeae9a31 100644
--- a/tp/t/results/init_files_tests/translation_in_parser_in_translation.pl
+++ b/tp/t/results/init_files_tests/translation_in_parser_in_translation.pl
@@ -181,10 +181,15 @@ $result_trees{'translation_in_parser_in_translation'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'da'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'da'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -194,10 +199,15 @@ $result_trees{'translation_in_parser_in_translation'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'db'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'db'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -207,10 +217,15 @@ $result_trees{'translation_in_parser_in_translation'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'dc'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'dc'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -220,10 +235,15 @@ $result_trees{'translation_in_parser_in_translation'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'dd'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'dd'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -253,38 +273,58 @@ $result_trees{'translation_in_parser_in_translation'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'dd'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'dd'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'db'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'db'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'dd'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'dd'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'db'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'db'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/invalid_nestings/block_not_matching.pl 
b/tp/t/results/invalid_nestings/block_not_matching.pl
index 1bdac0a45f..b0445da98b 100644
--- a/tp/t/results/invalid_nestings/block_not_matching.pl
+++ b/tp/t/results/invalid_nestings/block_not_matching.pl
@@ -71,10 +71,15 @@ $result_trees{'block_not_matching'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'print_navigation'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'print_navigation'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/invalid_nestings/def_in_style_command.pl 
b/tp/t/results/invalid_nestings/def_in_style_command.pl
index f7c4b70888..eba9b3d6d6 100644
--- a/tp/t/results/invalid_nestings/def_in_style_command.pl
+++ b/tp/t/results/invalid_nestings/def_in_style_command.pl
@@ -41,13 +41,18 @@ $result_trees{'def_in_style_command'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -57,10 +62,15 @@ $result_trees{'def_in_style_command'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git 
a/tp/t/results/invalid_nestings/def_not_closed_in_menu_description.pl 
b/tp/t/results/invalid_nestings/def_not_closed_in_menu_description.pl
index 88b3b49922..2b792390f3 100644
--- a/tp/t/results/invalid_nestings/def_not_closed_in_menu_description.pl
+++ b/tp/t/results/invalid_nestings/def_not_closed_in_menu_description.pl
@@ -72,10 +72,15 @@ $result_trees{'def_not_closed_in_menu_description'} = {
                             {
                               'contents' => [
                                 {
+                                  'contents' => [
+                                    {
+                                      'text' => 'bidule'
+                                    }
+                                  ],
                                   'extra' => {
                                     'def_role' => 'category'
                                   },
-                                  'text' => 'bidule'
+                                  'type' => 'def_aggregate'
                                 },
                                 {
                                   'extra' => {
@@ -85,10 +90,15 @@ $result_trees{'def_not_closed_in_menu_description'} = {
                                   'type' => 'spaces'
                                 },
                                 {
+                                  'contents' => [
+                                    {
+                                      'text' => 'truc'
+                                    }
+                                  ],
                                   'extra' => {
                                     'def_role' => 'name'
                                   },
-                                  'text' => 'truc'
+                                  'type' => 'def_aggregate'
                                 },
                                 {
                                   'extra' => {
diff --git a/tp/t/results/invalid_nestings/on_def_line.pl 
b/tp/t/results/invalid_nestings/on_def_line.pl
index 95c2884c98..c564411740 100644
--- a/tp/t/results/invalid_nestings/on_def_line.pl
+++ b/tp/t/results/invalid_nestings/on_def_line.pl
@@ -55,23 +55,29 @@ $result_trees{'on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in titlefont'
+                              'contents' => [
+                                {
+                                  'text' => 'in titlefont'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'titlefont',
+                          'extra' => {},
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'titlefont',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -81,28 +87,34 @@ $result_trees{'on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
                               'contents' => [
                                 {
-                                  'text' => 'footnote'
+                                  'contents' => [
+                                    {
+                                      'text' => 'footnote'
+                                    }
+                                  ],
+                                  'type' => 'paragraph'
                                 }
                               ],
-                              'type' => 'paragraph'
+                              'type' => 'brace_command_context'
                             }
                           ],
-                          'type' => 'brace_command_context'
+                          'cmdname' => 'footnote',
+                          'extra' => {},
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'footnote',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -112,34 +124,39 @@ $result_trees{'on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'exdent'
+                              'contents' => [
+                                {
+                                  'text' => 'exdent'
+                                }
+                              ],
+                              'info' => {
+                                'spaces_after_argument' => {
+                                  'text' => '
+'
+                                }
+                              },
+                              'type' => 'line_arg'
                             }
                           ],
+                          'cmdname' => 'exdent',
                           'info' => {
-                            'spaces_after_argument' => {
-                              'text' => '
-'
+                            'spaces_before_argument' => {
+                              'text' => ' '
                             }
                           },
-                          'type' => 'line_arg'
+                          'source_info' => {
+                            'line_nr' => 1
+                          }
                         }
                       ],
-                      'cmdname' => 'exdent',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'info' => {
-                        'spaces_before_argument' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 1
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'type' => 'block_line_arg'
@@ -202,23 +219,29 @@ $result_trees{'on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'in titlefontx'
+                              'contents' => [
+                                {
+                                  'text' => 'in titlefontx'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'titlefont',
+                          'extra' => {},
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'titlefont',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -228,28 +251,34 @@ $result_trees{'on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
                               'contents' => [
                                 {
-                                  'text' => 'footnotex'
+                                  'contents' => [
+                                    {
+                                      'text' => 'footnotex'
+                                    }
+                                  ],
+                                  'type' => 'paragraph'
                                 }
                               ],
-                              'type' => 'paragraph'
+                              'type' => 'brace_command_context'
                             }
                           ],
-                          'type' => 'brace_command_context'
+                          'cmdname' => 'footnote',
+                          'extra' => {},
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'footnote',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -259,34 +288,39 @@ $result_trees{'on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'exdentx'
+                              'contents' => [
+                                {
+                                  'text' => 'exdentx'
+                                }
+                              ],
+                              'info' => {
+                                'spaces_after_argument' => {
+                                  'text' => '
+'
+                                }
+                              },
+                              'type' => 'line_arg'
                             }
                           ],
+                          'cmdname' => 'exdent',
                           'info' => {
-                            'spaces_after_argument' => {
-                              'text' => '
-'
+                            'spaces_before_argument' => {
+                              'text' => ' '
                             }
                           },
-                          'type' => 'line_arg'
+                          'source_info' => {
+                            'line_nr' => 2
+                          }
                         }
                       ],
-                      'cmdname' => 'exdent',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'info' => {
-                        'spaces_before_argument' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 2
-                      }
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'type' => 'line_arg'
diff --git a/tp/t/results/invalid_nestings/section_on_def_line.pl 
b/tp/t/results/invalid_nestings/section_on_def_line.pl
index e52dd9b415..ceef9aa265 100644
--- a/tp/t/results/invalid_nestings/section_on_def_line.pl
+++ b/tp/t/results/invalid_nestings/section_on_def_line.pl
@@ -17,10 +17,15 @@ $result_trees{'section_on_def_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'section_on_def_line'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/invalid_nestings/section_on_defx_line.pl 
b/tp/t/results/invalid_nestings/section_on_defx_line.pl
index cdbb3b4e59..8d98d26b98 100644
--- a/tp/t/results/invalid_nestings/section_on_defx_line.pl
+++ b/tp/t/results/invalid_nestings/section_on_defx_line.pl
@@ -17,10 +17,15 @@ $result_trees{'section_on_defx_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'h'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'h'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -30,10 +35,15 @@ $result_trees{'section_on_defx_line'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'j'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'j'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -90,10 +100,15 @@ $result_trees{'section_on_defx_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -103,10 +118,15 @@ $result_trees{'section_on_defx_line'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/languages/documentlanguage.pl 
b/tp/t/results/languages/documentlanguage.pl
index 4647f2ea17..1df2516437 100644
--- a/tp/t/results/languages/documentlanguage.pl
+++ b/tp/t/results/languages/documentlanguage.pl
@@ -427,16 +427,23 @@ $result_trees{'documentlanguage'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Method',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'pt',
+                            'translation_context' => 'category of methods with 
data type in object-oriented programming for @deftypemethod'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'pt',
-                        'translation_context' => 'category of methods with 
data type in object-oriented programming for @deftypemethod'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -446,10 +453,15 @@ $result_trees{'documentlanguage'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -459,10 +471,15 @@ $result_trees{'documentlanguage'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'data-type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'data-type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -472,10 +489,15 @@ $result_trees{'documentlanguage'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -505,38 +527,58 @@ $result_trees{'documentlanguage'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' na '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/documentlanguage_option.pl 
b/tp/t/results/languages/documentlanguage_option.pl
index 6512ba178b..3cad4fca08 100644
--- a/tp/t/results/languages/documentlanguage_option.pl
+++ b/tp/t/results/languages/documentlanguage_option.pl
@@ -427,16 +427,23 @@ $result_trees{'documentlanguage_option'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Method',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr',
+                            'translation_context' => 'category of methods with 
data type in object-oriented programming for @deftypemethod'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr',
-                        'translation_context' => 'category of methods with 
data type in object-oriented programming for @deftypemethod'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -446,10 +453,15 @@ $result_trees{'documentlanguage_option'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -459,10 +471,15 @@ $result_trees{'documentlanguage_option'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'data-type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'data-type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -472,10 +489,15 @@ $result_trees{'documentlanguage_option'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -505,38 +527,58 @@ $result_trees{'documentlanguage_option'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/documentlanguage_unknown.pl 
b/tp/t/results/languages/documentlanguage_unknown.pl
index 0a220d6b37..126aadc978 100644
--- a/tp/t/results/languages/documentlanguage_unknown.pl
+++ b/tp/t/results/languages/documentlanguage_unknown.pl
@@ -427,16 +427,23 @@ $result_trees{'documentlanguage_unknown'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Method',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Method',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'unknown',
+                            'translation_context' => 'category of methods with 
data type in object-oriented programming for @deftypemethod'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'unknown',
-                        'translation_context' => 'category of methods with 
data type in object-oriented programming for @deftypemethod'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -446,10 +453,15 @@ $result_trees{'documentlanguage_unknown'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -459,10 +471,15 @@ $result_trees{'documentlanguage_unknown'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'data-type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'type'
                       },
-                      'text' => 'data-type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -472,10 +489,15 @@ $result_trees{'documentlanguage_unknown'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -505,38 +527,58 @@ $result_trees{'documentlanguage_unknown'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' on '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'class'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'class'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/multiple_documentlanguage.pl 
b/tp/t/results/languages/multiple_documentlanguage.pl
index 570c359e30..5ef6c1edb2 100644
--- a/tp/t/results/languages/multiple_documentlanguage.pl
+++ b/tp/t/results/languages/multiple_documentlanguage.pl
@@ -70,16 +70,23 @@ $result_trees{'multiple_documentlanguage'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Instance Variable',
-                                  'type' => 'untranslated'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Instance Variable',
+                                      'type' => 'untranslated'
+                                    }
+                                  ],
+                                  'extra' => {
+                                    'documentlanguage' => 'fr',
+                                    'translation_context' => 'category of 
instance variables in object-oriented programming for @defivar'
+                                  },
+                                  'type' => 
'untranslated_def_category_inserted'
                                 }
                               ],
                               'extra' => {
-                                'def_role' => 'category',
-                                'documentlanguage' => 'fr',
-                                'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                                'def_role' => 'category'
                               },
-                              'type' => 'untranslated_def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -89,10 +96,15 @@ $result_trees{'multiple_documentlanguage'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -102,10 +114,15 @@ $result_trees{'multiple_documentlanguage'} = {
                               'type' => 'spaces'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -135,38 +152,58 @@ $result_trees{'multiple_documentlanguage'} = {
                         'def_index_element' => {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'text' => ' de '
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             }
                           ]
                         },
                         'def_index_ref_element' => {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'text' => ' of '
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             }
                           ]
                         },
@@ -426,16 +463,23 @@ $result_trees{'multiple_documentlanguage'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -445,10 +489,15 @@ $result_trees{'multiple_documentlanguage'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'fr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -458,10 +507,15 @@ $result_trees{'multiple_documentlanguage'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -491,38 +545,58 @@ $result_trees{'multiple_documentlanguage'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'fr'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'fr'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -708,16 +782,23 @@ $result_trees{'multiple_documentlanguage'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'hr',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'hr',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -727,10 +808,15 @@ $result_trees{'multiple_documentlanguage'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'hr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'hr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -740,10 +826,15 @@ $result_trees{'multiple_documentlanguage'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -773,38 +864,58 @@ $result_trees{'multiple_documentlanguage'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' od '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'hr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'hr'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'hr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'hr'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1323,7 +1434,7 @@ Pr&eacute;c&eacute;dent: <a href="#Top" accesskey="p" 
rel="prev">top</a>, Monter
 $result_converted{'xml'}->{'multiple_documentlanguage'} = '<documentlanguage 
xml:lang="fr" spaces=" ">fr</documentlanguage>
 
 <copying endspaces=" ">
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1">a de copying</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>copying</defclass> 
<defclassvar>a</defclassvar> <defparam>b</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1">a de copying</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>copying</defclass> 
<defclassvar>a</defclassvar> <defparam>b</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 </copying>
@@ -1335,7 +1446,7 @@ $result_converted{'xml'}->{'multiple_documentlanguage'} = 
'<documentlanguage xml
 <node name="chap" spaces=" "><nodename>chap</nodename><nodeprev 
automatic="on">Top</nodeprev><nodeup automatic="on">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>Chap</sectiontitle>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="2">BBB de fr</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>fr</defclass> 
<defclassvar>BBB</defclassvar> <defparam>CCC</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="2">BBB de fr</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>fr</defclass> <defclassvar>BBB</defclassvar> 
<defparam>CCC</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 
@@ -1345,7 +1456,7 @@ $result_converted{'xml'}->{'multiple_documentlanguage'} = 
'<documentlanguage xml
 
 <documentlanguage xml:lang="hr" spaces=" ">hr</documentlanguage>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="3">BBB od hr</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>hr</defclass> 
<defclassvar>BBB</defclassvar> <defparam>CCC</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="3">BBB od hr</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>hr</defclass> <defclassvar>BBB</defclassvar> 
<defparam>CCC</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 
diff --git a/tp/t/results/languages/multiple_in_preamble.pl 
b/tp/t/results/languages/multiple_in_preamble.pl
index 74ab6e131a..44ece31ff8 100644
--- a/tp/t/results/languages/multiple_in_preamble.pl
+++ b/tp/t/results/languages/multiple_in_preamble.pl
@@ -70,16 +70,23 @@ $result_trees{'multiple_in_preamble'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Instance Variable',
-                                  'type' => 'untranslated'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Instance Variable',
+                                      'type' => 'untranslated'
+                                    }
+                                  ],
+                                  'extra' => {
+                                    'documentlanguage' => 'fr',
+                                    'translation_context' => 'category of 
instance variables in object-oriented programming for @defivar'
+                                  },
+                                  'type' => 
'untranslated_def_category_inserted'
                                 }
                               ],
                               'extra' => {
-                                'def_role' => 'category',
-                                'documentlanguage' => 'fr',
-                                'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                                'def_role' => 'category'
                               },
-                              'type' => 'untranslated_def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -89,10 +96,15 @@ $result_trees{'multiple_in_preamble'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -102,10 +114,15 @@ $result_trees{'multiple_in_preamble'} = {
                               'type' => 'spaces'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -135,38 +152,58 @@ $result_trees{'multiple_in_preamble'} = {
                         'def_index_element' => {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'text' => ' de '
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             }
                           ]
                         },
                         'def_index_ref_element' => {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'text' => ' of '
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             }
                           ]
                         },
@@ -460,16 +497,23 @@ $result_trees{'multiple_in_preamble'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'hr',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'hr',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -479,10 +523,15 @@ $result_trees{'multiple_in_preamble'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'hr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'hr'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -492,10 +541,15 @@ $result_trees{'multiple_in_preamble'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -525,38 +579,58 @@ $result_trees{'multiple_in_preamble'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' od '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'hr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'hr'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'hr'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'hr'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -688,16 +762,23 @@ $result_trees{'multiple_in_preamble'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'de',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'de',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -707,10 +788,15 @@ $result_trees{'multiple_in_preamble'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'de'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'de'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -720,10 +806,15 @@ $result_trees{'multiple_in_preamble'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'FFF'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'FFF'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -753,38 +844,58 @@ $result_trees{'multiple_in_preamble'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'FFF'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'FFF'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' von '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'de'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'de'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'FFF'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'FFF'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'de'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'de'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1140,7 +1251,7 @@ Prethodno: <a href="#Top" accesskey="p" rel="prev">top 
section</a>, Gore: <a hre
 $result_converted{'xml'}->{'multiple_in_preamble'} = '<documentlanguage 
xml:lang="fr" spaces=" ">fr</documentlanguage>
 
 <copying endspaces=" ">
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1">a de copying</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>copying</defclass> 
<defclassvar>a</defclassvar> <defparam>b</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1">a de copying</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>copying</defclass> 
<defclassvar>a</defclassvar> <defparam>b</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 </copying>
@@ -1154,13 +1265,13 @@ $result_converted{'xml'}->{'multiple_in_preamble'} = 
'<documentlanguage xml:lang
 <node name="chapter" spaces=" "><nodename>chapter</nodename><nodeprev 
automatic="on">Top</nodeprev><nodeup automatic="on">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>chap</sectiontitle>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="2">BBB od hr</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>hr</defclass> 
<defclassvar>BBB</defclassvar> <defparam>CCC</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="2">BBB od hr</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>hr</defclass> <defclassvar>BBB</defclassvar> 
<defparam>CCC</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 
 <documentlanguage xml:lang="de" spaces=" ">de</documentlanguage>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="3">FFF von de</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>de</defclass> 
<defclassvar>FFF</defclassvar> <defparam>GGG</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="3">FFF von de</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>de</defclass> <defclassvar>FFF</defclassvar> 
<defparam>GGG</defparam></definitionterm>
 </defivar>
 </chapter>
 ';
diff --git a/tp/t/results/languages/multiple_in_preamble_before_node.pl 
b/tp/t/results/languages/multiple_in_preamble_before_node.pl
index 6f1ab8f70d..6fe56d50e4 100644
--- a/tp/t/results/languages/multiple_in_preamble_before_node.pl
+++ b/tp/t/results/languages/multiple_in_preamble_before_node.pl
@@ -70,16 +70,23 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                             {
                               'contents' => [
                                 {
-                                  'text' => 'Instance Variable',
-                                  'type' => 'untranslated'
+                                  'contents' => [
+                                    {
+                                      'text' => 'Instance Variable',
+                                      'type' => 'untranslated'
+                                    }
+                                  ],
+                                  'extra' => {
+                                    'documentlanguage' => 'fr',
+                                    'translation_context' => 'category of 
instance variables in object-oriented programming for @defivar'
+                                  },
+                                  'type' => 
'untranslated_def_category_inserted'
                                 }
                               ],
                               'extra' => {
-                                'def_role' => 'category',
-                                'documentlanguage' => 'fr',
-                                'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                                'def_role' => 'category'
                               },
-                              'type' => 'untranslated_def_category_inserted'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -89,10 +96,15 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                               'type' => 'spaces_inserted'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -102,10 +114,15 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                               'type' => 'spaces'
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -135,38 +152,58 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                         'def_index_element' => {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'text' => ' de '
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             }
                           ]
                         },
                         'def_index_ref_element' => {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'a'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'text' => 'a'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'text' => ' of '
                             },
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'copying'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'class'
                               },
-                              'text' => 'copying'
+                              'type' => 'def_aggregate'
                             }
                           ]
                         },
@@ -509,16 +546,23 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'de',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'de',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -528,10 +572,15 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -541,10 +590,15 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -574,38 +628,58 @@ $result_trees{'multiple_in_preamble_before_node'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' von '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'c'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'c'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -981,7 +1055,7 @@ Vorige: <a href="#Top" accesskey="p" rel="prev">top 
section</a>, Nach oben: <a h
 $result_converted{'xml'}->{'multiple_in_preamble_before_node'} = 
'<documentlanguage xml:lang="fr" spaces=" ">fr</documentlanguage>
 
 <copying endspaces=" ">
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1">a de copying</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>copying</defclass> 
<defclassvar>a</defclassvar> <defparam>b</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="1">a de copying</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>copying</defclass> 
<defclassvar>a</defclassvar> <defparam>b</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 </copying>
@@ -999,7 +1073,7 @@ 
$result_converted{'xml'}->{'multiple_in_preamble_before_node'} = '<documentlangu
 <node name="chapter" spaces=" "><nodename>chapter</nodename><nodeprev 
automatic="on">Top</nodeprev><nodeup automatic="on">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>chap</sectiontitle>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="2">BBB von c</indexterm><defcategory automatic="on" 
bracketed="on">Instance Variable</defcategory> <defclass>c</defclass> 
<defclassvar>BBB</defclassvar> <defparam>CCC</defparam></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="2">BBB von c</indexterm><defcategory automatic="on">Instance 
Variable</defcategory> <defclass>c</defclass> <defclassvar>BBB</defclassvar> 
<defparam>CCC</defparam></definitionterm>
 <definitionitem><para>&errorglyph;
 </para></definitionitem></defivar>
 </chapter>
diff --git a/tp/t/results/languages/multiple_lang_chapters.pl 
b/tp/t/results/languages/multiple_lang_chapters.pl
index 04718c5525..e8a80324f8 100644
--- a/tp/t/results/languages/multiple_lang_chapters.pl
+++ b/tp/t/results/languages/multiple_lang_chapters.pl
@@ -708,16 +708,23 @@ $result_trees{'multiple_lang_chapters'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'ja',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'ja',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -727,10 +734,15 @@ $result_trees{'multiple_lang_chapters'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -740,10 +752,15 @@ $result_trees{'multiple_lang_chapters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -773,38 +790,58 @@ $result_trees{'multiple_lang_chapters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1010,16 +1047,23 @@ $result_trees{'multiple_lang_chapters'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'en',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'en',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1029,10 +1073,15 @@ $result_trees{'multiple_lang_chapters'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1042,10 +1091,15 @@ $result_trees{'multiple_lang_chapters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1075,38 +1129,58 @@ $result_trees{'multiple_lang_chapters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1276,16 +1350,23 @@ $result_trees{'multiple_lang_chapters'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr_FR',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr_FR',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1295,10 +1376,15 @@ $result_trees{'multiple_lang_chapters'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1308,10 +1394,15 @@ $result_trees{'multiple_lang_chapters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1341,38 +1432,58 @@ $result_trees{'multiple_lang_chapters'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/multiple_lang_chapters_latex.pl 
b/tp/t/results/languages/multiple_lang_chapters_latex.pl
index 3eeeb2a59f..e6e3ac44fb 100644
--- a/tp/t/results/languages/multiple_lang_chapters_latex.pl
+++ b/tp/t/results/languages/multiple_lang_chapters_latex.pl
@@ -708,16 +708,23 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'ja',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'ja',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -727,10 +734,15 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -740,10 +752,15 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -773,38 +790,58 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1010,16 +1047,23 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'en',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'en',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1029,10 +1073,15 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1042,10 +1091,15 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1075,38 +1129,58 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1276,16 +1350,23 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr_FR',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr_FR',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1295,10 +1376,15 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1308,10 +1394,15 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1341,38 +1432,58 @@ $result_trees{'multiple_lang_chapters_latex'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/multiple_lang_chapters_texi2html.pl 
b/tp/t/results/languages/multiple_lang_chapters_texi2html.pl
index 3f87a88a2a..80f2c434b4 100644
--- a/tp/t/results/languages/multiple_lang_chapters_texi2html.pl
+++ b/tp/t/results/languages/multiple_lang_chapters_texi2html.pl
@@ -677,16 +677,23 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'ja',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'ja',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -696,10 +703,15 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -709,10 +721,15 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -742,38 +759,58 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -979,16 +1016,23 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'en',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'en',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -998,10 +1042,15 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1011,10 +1060,15 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1044,38 +1098,58 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
@@ -1245,16 +1319,23 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr_FR',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr_FR',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1264,10 +1345,15 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1277,10 +1363,15 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -1310,38 +1401,58 @@ $result_trees{'multiple_lang_chapters_texi2html'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/simple_documentlanguage.pl 
b/tp/t/results/languages/simple_documentlanguage.pl
index 214e1de994..5ab74bea9a 100644
--- a/tp/t/results/languages/simple_documentlanguage.pl
+++ b/tp/t/results/languages/simple_documentlanguage.pl
@@ -117,16 +117,23 @@ $result_trees{'simple_documentlanguage'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -136,10 +143,15 @@ $result_trees{'simple_documentlanguage'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -149,10 +161,15 @@ $result_trees{'simple_documentlanguage'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -182,38 +199,58 @@ $result_trees{'simple_documentlanguage'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/languages/unknown_region.pl 
b/tp/t/results/languages/unknown_region.pl
index ba1cfcfb5e..926e6c27e8 100644
--- a/tp/t/results/languages/unknown_region.pl
+++ b/tp/t/results/languages/unknown_region.pl
@@ -117,16 +117,23 @@ $result_trees{'unknown_region'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Instance Variable',
-                          'type' => 'untranslated'
+                          'contents' => [
+                            {
+                              'text' => 'Instance Variable',
+                              'type' => 'untranslated'
+                            }
+                          ],
+                          'extra' => {
+                            'documentlanguage' => 'fr_NOWHERE',
+                            'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                          },
+                          'type' => 'untranslated_def_category_inserted'
                         }
                       ],
                       'extra' => {
-                        'def_role' => 'category',
-                        'documentlanguage' => 'fr_NOWHERE',
-                        'translation_context' => 'category of instance 
variables in object-oriented programming for @defivar'
+                        'def_role' => 'category'
                       },
-                      'type' => 'untranslated_def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -136,10 +143,15 @@ $result_trees{'unknown_region'} = {
                       'type' => 'spaces_inserted'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -149,10 +161,15 @@ $result_trees{'unknown_region'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -182,38 +199,58 @@ $result_trees{'unknown_region'} = {
                 'def_index_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' de '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
                 'def_index_ref_element' => {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'BBB'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'BBB'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'text' => ' of '
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'AAA'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'class'
                       },
-                      'text' => 'AAA'
+                      'type' => 'def_aggregate'
                     }
                   ]
                 },
diff --git a/tp/t/results/latex_tests/brace_in_index.pl 
b/tp/t/results/latex_tests/brace_in_index.pl
index 9761c13c57..3d53dd579f 100644
--- a/tp/t/results/latex_tests/brace_in_index.pl
+++ b/tp/t/results/latex_tests/brace_in_index.pl
@@ -276,13 +276,18 @@ $result_trees{'brace_in_index'} = {
                     {
                       'contents' => [
                         {
-                          'text' => 'Function'
+                          'contents' => [
+                            {
+                              'text' => 'Function'
+                            }
+                          ],
+                          'type' => 'def_category_inserted'
                         }
                       ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'type' => 'def_category_inserted'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/api_doc_with_linemacro.pl 
b/tp/t/results/linemacro/api_doc_with_linemacro.pl
index 7eca5bbb5e..ebd8c84e8c 100644
--- a/tp/t/results/linemacro/api_doc_with_linemacro.pl
+++ b/tp/t/results/linemacro/api_doc_with_linemacro.pl
@@ -247,10 +247,15 @@ $result_trees{'api_doc_with_linemacro'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -260,10 +265,15 @@ $result_trees{'api_doc_with_linemacro'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'fft.fft'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'fft.fft'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -306,23 +316,28 @@ $result_trees{'api_doc_with_linemacro'} = {
                       'text' => 'n='
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'None'
+                              'contents' => [
+                                {
+                                  'text' => 'None'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -345,23 +360,28 @@ $result_trees{'api_doc_with_linemacro'} = {
                       'text' => 'axis='
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => '-1'
+                              'contents' => [
+                                {
+                                  'text' => '-1'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -384,23 +404,28 @@ $result_trees{'api_doc_with_linemacro'} = {
                       'text' => 'norm='
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'None'
+                              'contents' => [
+                                {
+                                  'text' => 'None'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'source_info' => {
+                            'line_nr' => 15
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'source_info' => {
-                        'line_nr' => 15
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -518,10 +543,15 @@ $result_trees{'api_doc_with_linemacro'} = {
                         {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'Parameter'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'text' => 'Parameter'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -531,24 +561,29 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'a'
+                                      'contents' => [
+                                        {
+                                          'text' => 'a'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 19,
+                                    'macro' => 'param'
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'source_info' => {
-                                'line_nr' => 19,
-                                'macro' => 'param'
-                              }
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -558,31 +593,36 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ' : array_like'
+                                      'contents' => [
+                                        {
+                                          'text' => ' : array_like'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 19,
+                                    'macro' => 'param'
+                                  },
+                                  'source_marks' => [
+                                    {
+                                      'counter' => 1,
+                                      'sourcemark_type' => 
'linemacro_expansion',
+                                      'status' => 'end'
+                                    }
+                                  ]
                                 }
                               ],
-                              'cmdname' => 'code',
                               'extra' => {
                                 'def_role' => 'arg'
                               },
-                              'source_info' => {
-                                'line_nr' => 19,
-                                'macro' => 'param'
-                              },
-                              'source_marks' => [
-                                {
-                                  'counter' => 1,
-                                  'sourcemark_type' => 'linemacro_expansion',
-                                  'status' => 'end'
-                                }
-                              ]
+                              'type' => 'def_aggregate'
                             }
                           ],
                           'info' => {
@@ -676,10 +716,15 @@ $result_trees{'api_doc_with_linemacro'} = {
                         {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'Parameter'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'text' => 'Parameter'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -689,24 +734,29 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'n'
+                                      'contents' => [
+                                        {
+                                          'text' => 'n'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 22,
+                                    'macro' => 'param'
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'source_info' => {
-                                'line_nr' => 22,
-                                'macro' => 'param'
-                              }
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -716,31 +766,36 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ' : int, optional'
+                                      'contents' => [
+                                        {
+                                          'text' => ' : int, optional'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 22,
+                                    'macro' => 'param'
+                                  },
+                                  'source_marks' => [
+                                    {
+                                      'counter' => 2,
+                                      'sourcemark_type' => 
'linemacro_expansion',
+                                      'status' => 'end'
+                                    }
+                                  ]
                                 }
                               ],
-                              'cmdname' => 'code',
                               'extra' => {
                                 'def_role' => 'arg'
                               },
-                              'source_info' => {
-                                'line_nr' => 22,
-                                'macro' => 'param'
-                              },
-                              'source_marks' => [
-                                {
-                                  'counter' => 2,
-                                  'sourcemark_type' => 'linemacro_expansion',
-                                  'status' => 'end'
-                                }
-                              ]
+                              'type' => 'def_aggregate'
                             }
                           ],
                           'info' => {
@@ -857,10 +912,15 @@ $result_trees{'api_doc_with_linemacro'} = {
                         {
                           'contents' => [
                             {
+                              'contents' => [
+                                {
+                                  'text' => 'Parameter'
+                                }
+                              ],
                               'extra' => {
                                 'def_role' => 'category'
                               },
-                              'text' => 'Parameter'
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -870,24 +930,29 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'axis'
+                                      'contents' => [
+                                        {
+                                          'text' => 'axis'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 26,
+                                    'macro' => 'param'
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'source_info' => {
-                                'line_nr' => 26,
-                                'macro' => 'param'
-                              }
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -897,31 +962,36 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ' : int, optional'
+                                      'contents' => [
+                                        {
+                                          'text' => ' : int, optional'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 26,
+                                    'macro' => 'param'
+                                  },
+                                  'source_marks' => [
+                                    {
+                                      'counter' => 3,
+                                      'sourcemark_type' => 
'linemacro_expansion',
+                                      'status' => 'end'
+                                    }
+                                  ]
                                 }
                               ],
-                              'cmdname' => 'code',
                               'extra' => {
                                 'def_role' => 'arg'
                               },
-                              'source_info' => {
-                                'line_nr' => 26,
-                                'macro' => 'param'
-                              },
-                              'source_marks' => [
-                                {
-                                  'counter' => 3,
-                                  'sourcemark_type' => 'linemacro_expansion',
-                                  'status' => 'end'
-                                }
-                              ]
+                              'type' => 'def_aggregate'
                             }
                           ],
                           'info' => {
@@ -1037,24 +1107,29 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => 'out'
+                                      'contents' => [
+                                        {
+                                          'text' => 'out'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'var',
+                                  'source_info' => {
+                                    'line_nr' => 29,
+                                    'macro' => 'returns'
+                                  }
                                 }
                               ],
-                              'cmdname' => 'var',
                               'extra' => {
                                 'def_role' => 'name'
                               },
-                              'source_info' => {
-                                'line_nr' => 29,
-                                'macro' => 'returns'
-                              }
+                              'type' => 'def_aggregate'
                             },
                             {
                               'extra' => {
@@ -1064,31 +1139,36 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'args' => [
+                              'contents' => [
                                 {
-                                  'contents' => [
+                                  'args' => [
                                     {
-                                      'text' => ' : complex ndarray'
+                                      'contents' => [
+                                        {
+                                          'text' => ' : complex ndarray'
+                                        }
+                                      ],
+                                      'type' => 'brace_command_arg'
                                     }
                                   ],
-                                  'type' => 'brace_command_arg'
+                                  'cmdname' => 'code',
+                                  'source_info' => {
+                                    'line_nr' => 29,
+                                    'macro' => 'returns'
+                                  },
+                                  'source_marks' => [
+                                    {
+                                      'counter' => 4,
+                                      'sourcemark_type' => 
'linemacro_expansion',
+                                      'status' => 'end'
+                                    }
+                                  ]
                                 }
                               ],
-                              'cmdname' => 'code',
                               'extra' => {
                                 'def_role' => 'arg'
                               },
-                              'source_info' => {
-                                'line_nr' => 29,
-                                'macro' => 'returns'
-                              },
-                              'source_marks' => [
-                                {
-                                  'counter' => 4,
-                                  'sourcemark_type' => 'linemacro_expansion',
-                                  'status' => 'end'
-                                }
-                              ]
+                              'type' => 'def_aggregate'
                             }
                           ],
                           'info' => {
@@ -1192,18 +1272,23 @@ $result_trees{'api_doc_with_linemacro'} = {
                               'type' => 'spaces'
                             },
                             {
-                              'extra' => {
-                                'def_role' => 'name'
-                              },
-                              'source_marks' => [
+                              'contents' => [
                                 {
-                                  'counter' => 5,
-                                  'position' => 10,
-                                  'sourcemark_type' => 'linemacro_expansion',
-                                  'status' => 'end'
+                                  'source_marks' => [
+                                    {
+                                      'counter' => 5,
+                                      'position' => 10,
+                                      'sourcemark_type' => 
'linemacro_expansion',
+                                      'status' => 'end'
+                                    }
+                                  ],
+                                  'text' => 'IndexError'
                                 }
                               ],
-                              'text' => 'IndexError'
+                              'extra' => {
+                                'def_role' => 'name'
+                              },
+                              'type' => 'def_aggregate'
                             }
                           ],
                           'info' => {
diff --git a/tp/t/results/linemacro/block_begin_end_in_linemacro_call.pl 
b/tp/t/results/linemacro/block_begin_end_in_linemacro_call.pl
index 170498fd15..1d1f5abe07 100644
--- a/tp/t/results/linemacro/block_begin_end_in_linemacro_call.pl
+++ b/tp/t/results/linemacro/block_begin_end_in_linemacro_call.pl
@@ -787,10 +787,15 @@ args \\e\\|\\f\\|
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/empty_last_argument.pl 
b/tp/t/results/linemacro/empty_last_argument.pl
index 8637560657..9195d90c82 100644
--- a/tp/t/results/linemacro/empty_last_argument.pl
+++ b/tp/t/results/linemacro/empty_last_argument.pl
@@ -215,10 +215,15 @@ $result_trees{'empty_last_argument'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -228,10 +233,15 @@ $result_trees{'empty_last_argument'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -347,10 +357,15 @@ $result_trees{'empty_last_argument'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -360,10 +375,15 @@ $result_trees{'empty_last_argument'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
@@ -492,10 +512,15 @@ $result_trees{'empty_last_argument'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -505,10 +530,15 @@ $result_trees{'empty_last_argument'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/last_argument_with_braces.pl 
b/tp/t/results/linemacro/last_argument_with_braces.pl
index ab6d579ae6..7ab11b4765 100644
--- a/tp/t/results/linemacro/last_argument_with_braces.pl
+++ b/tp/t/results/linemacro/last_argument_with_braces.pl
@@ -147,10 +147,15 @@ $result_trees{'last_argument_with_braces'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'my'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'my'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -160,10 +165,15 @@ $result_trees{'last_argument_with_braces'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -223,10 +233,15 @@ $result_trees{'last_argument_with_braces'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expand'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'expand'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -236,10 +251,15 @@ $result_trees{'last_argument_with_braces'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -415,10 +435,15 @@ $result_trees{'last_argument_with_braces'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'my'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'my'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -428,10 +453,15 @@ $result_trees{'last_argument_with_braces'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -491,10 +521,15 @@ $result_trees{'last_argument_with_braces'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expand'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'expand'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -504,10 +539,15 @@ $result_trees{'last_argument_with_braces'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -646,10 +686,15 @@ $result_trees{'last_argument_with_braces'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'my'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'my'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -659,10 +704,15 @@ $result_trees{'last_argument_with_braces'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -722,10 +772,15 @@ $result_trees{'last_argument_with_braces'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'expand'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'expand'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -735,10 +790,15 @@ $result_trees{'last_argument_with_braces'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Builtin'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'Builtin'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/nested_linemacro_calls.pl 
b/tp/t/results/linemacro/nested_linemacro_calls.pl
index 655f51bdb7..27344ecae3 100644
--- a/tp/t/results/linemacro/nested_linemacro_calls.pl
+++ b/tp/t/results/linemacro/nested_linemacro_calls.pl
@@ -230,10 +230,15 @@ $result_trees{'nested_linemacro_calls'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/newline_and_continuation_in_brace.pl 
b/tp/t/results/linemacro/newline_and_continuation_in_brace.pl
index d64d986710..5fc2ac8b93 100644
--- a/tp/t/results/linemacro/newline_and_continuation_in_brace.pl
+++ b/tp/t/results/linemacro/newline_and_continuation_in_brace.pl
@@ -165,10 +165,15 @@ $result_trees{'newline_and_continuation_in_brace'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/protected_spaces_on_line.pl 
b/tp/t/results/linemacro/protected_spaces_on_line.pl
index cc6572766b..829bba3090 100644
--- a/tp/t/results/linemacro/protected_spaces_on_line.pl
+++ b/tp/t/results/linemacro/protected_spaces_on_line.pl
@@ -134,10 +134,15 @@ $result_trees{'protected_spaces_on_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -147,10 +152,15 @@ $result_trees{'protected_spaces_on_line'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -374,10 +384,15 @@ $result_trees{'protected_spaces_on_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -464,10 +479,15 @@ $result_trees{'protected_spaces_on_line'} = {
                       'text' => 'rest'
                     },
                     {
-                      'cmdname' => ' ',
+                      'contents' => [
+                        {
+                          'cmdname' => ' '
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -630,10 +650,15 @@ $result_trees{'protected_spaces_on_line'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Function'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Function'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -643,10 +668,15 @@ $result_trees{'protected_spaces_on_line'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'foo'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'foo'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -696,10 +726,15 @@ $result_trees{'protected_spaces_on_line'} = {
                       'type' => 'delimiter'
                     },
                     {
-                      'cmdname' => '@',
+                      'contents' => [
+                        {
+                          'cmdname' => '@'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'arg'
-                      }
+                      },
+                      'type' => 'def_aggregate'
                     }
                   ],
                   'info' => {
diff --git a/tp/t/results/linemacro/simple_nested_linemacro_calls.pl 
b/tp/t/results/linemacro/simple_nested_linemacro_calls.pl
index 72edc1636a..1055de2a66 100644
--- a/tp/t/results/linemacro/simple_nested_linemacro_calls.pl
+++ b/tp/t/results/linemacro/simple_nested_linemacro_calls.pl
@@ -259,10 +259,15 @@ $result_trees{'simple_nested_linemacro_calls'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'type'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'type'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/spaces_after_command_in_call.pl 
b/tp/t/results/linemacro/spaces_after_command_in_call.pl
index 7ccaac26a4..0cd95441bd 100644
--- a/tp/t/results/linemacro/spaces_after_command_in_call.pl
+++ b/tp/t/results/linemacro/spaces_after_command_in_call.pl
@@ -160,10 +160,15 @@ $result_trees{'spaces_after_command_in_call'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -173,29 +178,34 @@ $result_trees{'spaces_after_command_in_call'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'd'
+                              'contents' => [
+                                {
+                                  'text' => 'd'
+                                }
+                              ],
+                              'type' => 'brace_command_arg'
                             }
                           ],
-                          'type' => 'brace_command_arg'
+                          'cmdname' => 'code',
+                          'info' => {
+                            'spaces_after_cmd_before_arg' => {
+                              'text' => ' '
+                            }
+                          },
+                          'source_info' => {
+                            'line_nr' => 7,
+                            'macro' => 'mylinecommand'
+                          }
                         }
                       ],
-                      'cmdname' => 'code',
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'info' => {
-                        'spaces_after_cmd_before_arg' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 7,
-                        'macro' => 'mylinecommand'
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -218,29 +228,34 @@ $result_trees{'spaces_after_command_in_call'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b'
+                              'contents' => [
+                                {
+                                  'text' => 'b'
+                                }
+                              ],
+                              'type' => 'following_arg'
                             }
                           ],
-                          'type' => 'following_arg'
+                          'cmdname' => 'ringaccent',
+                          'info' => {
+                            'spaces_after_cmd_before_arg' => {
+                              'text' => ' '
+                            }
+                          },
+                          'source_info' => {
+                            'line_nr' => 7,
+                            'macro' => 'mylinecommand'
+                          }
                         }
                       ],
-                      'cmdname' => 'ringaccent',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'info' => {
-                        'spaces_after_cmd_before_arg' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 7,
-                        'macro' => 'mylinecommand'
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git 
a/tp/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl 
b/tp/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl
index f0a151ab21..1c4799a433 100644
--- a/tp/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl
+++ b/tp/t/results/linemacro/spaces_after_macro_linemacro_commands_in_call.pl
@@ -289,10 +289,15 @@ 
$result_trees{'spaces_after_macro_linemacro_commands_in_call'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -512,10 +517,15 @@ 
$result_trees{'spaces_after_macro_linemacro_commands_in_call'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/spaces_after_unknown_command_in_call.pl 
b/tp/t/results/linemacro/spaces_after_unknown_command_in_call.pl
index feb6e133fb..54ac8a34ef 100644
--- a/tp/t/results/linemacro/spaces_after_unknown_command_in_call.pl
+++ b/tp/t/results/linemacro/spaces_after_unknown_command_in_call.pl
@@ -161,10 +161,15 @@ $result_trees{'spaces_after_unknown_command_in_call'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -174,10 +179,15 @@ $result_trees{'spaces_after_unknown_command_in_call'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'A'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'A'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -213,29 +223,34 @@ $result_trees{'spaces_after_unknown_command_in_call'} = {
                       'type' => 'spaces'
                     },
                     {
-                      'args' => [
+                      'contents' => [
                         {
-                          'contents' => [
+                          'args' => [
                             {
-                              'text' => 'b'
+                              'contents' => [
+                                {
+                                  'text' => 'b'
+                                }
+                              ],
+                              'type' => 'following_arg'
                             }
                           ],
-                          'type' => 'following_arg'
+                          'cmdname' => 'ringaccent',
+                          'info' => {
+                            'spaces_after_cmd_before_arg' => {
+                              'text' => ' '
+                            }
+                          },
+                          'source_info' => {
+                            'line_nr' => 7,
+                            'macro' => 'mylinecommand'
+                          }
                         }
                       ],
-                      'cmdname' => 'ringaccent',
                       'extra' => {
                         'def_role' => 'arg'
                       },
-                      'info' => {
-                        'spaces_after_cmd_before_arg' => {
-                          'text' => ' '
-                        }
-                      },
-                      'source_info' => {
-                        'line_nr' => 7,
-                        'macro' => 'mylinecommand'
-                      }
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/spaces_in_args.pl 
b/tp/t/results/linemacro/spaces_in_args.pl
index 371a273c46..c5427a3b09 100644
--- a/tp/t/results/linemacro/spaces_in_args.pl
+++ b/tp/t/results/linemacro/spaces_in_args.pl
@@ -163,10 +163,15 @@ $result_trees{'spaces_in_args'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -176,10 +181,15 @@ $result_trees{'spaces_in_args'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/spaces_in_call.pl 
b/tp/t/results/linemacro/spaces_in_call.pl
index 8a1ff8e7cf..665f0b5987 100644
--- a/tp/t/results/linemacro/spaces_in_call.pl
+++ b/tp/t/results/linemacro/spaces_in_call.pl
@@ -131,10 +131,15 @@ $result_trees{'spaces_in_call'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'category'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'category'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/linemacro/verb_in_linemacro_call.pl 
b/tp/t/results/linemacro/verb_in_linemacro_call.pl
index f1b19191df..d533ab3492 100644
--- a/tp/t/results/linemacro/verb_in_linemacro_call.pl
+++ b/tp/t/results/linemacro/verb_in_linemacro_call.pl
@@ -255,10 +255,15 @@ $result_trees{'verb_in_linemacro_call'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Name'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Name'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -268,10 +273,15 @@ $result_trees{'verb_in_linemacro_call'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'other'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'other'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/macro/macro_in_def_delimiters.pl 
b/tp/t/results/macro/macro_in_def_delimiters.pl
index 2857656c99..ee07a73673 100644
--- a/tp/t/results/macro/macro_in_def_delimiters.pl
+++ b/tp/t/results/macro/macro_in_def_delimiters.pl
@@ -75,10 +75,15 @@ $result_trees{'macro_in_def_delimiters'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'Command'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'Command'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -88,10 +93,15 @@ $result_trees{'macro_in_def_delimiters'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'forward-word'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'forward-word'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/menu/menu_in_deffn.pl 
b/tp/t/results/menu/menu_in_deffn.pl
index 9f3c2cb6c0..0ac944e430 100644
--- a/tp/t/results/menu/menu_in_deffn.pl
+++ b/tp/t/results/menu/menu_in_deffn.pl
@@ -42,10 +42,15 @@ $result_trees{'menu_in_deffn'} = {
                 {
                   'contents' => [
                     {
+                      'contents' => [
+                        {
+                          'text' => 'a'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'category'
                       },
-                      'text' => 'a'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
@@ -55,10 +60,15 @@ $result_trees{'menu_in_deffn'} = {
                       'type' => 'spaces'
                     },
                     {
+                      'contents' => [
+                        {
+                          'text' => 'b'
+                        }
+                      ],
                       'extra' => {
                         'def_role' => 'name'
                       },
-                      'text' => 'b'
+                      'type' => 'def_aggregate'
                     },
                     {
                       'extra' => {
diff --git a/tp/t/results/preformatted/def_in_example.pl 
b/tp/t/results/preformatted/def_in_example.pl
index 2571e6f8f0..8a160e6d87 100644
--- a/tp/t/results/preformatted/def_in_example.pl
+++ b/tp/t/results/preformatted/def_in_example.pl
@@ -33,13 +33,18 @@ $result_trees{'def_in_example'} = {
                         {
                           'contents' => [
                             {
-                              'text' => 'Function'
+                              'contents' => [
+                                {
+                                  'text' => 'Function'
+                                }
+                              ],
+                              'type' => 'def_category_inserted'
                             }
                           ],
                           'extra' => {
                             'def_role' => 'category'
                           },
-                          'type' => 'def_category_inserted'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -49,10 +54,15 @@ $result_trees{'def_in_example'} = {
                           'type' => 'spaces_inserted'
                         },
                         {
+                          'contents' => [
+                            {
+                              'text' => 'name'
+                            }
+                          ],
                           'extra' => {
                             'def_role' => 'name'
                           },
-                          'text' => 'name'
+                          'type' => 'def_aggregate'
                         },
                         {
                           'extra' => {
@@ -283,7 +293,7 @@ $result_converted{'docbook'}->{'def_in_example'} = 
'<synopsis><indexterm role="f
 
 
 $result_converted{'xml'}->{'def_in_example'} = '<example endspaces=" ">
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="1">name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>name</deffunction> 
<defparam>arg</defparam></definitionterm>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="1">name</indexterm><defcategory automatic="on">Function</defcategory> 
<deffunction>name</deffunction> <defparam>arg</defparam></definitionterm>
 <definitionitem><pre xml:space="preserve">in defun
 </pre></definitionitem></defun>
 </example>
diff --git a/tp/tests/coverage/res_parser/formatting_xml/formatting.xml 
b/tp/tests/coverage/res_parser/formatting_xml/formatting.xml
index 83c7bf7136..4b3673f329 100644
--- a/tp/tests/coverage/res_parser/formatting_xml/formatting.xml
+++ b/tp/tests/coverage/res_parser/formatting_xml/formatting.xml
@@ -1923,57 +1923,57 @@ $ wget 
'http://savannah.gnu.org/cgi-bin/viewcvs/config/config/config.sub?rev=HEA
 <definitionitem><para>d&textndash;eftp
 </para></definitionitem></deftp>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="31">d--efun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="31">d--efun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efun
 </para></definitionitem></defun>
 
-<defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="32">d--efmac_name</indexterm><defcategory automatic="on" 
bracketed="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="32">d--efmac_name</indexterm><defcategory 
automatic="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efmac
 </para></definitionitem></defmac>
 
-<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="33">d--efspec_name</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> 
<deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="33">d--efspec_name</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efspec
 </para></definitionitem></defspec>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="15" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="15" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;efvar
 </para></definitionitem></defvar>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="16" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable> <defparam>arg--var</defparam> 
<defparam>arg--var1</defparam></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="16" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <defvariable>d--efvar_name</defvariable> 
<defparam>arg--var</defparam> <defparam>arg--var1</defparam></definitionterm>
 <definitionitem><para>d&textndash;efvar with args
 </para></definitionitem></defvar>
 
-<defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="17" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on" bracketed="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
+<defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="17" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;efopt
 </para></definitionitem></defopt>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="34">d--eftypefun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="34">d--eftypefun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><para>d&textndash;eftypefun
 </para></definitionitem></deftypefun>
 
-<deftypevar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="18" mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
+<deftypevar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="18" mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;eftypevar
 </para></definitionitem></deftypevar>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="19" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="19" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on">Instance Variable</defcategory> <defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
 <definitionitem><para>d&textndash;efivar
 </para></definitionitem></defivar>
 
-<deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="20" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on" bracketed="on">Instance 
Variable</defcategory> <defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
+<deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="20" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
 <definitionitem><para>d&textndash;eftypeivar
 </para></definitionitem></deftypeivar>
 
-<defmethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="35">d--efmethod_name on c--lass</indexterm><defcategory automatic="on" 
bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
+<defmethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="35">d--efmethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efmethod
 </para></definitionitem></defmethod>
 
-<deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="36">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+<deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="36">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><para>d&textndash;eftypemethod
 </para></definitionitem></deftypemethod>
 
 <deftypefnnewline spaces=" " value="on" line="on"></deftypefnnewline>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="37">name2</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="37">name2</indexterm><defcategory automatic="on">Function</defcategory> 
<deftype>data-type2</deftype> <deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
 <definitionitem><para>aaa2
 </para></definitionitem></deftypefun>
 
@@ -3095,57 +3095,57 @@ $ wget 
'http://savannah.gnu.org/cgi-bin/viewcvs/config/config/config.sub?rev=HEA
 <definitionitem><para>d&textndash;eftp
 </para></definitionitem></deftp>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="83">d--efun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="83">d--efun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efun
 </para></definitionitem></defun>
 
-<defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="84">d--efmac_name</indexterm><defcategory automatic="on" 
bracketed="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="84">d--efmac_name</indexterm><defcategory 
automatic="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efmac
 </para></definitionitem></defmac>
 
-<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="85">d--efspec_name</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> 
<deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="85">d--efspec_name</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efspec
 </para></definitionitem></defspec>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="39" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="39" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;efvar
 </para></definitionitem></defvar>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="40" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable> <defparam>arg--var</defparam> 
<defparam>arg--var1</defparam></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="40" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <defvariable>d--efvar_name</defvariable> 
<defparam>arg--var</defparam> <defparam>arg--var1</defparam></definitionterm>
 <definitionitem><para>d&textndash;efvar with args
 </para></definitionitem></defvar>
 
-<defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="41" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on" bracketed="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
+<defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="41" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;efopt
 </para></definitionitem></defopt>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="86">d--eftypefun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="86">d--eftypefun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><para>d&textndash;eftypefun
 </para></definitionitem></deftypefun>
 
-<deftypevar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="42" mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
+<deftypevar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="42" mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;eftypevar
 </para></definitionitem></deftypevar>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="43" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="43" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on">Instance Variable</defcategory> <defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
 <definitionitem><para>d&textndash;efivar
 </para></definitionitem></defivar>
 
-<deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="44" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on" bracketed="on">Instance 
Variable</defcategory> <defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
+<deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="44" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
 <definitionitem><para>d&textndash;eftypeivar
 </para></definitionitem></deftypeivar>
 
-<defmethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="87">d--efmethod_name on c--lass</indexterm><defcategory automatic="on" 
bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
+<defmethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="87">d--efmethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efmethod
 </para></definitionitem></defmethod>
 
-<deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="88">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+<deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="88">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><para>d&textndash;eftypemethod
 </para></definitionitem></deftypemethod>
 
 <deftypefnnewline spaces=" " value="on" line="on"></deftypefnnewline>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="89">name2</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="89">name2</indexterm><defcategory automatic="on">Function</defcategory> 
<deftype>data-type2</deftype> <deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
 <definitionitem><para>aaa2
 </para></definitionitem></deftypefun>
 
@@ -4307,57 +4307,57 @@ $ wget 
'http://savannah.gnu.org/cgi-bin/viewcvs/config/config/config.sub?rev=HEA
 <definitionitem><para>d&textndash;eftp
 </para></definitionitem></deftp>
 
-<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="135">d--efun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="135">d--efun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efun
 </para></definitionitem></defun>
 
-<defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="136">d--efmac_name</indexterm><defcategory automatic="on" 
bracketed="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="136">d--efmac_name</indexterm><defcategory 
automatic="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efmac
 </para></definitionitem></defmac>
 
-<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="137">d--efspec_name</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> 
<deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+<defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="137">d--efspec_name</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efspec
 </para></definitionitem></defspec>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="63" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="63" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;efvar
 </para></definitionitem></defvar>
 
-<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="64" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable> <defparam>arg--var</defparam> 
<defparam>arg--var1</defparam></definitionterm>
+<defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="64" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <defvariable>d--efvar_name</defvariable> 
<defparam>arg--var</defparam> <defparam>arg--var1</defparam></definitionterm>
 <definitionitem><para>d&textndash;efvar with args
 </para></definitionitem></defvar>
 
-<defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="65" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on" bracketed="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
+<defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="65" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;efopt
 </para></definitionitem></defopt>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="138">d--eftypefun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="138">d--eftypefun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><para>d&textndash;eftypefun
 </para></definitionitem></deftypefun>
 
-<deftypevar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="66" mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
+<deftypevar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="66" mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
 <definitionitem><para>d&textndash;eftypevar
 </para></definitionitem></deftypevar>
 
-<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="67" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
+<defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="67" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on">Instance Variable</defcategory> <defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
 <definitionitem><para>d&textndash;efivar
 </para></definitionitem></defivar>
 
-<deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="68" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on" bracketed="on">Instance 
Variable</defcategory> <defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
+<deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="68" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
 <definitionitem><para>d&textndash;eftypeivar
 </para></definitionitem></deftypeivar>
 
-<defmethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="139">d--efmethod_name on c--lass</indexterm><defcategory automatic="on" 
bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
+<defmethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="139">d--efmethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><para>d&textndash;efmethod
 </para></definitionitem></defmethod>
 
-<deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="140">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+<deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="140">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><para>d&textndash;eftypemethod
 </para></definitionitem></deftypemethod>
 
 <deftypefnnewline spaces=" " value="on" line="on"></deftypefnnewline>
 
-<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="141">name2</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
+<deftypefun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="141">name2</indexterm><defcategory 
automatic="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
 <definitionitem><para>aaa2
 </para></definitionitem></deftypefun>
 
@@ -5473,57 +5473,57 @@ text in def item for second def item
 <definitionitem><pre xml:space="preserve">d--eftp
 </pre></definitionitem></deftp>
 <pre xml:space="preserve">
-</pre><defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="187">d--efun_name</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+</pre><defun spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="187">d--efun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deffunction>d--efun_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efun
 </pre></definitionitem></defun>
 <pre xml:space="preserve">
-</pre><defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="188">d--efmac_name</indexterm><defcategory automatic="on" 
bracketed="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+</pre><defmac spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="188">d--efmac_name</indexterm><defcategory 
automatic="on">Macro</defcategory> <deffunction>d--efmac_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efmac
 </pre></definitionitem></defmac>
 <pre xml:space="preserve">
-</pre><defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="189">d--efspec_name</indexterm><defcategory automatic="on" 
bracketed="on">Special Form</defcategory> 
<deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
+</pre><defspec spaces=" " endspaces=" "><definitionterm><indexterm index="fn" 
number="189">d--efspec_name</indexterm><defcategory automatic="on">Special 
Form</defcategory> <deffunction>d--efspec_name</deffunction> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efspec
 </pre></definitionitem></defspec>
 <pre xml:space="preserve">
-</pre><defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="87" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
+</pre><defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="87" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efvar
 </pre></definitionitem></defvar>
 <pre xml:space="preserve">
-</pre><defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="88" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on" bracketed="on">Variable</defcategory> 
<defvariable>d--efvar_name</defvariable> <defparam>arg--var</defparam> 
<defparam>arg--var1</defparam></definitionterm>
+</pre><defvar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="88" mergedindex="cp">d--efvar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <defvariable>d--efvar_name</defvariable> 
<defparam>arg--var</defparam> <defparam>arg--var1</defparam></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efvar with args
 </pre></definitionitem></defvar>
 <pre xml:space="preserve">
-</pre><defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="89" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on" bracketed="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
+</pre><defopt spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="89" mergedindex="cp">d--efopt_name</indexterm><defcategory 
automatic="on">User Option</defcategory> 
<defvariable>d--efopt_name</defvariable></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efopt
 </pre></definitionitem></defopt>
 <pre xml:space="preserve">
-</pre><deftypefun spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="190">d--eftypefun_name</indexterm><defcategory 
automatic="on" bracketed="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+</pre><deftypefun spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="190">d--eftypefun_name</indexterm><defcategory 
automatic="on">Function</defcategory> <deftype>t--ype</deftype> 
<deffunction>d--eftypefun_name</deffunction> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><pre xml:space="preserve">d--eftypefun
 </pre></definitionitem></deftypefun>
 <pre xml:space="preserve">
-</pre><deftypevar spaces=" " endspaces=" "><definitionterm><indexterm 
index="vr" number="90" 
mergedindex="cp">d--eftypevar_name</indexterm><defcategory automatic="on" 
bracketed="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
+</pre><deftypevar spaces=" " endspaces=" "><definitionterm><indexterm 
index="vr" number="90" 
mergedindex="cp">d--eftypevar_name</indexterm><defcategory 
automatic="on">Variable</defcategory> <deftype>t--ype</deftype> 
<defvariable>d--eftypevar_name</defvariable></definitionterm>
 <definitionitem><pre xml:space="preserve">d--eftypevar
 </pre></definitionitem></deftypevar>
 <pre xml:space="preserve">
-</pre><defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="91" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
+</pre><defivar spaces=" " endspaces=" "><definitionterm><indexterm index="vr" 
number="91" mergedindex="cp">d--efivar_name of c--lass</indexterm><defcategory 
automatic="on">Instance Variable</defcategory> <defclass>c--lass</defclass> 
<defclassvar>d--efivar_name</defclassvar></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efivar
 </pre></definitionitem></defivar>
 <pre xml:space="preserve">
-</pre><deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm 
index="vr" number="92" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on" bracketed="on">Instance 
Variable</defcategory> <defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
+</pre><deftypeivar spaces=" " endspaces=" "><definitionterm><indexterm 
index="vr" number="92" mergedindex="cp">d--eftypeivar_name of 
c--lass</indexterm><defcategory automatic="on">Instance Variable</defcategory> 
<defclass>c--lass</defclass> <deftype>t--ype</deftype> 
<defclassvar>d--eftypeivar_name</defclassvar></definitionterm>
 <definitionitem><pre xml:space="preserve">d--eftypeivar
 </pre></definitionitem></deftypeivar>
 <pre xml:space="preserve">
-</pre><defmethod spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="191">d--efmethod_name on c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
+</pre><defmethod spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="191">d--efmethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<defoperation>d--efmethod_name</defoperation> 
<defparam>a--rguments...</defparam></definitionterm>
 <definitionitem><pre xml:space="preserve">d--efmethod
 </pre></definitionitem></defmethod>
 <pre xml:space="preserve">
-</pre><deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="192">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on" bracketed="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
+</pre><deftypemethod spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="192">d--eftypemethod_name on c--lass</indexterm><defcategory 
automatic="on">Method</defcategory> <defclass>c--lass</defclass> 
<deftype>t--ype</deftype> <defoperation>d--eftypemethod_name</defoperation> 
<defparamtype>a--rguments...</defparamtype></definitionterm>
 <definitionitem><pre xml:space="preserve">d--eftypemethod
 </pre></definitionitem></deftypemethod>
 <pre xml:space="preserve">
 <deftypefnnewline spaces=" " value="on" line="on"></deftypefnnewline>
 
-</pre><deftypefun spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="193">name2</indexterm><defcategory automatic="on" 
bracketed="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
+</pre><deftypefun spaces=" " endspaces=" "><definitionterm><indexterm 
index="fn" number="193">name2</indexterm><defcategory 
automatic="on">Function</defcategory> <deftype>data-type2</deftype> 
<deffunction>name2</deffunction> 
<defparamtype>arguments2...</defparamtype></definitionterm>
 <definitionitem><pre xml:space="preserve">aaa2
 </pre></definitionitem></deftypefun>
 <pre xml:space="preserve">



reply via email to

[Prev in Thread] Current Thread [Next in Thread]