code: def on_load(self):
      if os.path.isfile(self.str2id_path):
          self.net_str2id = json.load(open(self.str2id_path, "r"))
      if os.path.isfile(self.id2val_path):
          net_id2val = json.load(open(self.id2val_path, "r"))
          for key in net_id2val:
              self.net_id2val[int(key)] = net_id2val[key]
      to_rename = []
      for folder in os.listdir(self.path):
          if folder.startswith("#"):
              out_file = "%s/%s/output" % (self.path, folder)
              if not os.path.isfile(out_file):
                  subprocess.run(
                      ["rm", "-rf", os.path.join(self.path, folder)]
                  )
              else:
                  net_str = json.load(
                      open("%s/%s/net.str" % (self.path, folder), "r")
                  )["net_str"]
                  if self.net_str2id.get(net_str) is None:
                      record = json.load(open(out_file, "r"))
                      net_val = float(record["valid_acc"])
                      net_id = self.add_net(net_str, net_val)
                      folder_path = self.get_net_folder(net_id)
                  else:
                      net_id = self.net_str2id[net_str]
                      folder_path = self.get_net_folder(net_id)
                  if folder_path != folder:
                      to_rename.append([folder, folder_path])
      for src_folder, dst_folder in to_rename:
          src_folder = os.path.join(self.path, src_folder)
          dst_folder = os.path.join(self.path, dst_folder)
          os.rename(src_folder, dst_folder)
  
imports: import os
  import subprocess
  import json
  import pickle
  import numpy
  from ..data_providers.utils import get_data_provider_by_name
  from .expdir_monitor import ExpdirMonitor
  from ..expdir_monitor import distributed
label_desc: Use image node_id 4 for calling the NetPool obj's underlying member method code with example usage: obj.on_load() without return types