diff --git a/reclass/datatypes/entity.py b/reclass/datatypes/entity.py
index 41c9db6..000d39f 100644
--- a/reclass/datatypes/entity.py
+++ b/reclass/datatypes/entity.py
@@ -77,7 +77,7 @@
 
     def interpolate(self, nodename, exports):
         self._exports.interpolate_from_external(self._parameters)
-        exports.merge({ nodename: self._exports.as_dict() })
+        exports.overwrite({ nodename: self._exports.as_dict() })
         exports.render_simple()
         self._parameters.interpolate(exports=exports.as_dict())
 
diff --git a/reclass/datatypes/parameters.py b/reclass/datatypes/parameters.py
index 75b8f26..f830187 100644
--- a/reclass/datatypes/parameters.py
+++ b/reclass/datatypes/parameters.py
@@ -217,6 +217,10 @@
             raise TypeError('Cannot merge %s objects into %s' % (type(other),
                             self.__class__.__name__))
 
+    def overwrite(self, other):
+        overdict = {'~' + key: value for key, value in other.iteritems()}
+        self.merge(overdict)
+
     def render_simple(self, options=None):
         if options is None:
             options = MergeOptions()
diff --git a/reclass/datatypes/tests/test_parameters.py b/reclass/datatypes/tests/test_parameters.py
index 1cc3804..0315859 100644
--- a/reclass/datatypes/tests/test_parameters.py
+++ b/reclass/datatypes/tests/test_parameters.py
@@ -401,5 +401,12 @@
         p1.interpolate()
         self.assertEqual(p1.as_dict(), r)
 
+    def test_overwrite_method(self):
+        p = Parameters({'alpha': { 'one': 1, 'two': 2}})
+        d = {'alpha': { 'three': 3, 'four': 4}}
+        p.overwrite(d)
+        p.render_simple()
+        self.assertEqual(p.as_dict(), d)
+
 if __name__ == '__main__':
     unittest.main()
