/// <summary>
        /// Generates TransactionEnvelope XDR object. Transaction need to have at least one signature.
        /// </summary>
        /// <returns></returns>
        public Generated.TransactionEnvelope ToEnvelopeXDR()
        {
            if (mSignatures.Count() == 0)
            {
                throw new NotEnoughSignaturesException("Transaction must be signed by at least one signer. Use transaction.Sign().");
            }

            Generated.TransactionEnvelope xdr = new Generated.TransactionEnvelope()
            {
                Tx         = ToXDR(),
                Signatures = mSignatures.ToArray()
            };

            return(xdr);
        }
        /// <summary>
        /// Generates TransactionEnvelope XDR object. Transaction need to have at least one signature.
        /// </summary>
        /// <returns></returns>
        public Generated.TransactionEnvelope ToEnvelopeXdr()
        {
            if (mSignatures.Count() == 0)
            {
                throw new NotEnoughSignaturesException("Transaction must be signed by at least one signer. Use transaction.Sign().");
            }

            Generated.TransactionEnvelope xdr = new Generated.TransactionEnvelope()
            {
                Tx = ToXdr(),
                Signatures = mSignatures.ToArray()
            };

            return xdr;
        }