def METHOD_NAME(path, data):
    subgraphs, _, _, _ = get_data(path, data)
    # inductive: train & test data are from different subgraphs
    random.shuffle(subgraphs)
    train_size = int(len(subgraphs) * 0.8)
    val_size = int(len(subgraphs) * 0.1)
    test_size = int(len(subgraphs) * 0.1)
    logging.info("train_size = {}, val_size = {}, test_size = {}".format(train_size, val_size, test_size))
    graphs_train = subgraphs[:train_size]
    graphs_test = subgraphs[train_size : train_size + test_size]
    graphs_val = subgraphs[train_size + test_size :]
    # tranductive: train & test data are from the same subgraphs
    # TODO
    return graphs_train, graphs_val, graphs_test