code: func (m *metricMap) getMetricWithHashAndLabels(
  	h uint64, labels Labels, curry []curriedLabelValue,
  ) (Metric, bool) {
  	metrics, ok := m.metrics[h]
  	if ok {
  		if i := findMetricWithLabels(m.desc, metrics, labels, curry); i < len(metrics) {
  			return metrics[i].metric, true
  		}
  	}
  	return nil, false
  }
docs: // getMetricWithHashAndLabels gets a metric while handling possible collisions in
  // the hash space. Must be called while holding read mutex.