code: def _create_grid(iterable, sizing_mode, layer=0):
      
      return_list = []
      for item in iterable:
          if isinstance(item, list):
              return_list.append(_create_grid(item, sizing_mode, layer+1))
          elif isinstance(item, LayoutDOM):
              if sizing_mode is not None and _has_auto_sizing(item):
                  item.sizing_mode = sizing_mode
              return_list.append(item)
          else:
              raise ValueError(
                  """Only LayoutDOM items can be inserted into a layout.
                  Tried to insert: %s of type %s""" % (item, type(item))
              )
      if layer % 2 == 0:
          return column(children=return_list, sizing_mode=sizing_mode)
      return row(children=return_list, sizing_mode=sizing_mode)
docs: Recursively create grid from input lists.