code: func (privKey PrivKeyEd25519) Generate(index int) PrivKeyEd25519 {
  	bz, err := cdc.MarshalBinaryBare(struct {
  		PrivKey [64]byte
  		Index   int
  	}{privKey, index})
  	if err != nil {
  		panic(err)
  	}
  	newBytes := Sha256(bz)
  	newKey := new([64]byte)
  	copy(newKey[:32], newBytes)
  	ed25519.MakePublicKey(newKey)
  	return PrivKeyEd25519(*newKey)
  }
docs: // Deterministically generates new priv-key bytes from key.