     if part.body != nil
     {
         result = result + bodyPartHeaders(part: part)
-        result = result + "\n"
+        result = result + "\r\n"
         result = result + bodyPart(part: part)
     }
     else
     {
         let boundary = makeBoundary()
         result = result + multipartHeaders(part: part, boundary: boundary)
-        result = result + "\n"
+        result = result + "\r\n"
         result = result + multipart(multi: part, boundary: boundary)
     }
     

    {
        if let mimeType = part.mimeType
        {
            result = result + "Content-Type: " + mimeType + "; name=" + filename + "\n"
            result = result + "Content-Disposition: attachment; name=" + filename + "\n"
            result = result + "Content-Transfer-Encoding: base64\n"
        }
    }
    else
    {
        result = result + "Content-Type: text/plain\n"
    }
    
    return result

{
  // Example: Content-Type: multipart/mixed; boundary=001a1142881cd25a87054971dde2
    
  return "Content-Type: multipart/mixed; boundary=" + boundary + "\r\n"
}

func bodyPart(part: GTLRGmail_MessagePart) -> String
