code: func GenerateRandom(nodes int, mean time.Duration, deviation time.Duration) [][]time.Duration {
  	rand.Seed(1)
  
  	truth := make([][]time.Duration, nodes)
  	for i := range truth {
  		truth[i] = make([]time.Duration, nodes)
  	}
  
  	for i := 0; i < nodes; i++ {
  		for j := i + 1; j < nodes; j++ {
  			rttSeconds := rand.NormFloat64()*deviation.Seconds() + mean.Seconds()
  			rtt := time.Duration(rttSeconds * secondsToNanoseconds)
  			truth[i][j], truth[j][i] = rtt, rtt
  		}
  	}
  	return truth
  }
docs: // GenerateRandom returns a truth matrix for a set of nodes with normally
  // distributed delays, with the given mean and deviation. The RNG is re-seeded
  // so you always get the same matrix for a given size.