diff --git a/generated.mako.cpp b/generated.mako.cpp
index 862b3b2..2dccf82 100644
--- a/generated.mako.cpp
+++ b/generated.mako.cpp
@@ -38,6 +38,7 @@
         // ${e['description']}
     % endif
         std::make_tuple(
+            std::make_shared<details::DbusSignal>(
         % for i, s in enumerate(e['signature'].items()):
             % if i + 1 == len(e['signature']):
             ${'"{0}=\'{1}\'"'.format(*s)},
@@ -46,16 +47,16 @@
             % endif
         % endfor
             % if e['filter'].get('args'):
-            details::make_filter(filters::${e['filter']['type']}(
+                details::make_filter(filters::${e['filter']['type']}(
                 % for i, a in enumerate(e['filter']['args']):
                     % if i + 1 == len(e['filter']['args']):
-                "${a['value']}")),
+                "${a['value']}"))),
                     % else:
                 "${a['value']}",
                     % endif
                 % endfor
             % else:
-            details::make_filter(filters::${e['filter']['type']}),
+                details::make_filter(filters::${e['filter']['type']})),
             % endif
             % if e['action'].get('args'):
             std::vector<details::ActionBasePtr>({details::make_action(actions::${e['action']['type']}(
