public SendEmailResponse SendEmail(Postal.Email email, ILogger log)
        {
            var output = new SendEmailResponse();

            #if !DEBUG
            try
            {
            #endif
            // Process email with Postal
            var emailService = ServiceLocator.Current.GetInstance<Postal.IEmailService>();
            using (var message = emailService.CreateMailMessage(email))
            {
                var htmlView = message.AlternateViews.FirstOrDefault(x => x.ContentType.MediaType.ToLower() == "text/html");
                if (htmlView != null)
                {
                    string body = new StreamReader(htmlView.ContentStream).ReadToEnd();

                    // move ink styles inline with PreMailer.Net
                    var result = PreMailer.Net.PreMailer.MoveCssInline(body, false, "#ignore");

                    htmlView.ContentStream.SetLength(0);
                    var streamWriter = new StreamWriter(htmlView.ContentStream);

                    streamWriter.Write(result.Html);
                    streamWriter.Flush();

                    htmlView.ContentStream.Position = 0;
                }

                // send email with default smtp client. (the same way as Postal)
                using (var smtpClient = new SmtpClient())
                {
                    try
                    {
                        smtpClient.Send(message);
                        output.Success = true;
                    }
                    catch (SmtpException exception)
                    {
                        _logger.Error("Exception: {0}, inner message {1}",exception.Message,(exception.InnerException!=null) ? exception.InnerException.Message : string.Empty);
                        output.Success = false;
                        output.Exception = exception;
                    }
                }
            }

            #if !DEBUG
            }

            catch (Exception ex)
            {
                _logger.Error("Error sending email", ex);
                output.Exception = ex;
            }

            #endif
            return output;
        }