code: func (bm *Benchmark) Report() string {
  	var buffer bytes.Buffer
  
  	indent := ""
  	if !bm.Pubs.HasSamples() && !bm.Subs.HasSamples() {
  		return "No publisher or subscribers. Nothing to report."
  	}
  
  	if bm.Pubs.HasSamples() && bm.Subs.HasSamples() {
  		buffer.WriteString(fmt.Sprintf("%s Pub/Sub stats: %s\n", bm.Name, bm))
  		indent += " "
  	}
  	if bm.Pubs.HasSamples() {
  		buffer.WriteString(fmt.Sprintf("%sPub stats: %s\n", indent, bm.Pubs))
  		if len(bm.Pubs.Samples) > 1 {
  			for i, stat := range bm.Pubs.Samples {
  				buffer.WriteString(fmt.Sprintf("%s [%d] %v (%d msgs)\n", indent, i+1, stat, stat.JobMsgCnt))
  			}
  			buffer.WriteString(fmt.Sprintf("%s %s\n", indent, bm.Pubs.Statistics()))
  		}
  	}
  
  	if bm.Subs.HasSamples() {
  		buffer.WriteString(fmt.Sprintf("%sSub stats: %s\n", indent, bm.Subs))
  		if len(bm.Subs.Samples) > 1 {
  			for i, stat := range bm.Subs.Samples {
  				buffer.WriteString(fmt.Sprintf("%s [%d] %v (%d msgs)\n", indent, i+1, stat, stat.JobMsgCnt))
  			}
  			buffer.WriteString(fmt.Sprintf("%s %s\n", indent, bm.Subs.Statistics()))
  		}
  	}
  	return buffer.String()
  }
docs: // Report returns a human readable report of the samples taken in the Benchmark