def METHOD_NAME(self):
    """pre_process downlaoding data
    """
    processed_dir = osp.join(self.root, 'processed')
    pre_processed_file_path = osp.join(processed_dir, 'pgl_data_processed')
    if osp.exists(pre_processed_file_path):
        #TODO: Reload Preprocess files
        pass
    else:
        ### check download
        if not osp.exists(osp.join(self.root, "raw", "edge.csv.gz")):
            url = self.meta_info[self.name]["url"]
            if decide_download(url):
                path = download_url(url, self.original_root)
                extract_zip(path, self.original_root)
                os.unlink(path)
                # delete folder if there exists
                try:
                    shutil.rmtree(self.root)
                except:
                    pass
                shutil.move(
                    osp.join(self.original_root, self.download_name),
                    self.root)
            else:
                print("Stop download.")
                exit(-1)
        raw_dir = osp.join(self.root, "raw")
        ### pre-process and save
        add_inverse_edge = to_bool(self.meta_info[self.name][
            "add_inverse_edge"])
        self.graph = read_csv_graph_pgl(
            raw_dir, add_inverse_edge=add_inverse_edge)
        #TODO: SAVE preprocess graph