diff --git a/CFGBoltzmann.py b/CFGBoltzmann.py
index b05fef5b07350573dd8166fdbd3c1e9375f4ed51..abe35e24c6e1477cceb8f4730efe0e50d2f252af 100644
--- a/CFGBoltzmann.py
+++ b/CFGBoltzmann.py
@@ -360,9 +360,12 @@ class CFGBoltzmann:
 
     def Gzero_shimmed(self, nonterminal, requested_length):
         nonterminal_index = self.nonterminals_ordered.index(nonterminal)
-        return self.Gzero(nonterminal_index, requested_length, 0)
-    def Gzero(self, nonterminal_index, requested_length, depth):
+        root_of_tree = TreeNode("START",[])
+        operation_site = [0]
 
+        return (self.Gzero(nonterminal_index, requested_length, 0, root_of_tree, operation_site), root_of_tree)
+
+    def Gzero(self, nonterminal_index, requested_length, depth, root_of_tree, operation_site):
         possibilities = self.Fzero(nonterminal_index, requested_length)
         chosen_production = self.normalized_choice(possibilities)
         print("    "* depth +"Gzero entering, with nonterminal", nonterminal_index, "and production rule number", chosen_production)