code: def deep_copy(self):
          '''Return a deep copy of the state'''
          c = KalmanState(self.observation_matrix, self.translation_matrix)
          c.state_vec = self.state_vec.copy()
          c.state_cov = self.state_cov.copy()
          c.noise_var = self.noise_var.copy()
          c.state_noise = self.state_noise.copy()
          c.state_noise_idx = self.state_noise_idx.copy()
          return f deep_copy(self):
          '''Return a deep copy of the state'''
          c = KalmanState(self.observation_matrix, self.translation_matrix)
          c.state_vec = self.state_vec.copy()
          c.state_cov = self.state_cov.copy()
          c.noise_var = self.noise_var.copy()
          c.state_noise = self.state_noise.copy()
          c.state_noise_idx = self.state_noise_idx.copy()
          return c
docs: Return a deep copy of the state