code: func (ipvsSvc ipvsService) toService() *Service {
  	svc := &Service{
  		Address:           ipvsSvc.Address,
  		Protocol:          ipvsSvc.Protocol,
  		Port:              ipvsSvc.Port,
  		FirewallMark:      ipvsSvc.FirewallMark,
  		Scheduler:         ipvsSvc.Scheduler,
  		Flags:             ipvsSvc.Flags,
  		Timeout:           ipvsSvc.Timeout,
  		PersistenceEngine: ipvsSvc.PersistenceEngine,
  		Statistics:        &ServiceStats{},
  	}
  
  	// Various callers of this package expect that a service will always
  	// have a non-nil address (all zero bytes if non-existent). At some
  	// point we may want to revisit this and return a nil address instead.
  	if svc.Address == nil {
  		if ipvsSvc.AddrFamily == syscall.AF_INET {
  			svc.Address = net.IPv4zero
  		} else {
  			svc.Address = net.IPv6zero
  		}
  	}
  
  	if ipvsSvc.Stats != nil {
  		*svc.Statistics = *ipvsSvc.Stats
  	}
  
  	return svc
  }
docs: // toService converts a service entry from its IPVS representation to the Go
  // equivalent Service structure.