diff --git a/mrdna/RELEASE-VERSION b/mrdna/RELEASE-VERSION
index 62d032927066d8531598024b80ee5af953e96119..2b3885600c852a6185ef87f0544983870fc91094 100644
--- a/mrdna/RELEASE-VERSION
+++ b/mrdna/RELEASE-VERSION
@@ -1 +1 @@
-1.0a.dev178
+1.0a.dev180
diff --git a/mrdna/segmentmodel.py b/mrdna/segmentmodel.py
index 82a1985630fa0659b76551c3342c4d5944eb27ab..dca9d3dfe1e5698531db91a205b4a30347a9f140 100644
--- a/mrdna/segmentmodel.py
+++ b/mrdna/segmentmodel.py
@@ -2045,7 +2045,8 @@ class SegmentModel(ArbdModel):
         assert( d > 0.2 )
         if key not in self._bonded_potential:
             kT = self.configuration.temperature * 0.0019872065 # kcal/mol
-            self._bonded_potential[key] = WLCSKBond( d, lp, kT, range_=(0,1200) )
+            _pot = WLCSKBond( d, lp, kT, range_=(0,1200) )
+            self._bonded_potential[key] = _pot
         return self._bonded_potential[key]
 
     def _get_wlc_sk_angle_potential(self, d):
@@ -2764,10 +2765,10 @@ class SegmentModel(ArbdModel):
             if key in beadtype_s:
                 bead.type_ = beadtype_s[key]
             else:
-                t = deepcopy(bead.type_)
+                newname = f'{char}{beadtype_count[char]:03d}'
+                kwargs = {k:v for k,v in bead.type_.__dict__.items() if k not in ParticleType.excludedAttributes}
+                t = ParticleType( name=newname, **kwargs )
                 t.__dict__["nts"] = bead.num_nt*2 if char in ("D","O") else bead.num_nt
-                # t.name = t.name + "%03d" % (t.nts*10**decimals)
-                t.name = char + "%03d" % (beadtype_count[char])
                 t.mass = t.nts * 150
                 t.diffusivity = 120 if t.nts == 0 else min( 50 / np.sqrt(t.nts/5), 120)
                 beadtype_count[char] += 1