code: def get_step_by_name(self, name):
          
          self._validate_step_name(name)
          name = str(name)
          try:
              return self.all_upstream_steps[name]
          except KeyError as e:
              msg = 'No Step with name "{}" found. ' \
                    'You have following Steps: {}'.format(name, list(self.all_upstream_steps.keys()))
              raise StepError(msg) from e
docs: Extracts step by name from the pipeline.
  
          Extracted Step is a fully functional pipeline as well.
          All upstream Steps are already defined.
  
          Args:
              name (str): name of the step to be fetched
          Returns:
              Step (obj): extracted step