úÎ=ô8å?      !"#$%&'()*+,-./0123456789:;<=>+234FStep 1. Caller must send any lines queued up in this list to the SMTP C server. They do not have end-of-line characters, so you must add  "\r\n"> on the end (both characters are required by RFC2821 - do not  just send "\n"). 5EStep 2. Check if this is True, which indicates that the SMTP session = has completed successfully and there is no more work to do. 6IStep 3. Check if this is Just err, which indicates that a protocol error ? has occurred, and that the caller must terminate the session. 7@Step 4. The caller should wait for a line from the SMTP server,  strip the "\r\n"/ end-of-line characters, and pass the stripped 6 line to this function for processing. Go to step 1. 8OA list containing a failure status for each message that has been sent so far, @ where each element corresponds to one in the list of messages. G If the SMTP session does not complete successfully, then this list is I likely to be shorter than the input messages list. When smtpSuccess is J true, this list is guaranteed to be the same length as the list of input  messages.  Nothing means success, and Just x! is a failure status returned by  the SMTP server. ?@A A: smtpReceive callback that discards anything given to it. BCDEFG1Squish the SMTP reply description into one line. HIJKReceive an SMTP reply, e.g.  250-worked  250-like  250 a charm LMNO9HConstruct a pure state machine for an SMTP client session. Caller must  handle I/$O. The message body may use either "\n" or "\r\n" as an  end-of-line marker. !Domain name used in EHLO command List of messges to send PQRSTUVWXYZ[\]^_`ab:  !"#$%&'()*+,-./0123456789:92345678! #"*$%&'()1+,-./0 23456783456789:TAn exception indicating a communications failure at the level of the SMTP protocol. ;<ISend a list of email messages to an SMTP server. Throws SMTPException on D failure at the communication protocol level, and it can also throw  socket-level exceptions. LThe optional IORef is used to store a list of statuses for messages sent so Q far, where Nothing means success. The list elements correspond to the elements N of the input message list. If the caller catches an exception, this list is K likely to be shorter than the input message list: The length of the list N indicates how many messages were dispatched. If no exception is caught, the J length of the statuses will equal the length of the input messages list.  The message body may use either "\n" or "\r\n" as an end-of-line D marker and in either case it will be sent correctly to the server. 5For storing failure statuses of messages sent so far Domain name for EHLO command Network address of SMTP server List of messages to send =ILike sendSMTP but takes an additional function for logging all input and ! output for diagnostic purposes. Diagnostic log function 5For storing failure statuses of messages sent so far Domain name for EHLO command Network address of SMTP server List of messages to send >&A lower level function that does the I/5O processing for an SMTP client session on a handle. E Returns when the session has completed, with the handle still open. Diagnostic log function 5For storing failure statuses of messages sent so far 7  !"#$%&'()*+,-./01:;<=>7<=>:;! #"*$%&'()1+,-./0 :;;<=>c      !"#$#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#566789:;<==>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgSMTPClient-1.0.1Network.SMTP.ClientSessionNetwork.SMTP.Client hsemail-1.3%Text.ParserCombinators.Parsec.Rfc2822 nameAddr_addr nameAddr_nameNameAddrMessage OptionalFieldFromSender ReturnPathReplyToToCcBcc MessageID InReplyTo ReferencesSubjectCommentsKeywordsDate ResentDate ResentFrom ResentSenderResentToResentCc ResentBccResentMessageID ResentReplyToReceived ObsReceivedField%Text.ParserCombinators.Parsec.Rfc2821Reply SmtpReplyCodeSmtpCodeUnused0PreliminarySuccessSuccessIntermediateSuccessTransientFailurePermanentFailure SuccessCodeSyntax Information Connection Unspecified3 Unspecified4 MailSystemCategory SMTPState smtpOutQueue smtpSuccess smtpFailure smtpReceive smtpStatusessmtpClientSession SMTPExceptionsendSMTP sendSMTP' processSMTPsend nullReceivebaseGHC.ListnullreceivefailsuccessequalscheckcleanUp maybeReadfor putStatuses receiveReply equalsMailOK checkMailOKcheckConnectionOK equalsDataOKtalk atomAlloweddotAtomAllowed addr_spec angle_addrmsg_idatom_or_quoteddotatom_or_quoted quoted_stringdotatom_or_domain_literaldomain_literal name_addr address_list formatMessageindent formatField formatDateformatTimeZonepairs