code: func matchMapWithString(toCheck map[string]string, toMatch map[string][]string, canonicalKey bool) bool {
  	for k, v := range toCheck {
  		// Check if key exists.
  		if canonicalKey {
  			k = http.CanonicalHeaderKey(k)
  		}
  		if values := toMatch[k]; values == nil {
  			return false
  		} else if v != "" {
  			// If value was defined as an empty string we only check that the
  			// key exists. Otherwise we also check for equality.
  			valueExists := false
  			for _, value := range values {
  				if v == value {
  					valueExists = true
  					break
  				}
  			}
  			if !valueExists {
  				return false
  			}
  		}
  	}
  	return true
  }
docs: // matchMapWithString returns true if the given key/value pairs exist in a given map.