code: func RandomUInt64() uint64 {
  	b := make([]byte, 8)
  	_, err := io.ReadFull(cryptorand.Reader, b)
  	if err == nil {
  		n := new(big.Int)
  		return n.SetBytes(b).Uint64()
  	}
  	rand.Seed(rand.Int63())
  	return uint64(rand.Int63())
  }
docs: // RandomUInt64 returns a random uint64