diff --git a/python/MS_helper_functions.py b/python/MS_helper_functions.py
index fd646660e0d42e56d5f3dc25940f3262b1443349..9e827a29a85111198a95c0e925fffb0e3e143e9b 100644
--- a/python/MS_helper_functions.py
+++ b/python/MS_helper_functions.py
@@ -1732,7 +1732,7 @@ class cl_gradgradMS(cl_MS):
 
         print("gradgradMS.addCurlCurlMS added", len(curlcurlMS.u_pack))
 
-    def addAnsatzToWrapper(self, Wrapper):
+    def addAnsatzToWrapper(self, Wrapper, upperLimit=None, lowerLimit=None):
             tmpMap = {}
             for i in range(len(self.gradsol_pack)):
                 key = self.gradsol_pack[i][1]
@@ -1740,7 +1740,12 @@ class cl_gradgradMS(cl_MS):
                     tmpMap[key] +=  self.gradsol_pack[i][0]
                 else:
                     tmpMap[key] =  self.gradsol_pack[i][0]
-            [Wrapper.Add(tmpMap[k], k) for k in tmpMap.keys()]
+
+            if upperLimit != None and lowerLimit != None:
+                from myPackage import boundedCF
+                [Wrapper.Add(boundedCF(tmpMap[k], upperLimit, lowerLimit), k) for k in tmpMap.keys()]
+            else:
+                [Wrapper.Add(tmpMap[k], k) for k in tmpMap.keys()]
             return Wrapper