code: def load(cls, campaign_dir, ns_path=None, runner_type='Auto',
               optimized=True, check_repo=True):
          
          # Convert paths to be absolute
          if ns_path is not None:
              ns_path = os.path.abspath(ns_path)
          campaign_dir = os.path.abspath(campaign_dir)
  
          # Read the existing configuration into the new DatabaseManager
          db = DatabaseManager.load(campaign_dir)
          script = db.get_script()
  
          runner = None
          if ns_path is not None:
              runner = CampaignManager.create_runner(ns_path, script,
                                                     runner_type, optimized)
  
          return cls(db, runner, check_repo)
docs: Load an existing simulation campaign.
  
          Note that specifying an ns-3 installation is not compulsory when using
          this method: existing results will be available, but in order to run
          additional simulations it will be necessary to specify a
          SimulationRunner object, and assign it to the CampaignManager.
  
          Args:
              campaign_dir (str): path to the directory in which to save the
                  simulation campaign database.
              ns_path (str): path to the ns-3 installation to employ in this
                  campaign.
              runner_type (str): implementation of the SimulationRunner to use.
                  Value can be: SimulationRunner (for running sequential
                  simulations locally), ParallelRunner (for running parallel
                  simulations locally), GridRunner (for running simulations using
                  a DRMAA-compatible parallel task scheduler).
              optimized (bool): whether to configure the runner to employ an
                  optimized ns-3 build.