rewrite equipment simulation to self._