def METHOD_NAME(self, round_idx, client_num_in_total, client_num_per_round):
    num_clients = min(client_num_per_round, client_num_in_total)
    np.random.seed(
        round_idx
    )  # make sure for each comparison, we are selecting the same clients each round
    sleep_clients = np.setdiff1d(np.array(range(client_num_in_total)),
                self.client_running_status, assume_unique=False) 
    client_indexes = np.random.choice(
        sleep_clients, 1, replace=False
    )
    logging.info("client_indexes = %s" % str(client_indexes))
    self.client_running_status = np.concatenate((self.client_running_status, client_indexes))
    return client_indexes