code: func Seal(out, message []byte, nonce nacl.Nonce, peersPublicKey, privateKey nacl.Key) []byte {
  	sharedKey := Precompute(peersPublicKey, privateKey)
  	return secretbox.Seal(out, message, nonce, sharedKey)
  }
docs: // Seal appends an encrypted and authenticated copy of message to out, which
  // will be Overhead bytes longer than the original and must not overlap. The
  // nonce must be unique for each distinct message for a given pair of keys.