diff --git a/graph_tools/base.py b/graph_tools/base.py
index a6e6088263a5a63291e23d1e6aeb8896a54d7252..4954de52132f78a191305dd53024eb18623f2817 100644
--- a/graph_tools/base.py
+++ b/graph_tools/base.py
@@ -24,7 +24,7 @@ def _init_():
     def __hash__(self): return id(self)
     def __eq__(self, b): return self is b
 
-    def eval_join(self, gadget_boundaries, gadgets, joins, outs, offsets, track_origins):
+    def eval_join(self, multiplicity_vectors, joins, outs, offsets, track_origins):
       def join_boundaries(x):
         return self.join_boundaries(x, offsets)
 
@@ -34,7 +34,7 @@ def _init_():
         #  if track_origins: ret = ret.with_origins(OriginJoinBoundaries(x, info))
         #  yield ret
 
-      it = chain.from_iterable( join_boundaries(x) for x in product(*gadget_boundaries) )
+      it = chain.from_iterable( join_boundaries(x) for x in product(*multiplicity_vectors) )
 
       def join(gen, e1, e2):
         for b in gen:
@@ -192,7 +192,7 @@ def _init_():
       def do_eval():
         ret = parameter.eval_join(
           [ g.eval_gadget(parameter, track_origins=track_origins) for g in gadgets ],
-          gadgets, joins, outs, self.offsets, track_origins
+          joins, outs, self.offsets, track_origins
         )
         return ret