+ self.params = ParamList() if params is None else params
+
+ def __getstate__(self):
+ state = dict(bullet=self.bullet)
+ if self.params.params:
+ state["params"] = self.params.__getstate__()
+ return state
+
+ def __setstate__(self, state):
+ bullet = state["bullet"]
+ params = [NumberDef(param) for param in state.get("params", [])]
+ self.__init__(bullet, params)