úÎ$!Å    )DCaller must output any lines queued up in this list, making sure to I clear them in the state passed back to smtpReceive. These lines are in C reverse order, so the caller must reverse them before processing. A They do not have end-of-line characters, so the caller must add "\r\n" / on the end (as required by RFC2821 - not just "\n"). FWhen there is nothing to send, the caller should wait for a line from H the SMTP server, strip any end-of-line characters, and pass it to this  function for processing. CWhen True, this flag indicates that the SMTP session has completed / successfully and there is no more work to do. FWhen Just err, this indicates that a protocol error has occurred, and - that the caller must terminate the session. /The number of emails successfully sent so far. Receive an SMTP reply, e.g.  250-worked  250-like  250 a charm DPure state machine for an SMTP client session. Caller must handle I/O. % The message body may contain either "n" or "\r\n" for an end-of-line A marker. All are stripped before passing to caller for dispatch. !Domain name used in EHLO command List of messges to send  !"#$%&'()*+, ISend a list of email messages to an SMTP server. Throws SMTPException on . failure at the communication protocol level. % The message body may contain either "n" or "\r\n" for an end-of-line B marker and in all cases it will be sent correctly to the server. Domain name for EHLO command Network address of SMTP server List of messages to send JLike sendSMTP_ but takes an additional function for logging all input and I output for diagnostic purposes. Also an optional IORef for storing the O number of emails sent so far. The emails are sent strictly in order, so this D count can be used when an exception is caught to mark sent emails. Diagnostic log function )Optional IORef for storing the number of " emails successfully sent so far. Domain name for EHLO command Network address of SMTP server List of messages to send     -       !"#$%&'()*+,-.SMTPClient-0.2Network.SMTP.ClientSessionNetwork.SMTP.Client SMTPState smtpOutQueue smtpReceive smtpSuccess smtpFailuresmtpSentsmtpClientSession SMTPExceptionsendSMTP sendSMTP_send nullReceivereceivefailsuccesscheckcleanUp maybeReadforincSent receiveReply checkMailOKcheckConnectionOK checkDataOKtalk atomAlloweddotAtomAllowed addr_spec angle_addrmsg_idatom_or_quoteddotatom_or_quoted quoted_stringdotatom_or_domain_literaldomain_literal name_addr address_list formatMessageindent formatField formatDateformatTimeZonepairs