code: func (h *HTTPBin) Delay(w http.ResponseWriter, r *http.Request) {
  	parts := strings.Split(r.URL.Path, "/")
  	if len(parts) != 3 {
  		http.Error(w, "Not found", http.StatusNotFound)
  		return
  	}
  
  	delay, err := parseBoundedDuration(parts[2], 0, h.MaxDuration)
  	if err != nil {
  		http.Error(w, "Invalid duration", http.StatusBadRequest)
  		return
  	}
  
  	select {
  	case <-r.Context().Done():
  		return
  	case <-time.After(delay):
  	}
  	h.RequestWithBody(w, r)
  }
docs: // Delay waits for a given amount of time before responding, where the time may
  // be specified as a golang-style duration or seconds in floating point.