code: func NewChecker(trustedIPs []string) (*Checker, error) {
  	if len(trustedIPs) == 0 {
  		return nil, errors.New("no trusted IPs provided")
  	}
  
  	checker := &Checker{}
  
  	for _, ipMask := range trustedIPs {
  		if ipAddr := net.ParseIP(ipMask); ipAddr != nil {
  			checker.authorizedIPs = append(checker.authorizedIPs, &ipAddr)
  		} else {
  			_, ipAddr, err := net.ParseCIDR(ipMask)
  			if err != nil {
  				return nil, fmt.Errorf("parsing CIDR trusted IPs %s: %v", ipAddr, err)
  			}
  			checker.authorizedIPsNet = append(checker.authorizedIPsNet, ipAddr)
  		}
  	}
  
  	return checker, nil
  }
docs: // NewChecker builds a new Checker given a list of CIDR-Strings to trusted IPs