       out = butler.scheduleJson request.parameter
     when 'setup'
       status = butler.scheduleSetup request.parameter
-      out = ContentService.createTextOutput i18n.get 'setupComplete'
-      out.append "\n"
+      out = HtmlService.createHtmlOutput i18n.get 'setupComplete'
+      out.append "<br />"
       if status is true
         out.append i18n.get 'scheduleSuccessCloseWindow'
       else


    unless props.how.star or props.how.unread or props.how.inbox
      Logger.log "No action specified"
      throw ErrorCodes.NO_ACTION


    stored = MailButler.storeButlerMail props
    throw ErrorCodes.STORE_FAILED unless stored

    thread = GmailApp.getThreadById message.getThread().getId()
    thread.moveToArchive() if String(form.archive) is "true"


    if not messageId or not (message = GmailApp.getMessageById messageId)
      Logger.log "Given message ID '%s' is not valid", messageId
      throw new Error ErrorCodes.INVALID_MESSAGE_ID,
        email:      encodeURIComponent @getEmail()
        messageId:  messageId

    now = new Date().getTime()
    matches = form.when?.match /^(delta|specified):([0-9]+)/
