docs: def call_chunks(self, chunks):
          '''
          Iterate over a list of chunks and call them, checking for requires.
          '''
          # Check for any disabled states
          disabled = {}
          if 'state_runs_disabled' in self.opts['grains']:
              for low in chunks[:]:
                  state_ = '{0}.{1}'.format(low['state'], low['fun'])
                  for pat in self.opts['grains']['state_runs_disabled']:
                      if fnmatch.fnmatch(state_, pat):
                          comment = (
                                      'The state function "{0}" is currently disabled by "{1}", '
                                      'to re-enable, run state.enable {1}.'
                                    ).format(
                                      state_,
                                      pat,
                                    )
                          _tag = _gen_tag(low)
                          disabled[_tag] = {'changes': {},
                                            'result': False,
                                            'comment': comment,
                                            '__run_num__': self.__run_num,
                                            '__sls__': low['__sls__']}
                          self.__run_num += 1
                          chunks.remove(low)
                          break
          running = {}
          for low in chunks:
              if '__FAILHARD__' in running:
                  running.pop('__FAILHARD__')
                  return running
              tag = _gen_tag(low)
              if tag not in running:
                  # Check if this low chunk is paused
                  action = self.check_pause(low)
                  if action == 'kill':
                      break
                  running = self.call_chunk(low, running, chunks)
                  if self.check_failhard(low, running):
                      return running
              self.active = set()
          while True:
              if self.reconcile_procs(running):
                  break
              time.sleep(0.01)
          ret = dict(list(disabled.items()) + list(running.items()))
          return ret