code: func (t *Timer) ServeHTTP(w http.ResponseWriter, req *http.Request) {
  
  	req.ParseForm()
  	sortBy := req.Form.Get("sort")
  
  	stats := &Stats{}
  	stats.SortBy = strings.ToLower(sortBy)
  	stats.Generated = time.Now()
  	stats.UpTime = fmt.Sprintf("%s", stats.Generated.Sub(t.Since))
  	// Read access OK for map?
  	stats.Result = make([]*Stat, 0, len(t.routes))
  	for k, v := range t.routes {
  		stat := &Stat{}
  		stat.Route = k
  		stat.Count = v.Count
  		stat.Tot = v.Tot
  		stat.Avg = time.Duration(int64(v.Tot) / v.Count)
  		stat.AvgAfter = time.Duration(int64(v.AfterTot) / v.Count)
  		stat.AvgBefore = time.Duration(int64(v.BeforeTot) / v.Count)
  		stat.Max = v.Max
  		stat.Min = v.Min
  		stats.Result = append(stats.Result, stat)
  	}
  	sort.Sort(sort.Reverse(stats))
  	jsonData, _ := json.Marshal(stats)
  	w.Write(jsonData)
  }
docs: // For serving statistics