code: func randSeq(source string, n int) (string, error) {
  	if len(source) > 255 {
  		return "", fmt.Errorf("source must be less than 256 bytes long")
  	}
  	random := make([]byte, n)
  	if _, err := io.ReadFull(rand.Reader, random); err != nil {
  		return "", err
  	}
  	for i := range random {
  		random[i] = source[random[i]%byte(len(source))]
  	}
  	return string(random), nil
  }
docs: // randSeq returns a sequence of random characters drawn from source. It returns
  // an error if cryptographic randomness is not available or source is more than 255
  // characters.