code: func (w *ComparedValue) Value(k interface{}) interface{} {
  	v, val := w.valueWaiter(k)
  	if val == nil {
  		return v
  	}
  
  	return val.Value()
  }
docs: // Value returns the value that was set for the given key, or blocks
  // until one is available.