more secure against self.game