code: def generate_text(self, generation_type='markov'):
          
          assert generation_type in ['markov', 'hmm', 'hmm_past']
          if generation_type == "markov":
              return self._text_generator(next_token=self._generate_next_token)
          elif generation_type == "hmm":
              return self._text_generator(next_token=self._generate_next_token_hmm, emit=self._emitHMM)
          elif generation_type == "hmm_past":
              return self._text_generator(next_token=self._generate_next_token_hmm, emit=self._emitHMM_with_past)
docs: Generates sentences from a given corpus
          Args:
              generation_type: 'markov' | 'hmm' | 'hmm_past'
          Returns:
              Properly formatted string of generated sentences