code: func getRegionFromZones(zones []string) (string, error) {
  	regions := sets.String{}
  	if len(zones) < 1 {
  		return "", fmt.Errorf("no zones specified")
  	}
  	for _, zone := range zones {
  		// Zone expected format {locale}-{region}-{zone}
  		splitZone := strings.Split(zone, "-")
  		if len(splitZone) != 3 {
  			return "", fmt.Errorf("zone in unexpected format, expected: {locale}-{region}-{zone}, got: %v", zone)
  		}
  		regions.Insert(strings.Join(splitZone[0:2], "-"))
  	}
  	if regions.Len() != 1 {
  		return "", fmt.Errorf("multiple or no regions gotten from zones, got: %v", regions)
  	}
  	return regions.UnsortedList()[0], nil
  }
docs: // TODO: Replace this with the imported one from GCE PD CSI Driver when
  // the driver removes all k8s/k8s dependencies