diff --git a/arbdmodel/__init__.py b/arbdmodel/__init__.py
index bf34913c0792c64dd8cb8a972d811bc6dee371b5..de77ac90de7a6100295343e61705547e89546b05 100644
--- a/arbdmodel/__init__.py
+++ b/arbdmodel/__init__.py
@@ -408,6 +408,9 @@ class PointParticle(Transformable, Child):
     def get_restraints(self):
         return [(self,r) for r in self.restraints]
 
+    def duplicate(self):
+        new = deepcopy(self)
+        return new
 
     def __getattr__(self, name):
         """
diff --git a/arbdmodel/ssdna_two_bead.py b/arbdmodel/ssdna_two_bead.py
index b077e914e9b6fbe34f083e968ae40374567f2c76..40fb40e5537ac389048f6b81e72468b7b5987ffd 100644
--- a/arbdmodel/ssdna_two_bead.py
+++ b/arbdmodel/ssdna_two_bead.py
@@ -76,7 +76,7 @@ class DnaStrandFromPolymer(Group):
             self.add_exclusion( i=b1, j=p3 )
 
         ## Four consecutive nts 
-        for i in range(len(nts)-4):
+        for i in range(len(nts)-3):
             p1,b1 = nts[i].children
             p2,b2 = nts[i+1].children
             p3,b3 = nts[i+2].children