Is it worth also checking that both `self.is_paused` and `self.is_ended` are false? Or is that overkill?