code: def propose(self):
          
          # generate a list of all the untried candidate pipelines
          candidates = self._get_candidates()
  
          # get_candidates() returns None when every possibility has been tried
          if candidates is None:
              return None
  
          # predict() returns a predicted values for each candidate
          predictions = self.predict(candidates)
  
          # acquire() evaluates the list of predictions, selects one, and returns
          # its index.
          idx = self._acquire(predictions)
          return candidates[idx]
docs: Use the trained model to propose a new pipeline.
  
          Returns:
              int: Index corresponding to pipeline to try in ``dpp_matrix``.