docs: def publishFsFromMXD(self, fs_config):
          """Publishes the layers in a MXD to a feauture service.
          
          Args:
              fs_config (list): A list of JSON configuration feature service details to publish.
          Returns:
              dict: A dictionary of results objects.
  
          """
          fs = None
          res = None
          resItm = None
          if self.securityhandler is None:
              print ("Security handler required")
              return
          if self.securityhandler.is_portal:
              url = self.securityhandler.org_url
          else:
              url = 'http://www.arcgis.com'
          try:
              res = []
              if isinstance(fs_config, list):
                  for fs in fs_config:
                      if 'ReplaceTag' in fs:
  
                          resItm = {"ReplaceTag":fs['ReplaceTag'] }
                      else:
                          resItm = {"ReplaceTag":"{FeatureService}" }
  
                      resItm['FSInfo'] = self._publishFSFromMXD(config=fs, url=url)
  
                      if not resItm['FSInfo'] is None and 'url' in resItm['FSInfo']:
                          print ("%s created" % resItm['FSInfo']['url'])
                          res.append(resItm)
                      else:
                          print (str(resItm['FSInfo']))
  
              else:
                  if 'ReplaceTag' in fs_config:
  
                      resItm = {"ReplaceTag":fs_config['ReplaceTag'] }
                  else:
                      resItm = {"ReplaceTag":"{FeatureService}" }
  
                  resItm['FSInfo'] = self._publishFSFromMXD(config=fs_config, url=url)
  
                  if 'url' in resItm['FSInfo']:
                      print ("%s created" % resItm['FSInfo']['url'])
                      res.append(resItm)
                  else:
                      print (str(resItm['FSInfo']))
  
              return res
          except common.ArcRestHelperError as e:
              raise e
          except Exception as e:
  
              line, filename, synerror = trace()
              raise common.ArcRestHelperError({
                          "function": "publishFsFromMXD",
                          "line": line,
                          "filename":  filename,
                          "synerror": synerror,
                                          }
                                          )
  
          finally:
              resItm = None
              fs = None
  
              del resItm
              del fs
  
              gc.collect()