build/transaction_envelope.go
func (m Sign) MutateTransactionEnvelope(txe *TransactionEnvelopeBuilder) error {
	hash, err := txe.child.Hash()

	if err != nil {
		return err
	}

	kp, err := keypair.Parse(m.Seed)
	if err != nil {
		return err
	}

	sig, err := kp.SignDecorated(hash[:])
	if err != nil {
		return err
	}

	txe.E.Signatures = append(txe.E.Signatures, sig)
	return nil
}
func (m Sign) MutateTransactionEnvelope(txe *TransactionEnvelopeBuilder) error {
	hash, err := txe.child.Hash()

	if err != nil {
		return err
	}

	kp, err := keypair.Parse(m.Seed)
	if err != nil {
		return err
	}

	sig, err := kp.SignDecorated(hash[:])
	if err != nil {
		return err
	}

	txe.E.Signatures = append(txe.E.Signatures, sig)
	return nil
}
// ------------------------------------------------------------
//
//   Mutator implementations
//
// ------------------------------------------------------------
// MutateTransactionEnvelope adds a signature to the provided envelope