diff --git a/scripts/gen_centered_graph.py b/scripts/gen_centered_graph.py
index 05692b1..b1913c1 100644
--- a/scripts/gen_centered_graph.py
+++ b/scripts/gen_centered_graph.py
@@ -102,11 +102,17 @@ def gen(headline_id, graph, doc_to_headline_remapping):
         f.write('K=0.3\n')
         f.write('edge[len = 1]\n')
         def draw_subgraph(node_id, depth):
+            emoji = ''
+            if g[node_id]['class'] == 'listing':
+                emoji = '🪧 '
+
             f.write("subgraph cluster_{} {{\n".format(node_id.replace("-", "_")))
             f.write('  URL="./{}.node.html"\n'.format(node_id))
             f.write('  class="{}"\n'.format('cluster-depth-' + str(depth - 1)))
             f.write("  fontname=\"{}\"\n".format(font_name))
-            f.write("  label=\"{}\"\n".format(g[node_id]['title'].replace("\"", "'")))
+            f.write("  label=\"{}\"\n".format(
+                emoji + g[node_id]['title'].replace("\"", "'")
+            ))
             f.write("\n")
 
             # print("T: {}".format(in_emacs_tree), file=sys.stderr)
@@ -116,8 +122,12 @@ def gen(headline_id, graph, doc_to_headline_remapping):
                 if k in in_emacs_tree:
                     draw_subgraph(k, depth=depth + 1)
                 else:
+                    emoji = ''
+                    if v['class'] == 'listing':
+                        emoji = '🪧 '
+
                     print("  _" + k.replace("-", "_")
-                          + "[label=\"" + v["title"].replace("\"", "'") + "\", "
+                          + "[label=\"" + emoji + v["title"].replace("\"", "'") + "\", "
                           + "URL=\"" + k + ".node.html\", "
                           + "fontname=\"" + font_name + "\", "
                           + "class=\"cluster-depth-" + str(depth) + "\""
@@ -130,8 +140,12 @@ def gen(headline_id, graph, doc_to_headline_remapping):
 
         for k, v in g.items():
             if k not in in_emacs:
+                emoji = ''
+                if v['class'] == 'listing':
+                    emoji = '🪧 '
+
                 print("_" + k.replace("-", "_")
-                      + "[label=\"" + v["title"].replace("\"", "'") + "\", "
+                      + "[label=\"" + emoji + v["title"].replace("\"", "'") + "\", "
                       + "fontname=\"" + font_name + "\", "
                       + "URL=\"" + k + ".node.html\"];", file=f)
 
diff --git a/scripts/generate.py b/scripts/generate.py
index e883e7f..b87fa68 100644
--- a/scripts/generate.py
+++ b/scripts/generate.py
@@ -273,6 +273,10 @@ def regen_all(src_top, dest_top, subpath, *, docs=None, db=None):
             "title": org_rw.org_rw.token_list_to_plaintext(headline.title.contents).strip(),
             "links": links,
             "depth": headline.depth,
+            "shallow_tags": headline.shallow_tags,
+            "all_tags": headline.tags,
+            "state": headline.state,
+            "class": headline.get_property('CLASS'),
         }
         if headline.id in main_headline_to_docid:
             graph[main_headline_to_docid[headline.id]] = graph[headline.id]