text: class File:
      def __init__(self, name):
          self.name = name
  
  
  class Folder(File):
      def __init__(self, name):
          super().__init__(name)
          self.children = []
  
  
  root = Folder("")
  etc = Folder("etc")
  root.children.append(etc)
  etc.children.append(File("passwd"))
  etc.children.append(File("groups"))
  httpd = Folder("httpd")
  etc.children.append(httpd)
  httpd.children.append(File("http.conf"))
  var = Folder("var")
  root.children.append(var)
  log = Folder("log")
  var.children.append(log)
  log.children.append(File("messages"))
  log.children.append(File("kernel"))
  
  
  def walk(file):
      if isinstance(file, Folder):
          yield file.name + "/"
          for f in file.children:
              yield from walk(f)
      else:
          yield file.name
  