Removes the data object from this collection with the given number. A `ValueError` will be raised if a data
        object with the given number does not exist.
        :param number: the number of the data object to remove

def _remove_by_number(self, number: int):
        """
        Removes the data object from this collection with the given number. A `ValueError` will be raised if a data
        object with the given number does not exist.
        :param number: the number of the data object to remove
        """
        if number not in self._data:
            raise ValueError("Data object replica number %d is not in this collection" % number)
        del self._data[number]
        assert number not in self._data