diff --git a/rtree/index.py b/rtree/index.py
index <HASH>..<HASH> 100644
--- a/rtree/index.py
+++ b/rtree/index.py
@@ -76,8 +76,6 @@ def _get_data(handle):
 
 class Index(object):
     """An R-Tree, MVR-Tree, or TPR-Tree indexing object"""
-    dumps = pickle.dumps
-    loads = pickle.loads
 
     def __init__(self,  *args, **kwargs):
         """Creates a new index
@@ -266,6 +264,12 @@ class Index(object):
                 self.owned = False
                 self.handle = None
 
+    def dumps(self, obj):
+        return pickle.dumps(obj)
+
+    def loads(self, string):
+        return pickle.loads(string)
+
     def close(self):
         """Force a flush of the index to storage. Renders index
         inaccessible.
fix to the cPickle vs. legacy pickle dump problem (i.e. no self argument)