             return self._storage.uri
         }
         set {
-            if !isKnownUniquelyReferenced(&self._storage) {
-                self._storage = self._storage.copy()
-            }
+            self.copyStorageIfNotUniquelyReferenced()
             self._storage.uri = newValue
         }
     }

            return self._storage.status
        }
        set {
            if !isKnownUniquelyReferenced(&self._storage) {
                self._storage = self._storage.copy()
            }
            self._storage.status = newValue
        }
    }

            return self._storage.version
        }
        set {
            self.copyStorageIfNotUniquelyReferenced()
            self._storage.version = newValue
        }
    }
