                 if eventScanner.scanUpTo("ATTENDEE;", into: nil) {
                     scannerStatus = eventScanner.scanUpTo("\n", into: &attendeeStringPointer)
                     attendeeString = String(attendeeStringPointer ?? "")
-                    if scannerStatus, attendeeString != "" {
+                    if scannerStatus, !attendeeString.isEmpty {
                         attendeeString = attendeeString.replacingOccurrences(of: "ATTENDEE;", with: "").replacingOccurrences(of: "\r", with: "")
                         if let attendee = createAttendee(string: attendeeString) {
                             attendees.append(attendee)

            endDateTimeString = String(endDateTimeStringPointer ?? "")
            endDateTimeString = endDateTimeString.replacingOccurrences(of: String(format: "DTEND;TZID=%@:", timezoneIDString), with: "").replacingOccurrences(of: "\r", with: "")

            if startDateTimeString == "" {
                eventScanner = Scanner(string: event)
                eventScanner.scanUpTo("DTEND:", into: nil)
                eventScanner.scanUpTo("\n", into: &endDateTimeStringPointer)
                endDateTimeString = String(endDateTimeStringPointer ?? "")
                endDateTimeString = endDateTimeString.replacingOccurrences(of: "DTEND:", with: "").replacingOccurrences(of: "\r", with: "")

                if startDateTimeString == "" {
                    eventScanner = Scanner(string: event)
                    eventScanner.scanUpTo("DTEND;VALUE=DATE:", into: nil)
                    eventScanner.scanUpTo("\n", into: &endDateTimeStringPointer)

                exceptionString = String(exceptionStringPointer ?? "")
                exceptionString = exceptionString.replacingOccurrences(of: ":", with: "").replacingOccurrences(of: "\n", with: "").replacingOccurrences(of: "\r", with: "")

                if !exceptionString.isEmpty {
                    exceptionDates.append(exceptionString)
                }

