diff --git a/Event/FourMom/FourMom/DeepCopyPointer.h b/Event/FourMom/FourMom/DeepCopyPointer.h
index 091da12c9096c5708cf298db2fd28bc461264327..f2fd0a9d2f5984e852dce0ec2a2ad7342341b28e 100644
--- a/Event/FourMom/FourMom/DeepCopyPointer.h
+++ b/Event/FourMom/FourMom/DeepCopyPointer.h
@@ -25,6 +25,12 @@ public:
     if (other.m_theData) m_theData = new T( *other); else m_theData = 0;
   }
 
+  DeepCopyPointer (DeepCopyPointer&& other)
+  {
+    m_theData = other.m_theData;
+    other.m_theData = nullptr;
+  }
+
   ~DeepCopyPointer() { delete m_theData;}
 
   DeepCopyPointer& operator=( const DeepCopyPointer& other) {
@@ -35,6 +41,15 @@ public:
     return *this;
   }
 
+  DeepCopyPointer& operator=( DeepCopyPointer&& other) {
+    if ( this != &other && m_theData != other.m_theData) {
+      delete m_theData;
+      m_theData = other.m_theData;
+      other.m_theData = nullptr;
+    }
+    return *this;
+  }
+
         T* get()       { return m_theData; }
   const T* get() const { return m_theData; }