<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def add_maps(self, parent, root_path=""):
 """ Recursively add maps in a folder hierarchy. Args: parent (KMLElement):
 KMLElement to which we want to append child folders or maps respectively root_path (str):
 path of 'parent' """

        for mapsource in self.map_folders[root_path]['maps']:
            parent.append(self.get_network_link(mapsource))
        for folder in self.map_folders[root_path]['folders']:
            kml_folder_obj = kml_folder(folder)
            parent.append(kml_folder_obj)
            self.add_maps(parent=kml_folder_obj, root_path=F_SEP.join((root_path, folder)))