code: func (i *AgentIPC) handleGetCoordinate(client *IPCClient, seq uint64) error {
  	var req coordinateRequest
  	if err := client.dec.Decode(&req); err != nil {
  		return fmt.Errorf("decode failed: %v", err)
  	}
  
  	// Fetch the coordinate.
  	var result coordinate.Coordinate
  	coord, ok := i.agent.Serf().GetCachedCoordinate(req.Node)
  	if ok {
  		result = *coord
  	}
  
  	// Respond
  	header := responseHeader{
  		Seq:   seq,
  		Error: errToString(nil),
  	}
  	resp := coordinateResponse{
  		Coord: result,
  		Ok:    ok,
  	}
  	return client.Send(&header, &resp)
  }
docs: // handleGetCoordinate is used to get the cached coordinate for a node.