code: def _expand_scheduledict(scheduledict):
      
      result = []
      def f(d):
          nonlocal result
          #print(d)
          d2 = {}
          for k,v in d.items():
              if isinstance(v, str) and _cronslash(v, k) is not None:
                  d[k] = _cronslash(v, k)
  
          for k,v in d.items():
              if isinstance(v, Iterable):
                  continue
              else:
                  d2[k] = v
  
          if len(d2.keys()) == len(d.keys()):
              result.append(d2)
              return
  
          for k,v in d.items():
              if isinstance(v, Iterable):
                  for i in v:
                      dprime = dict(**d)
                      dprime[k] = i
                      f(dprime)
                  break
      f(scheduledict)
      return result
docs: Converts a dict of items, some of which are scalar and some of which are
      lists, to a list of dicts with scalar items.