public Task <CryptoCurrencyWithdrawalResult> WithdrawCryptoCurrencyAsync(Guid walletId, NewCryptoCurrencyWithdrawal withdraw)
        {
            if (walletId == Guid.Empty)
            {
                throw new ArgumentException("walletId");
            }
            if (withdraw == null)
            {
                throw new ArgumentNullException("withdraw");
            }

            var request = new NewCryptoCurrencyWithdrawalMessageBuilder(walletId, withdraw);

            return(SendAsync(request).ReadAsAsync <CryptoCurrencyWithdrawalResult>());
        }
		public Task<CryptoCurrencyWithdrawalResult> WithdrawCryptoCurrencyAsync(Guid walletId, NewCryptoCurrencyWithdrawal withdraw)
		{
			if (walletId == Guid.Empty)
				throw new ArgumentException("walletId");
			if (withdraw == null)
				throw new ArgumentNullException("withdraw");

			var request = new NewCryptoCurrencyWithdrawalMessageBuilder(walletId, withdraw);
			return SendAsync(request).ReadAsAsync<CryptoCurrencyWithdrawalResult>();
		}