code: def state_max_repeat(self, value):
          
          min_, max_, value = value
          value = [val for val in Traverser(value, self.groups)]
          if not min_ and max_:
              for val in value:
                  if isinstance(val, required):
                      min_ = 1
                      break
  
          for val in value * min_:
              yield val
docs: Parse repeatable parts.