code: func (n *Node) GetMemberlist() map[uint64]*api.RaftMember {
  	memberlist := make(map[uint64]*api.RaftMember)
  	members := n.cluster.Members()
  	leaderID, err := n.Leader()
  	if err != nil {
  		leaderID = raft.None
  	}
  
  	for id, member := range members {
  		reachability := api.RaftMemberStatus_REACHABLE
  		leader := false
  
  		if member.RaftID != n.Config.ID {
  			if !n.transport.Active(member.RaftID) {
  				reachability = api.RaftMemberStatus_UNREACHABLE
  			}
  		}
  
  		if member.RaftID == leaderID {
  			leader = true
  		}
  
  		memberlist[id] = &api.RaftMember{
  			RaftID: member.RaftID,
  			NodeID: member.NodeID,
  			Addr:   member.Addr,
  			Status: api.RaftMemberStatus{
  				Leader:       leader,
  				Reachability: reachability,
  			},
  		}
  	}
  
  	return memberlist
  }
docs: // GetMemberlist returns the current list of raft members in the cluster.