diff --git a/cfg_utils.py b/cfg_utils.py
index ad2d14c018a07901955c9f13e510a96de2ce3b0a..29fee098b2502275e674ae4ba543f7765893498a 100644
--- a/cfg_utils.py
+++ b/cfg_utils.py
@@ -117,6 +117,20 @@ def apply_rule(tree, location, ruleset, rule_number):
 
     assert(opsite.language_element == the_rule[0])
 
+    assert(opsite.subnodes == [])
+
+    print("opsite has no subnodes, all good")
+
+    for new_subnode in the_rule[1]:
+        print(new_subnode)
+        x = TreeNode(new_subnode, [])
+        opsite.subnodes.append(x)
+
+    print("Now the opsite looks like")
+    walk_the_tree(opsite)
+    print("and the tree looks like")
+    walk_the_tree(tree)
+