if(smpi_comm_get_leaders_comm(comm)==MPI_COMM_NULL){
leader_comm = smpi_comm_new(leaders_group, nullptr);
smpi_comm_set_leaders_comm(comm, leader_comm);
}else{
leader_comm=smpi_comm_get_leaders_comm(comm);
if(smpi_comm_get_leaders_comm(comm)==MPI_COMM_NULL){
leader_comm = smpi_comm_new(leaders_group, nullptr);
smpi_comm_set_leaders_comm(comm, leader_comm);
}else{
leader_comm=smpi_comm_get_leaders_comm(comm);